演示视频:
https://www.bilibili.com/video/BV1Uc411k7Ty/
3.1 系统总体设计描述
总体设计过程可分为两个主要阶段:功能设计,确定网上订餐系统的实现方案;结构设计,确定该软件的结构。功能设计是在需求分析的基础上进行的,这里所说的“功能”是泛指的,不仅指问题定义中列出的功能,还包括软件定义时确定的任何一个独立的数据加工或处理步骤。结构设计,是将整个系统按照不同的功能和层次划分为一个个功能简单明确且相对独立的部分(模块),每个模块实现系统的一项具体功能,自顶向下,逐步细化。结构设计是确定程序由哪些模块组成,以及这些模块之间的关系。
根据软件工程原理,在利用模块进行结构设计时,我们应遵循如下原则:
(1)模块之间的联系程度,各模块间的联系越弱,模块的独立性越高,该系统的整体结构越好。
(2)模块之间应尽量以数据连接为主,以特征连接为辅。必要时可以建立控制连接;
(3)强模块内部的组合强度是高功能的组合。
(4)模块的分解到合适的程度;
(5)增强模块的扇入系数,减少模块的扇出系数,扇入系数指一个模块的直接上级模块的个数,扇出系数指一个模块拥有的直接下级模块的个数,应控制在7以内;
(6)高模块的信息隐蔽程度,软件设计是一个将信息需求转换成数据结构、程序结构和过程性的多步骤过程。常用的结构设计方法是基于模块化、自顶向下逐步细化,结构化程序设计等程序设计基础上发展起来的。
如果系统需求分析阶段的任务是解决“干什么”的问题,那么系统设计阶段的任务是确定“怎么干”。系统设计工作由总体设计和详细设计两部分组成。
总体设计是软件开发人员根据软件需求说明书的要求,运用结构化程序设计思想,将软件自上而下逐层分解成多个软件模块,直到分解成每一个模块只具有单一的功能,能用一个或几个程序实现的树形结构为止。总体设计阶段还要定义各模块的数据传递关系,设计软件的编码方案、文件存储策略、输入输出格式,以及硬件和系统软件配置,最后编制概要设计说明书。
经过需求分析阶段的工作,订餐系统必须“做什么”已经清楚了,现在是决定“怎样做”的时候了。总体设计的基本目的就是回答“概括的说,售后服务系统应该如何实现?”这个问题。具体任务就是进行概要设计,确定解决问题的策略和实现目标系统的各种功能的方案,确定软件的模块组成以及模块之间的相互关系。
本系统可以支持两类用户,管理员,会员,这个系统的拥有者管理员,他是整个系统的控制者,对各类用户的权限进行维护管理。因为不同的用户对系统的需求则不同,所以运营商提供给每类用户的服务也不一样。系统的设计主要包括系统流程分析和系统功能模块划分,系统功能的分析与实现。
3.2系统目标
本系统主要实现以下目标:
(1)采用最新技术架构B/S(浏览器/服务器)架构,以降低客户端计算机的负荷,减轻系统维护与升级成本,从而降低总成本。
(2)人性化设计。程序设计充分考虑买家和卖家的要求,使操作简单方便快捷,界面友好,功能实用。
(3)动态式信息发布。直接读取后台数据库,使信息更新及时有效。
(4)搜索快捷方便。
3.3系统需求分析
客户需求分析:顾客需要注册,并且可以修改用户名和密码,并且可以查看查看菜品信息,进行网上订餐,也可以在线留言,会员可以订购多个菜品信息,还可以对自己已经订购的菜品进行查看,前台菜品订购功能简介明了,操作简单快捷。
管理员需求分析:管理员有自己的账户,登陆后能进行密码修改还可以进行管理员分配,最主要的就是产品的维护菜品信息管理,菜品分类管理,菜品录入操作,还可以管理公告留言,并可以查看此客户所申请的产品订单和订单管理。
3.4 系统模块图
3.3.1 系统总体结构
系统总体结构图如下:
图3.1系统功能图
(1)会员流程图
图3.2 会员流程图
(2)管理流程图
图3.3 管理员流程图
3.3.2系统功能模块划分
(1)会员
①注册:用户名、密码、电子邮件地址必填。
②个人信息维护:会员可以修改用户名、密码。
③订餐:会员选择好菜品信息据可以预定,输入数量和付款方式可以提交订单。
④留言:会员登录后可以发布留言信息。浏览留言信息等操作。
(2)管理员
①会员信息管理:管理员登录后,可以管理会员信息,浏览和删除会员操作
②菜品管理:可以对菜品进行维护查看,添加菜品,上传图片、删除菜品等操作。
③修改密码:管理员登录后可以修改自己的密码。
④系统管理:可以添加管理员用户的账号和密码信息 。
⑤订单管理:管理员可以查看订单信息和删除订单信息的功能。
⑥留言管理:管理员可以查看留言和删除留言功能
⑦公告管理:管理员可以管理公告信息和发布公告信息
⑧菜品类别管理:可以管理菜品分类信息。添加和删除分类信息
3.5数据库设计
3.3.1 数据库介绍
数据库是指自描述的完整记录的集合。数据库是自描述的:它除了包含用户的源数据外,还包含关于它本身结构的描述。数据库的自描述特点,它提高了程序/数据独立性,它使得检查数据库本身就确定数据库的结构和内容成为可能。数据库包含用户数据文件和其他内容,数据库在原数据中包含关于自身的描述。另外,数据库还包含用来表示数据之间的关系和提高数据库应用的性能的索引。最后,数据库还包含关于使用数据库的应用程序的数据。
设计一个数据库需要我们耐心收集和分析数据,仔细理清数据间的关系,消除对数据库应用不利的隐患等等。在整个设计过程中,我们必须按步骤认真完成。一个数据库的设计好坏将直接影响将来基于该数据库的应用。
另外,数据库也不是独立存在的,它总是与具体的应用相关的,为具体的应用而建立的。因此在设计数据库之前我们必须明确应用的目的,在设计数据库的时候也应时刻考虑用户需求,数据库与具体应用之间是相辅相成的关系。
数据库的设计过程一般包括以下几个步骤:
(1)确定建立数据库的目的和收集数据
数据库设计过程的第一个阶段是确定建立数据库的目的和收集数据。通常,我们也把确定建立数据库的目的称为需求分析。需求分析的任务就是通过详细调查要处理的对象来明确用户的各种需求。并且通过调查、收集和分析信息,以了解在数据库中需要存储哪些数据,要完成什么样的数据处理功能。这一过程是数据库设计的起点,它将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。
确定目的之后就需要根据目的收集有用的数据。在着手收集数据之前最重要的就是要调查用户的实际需求,然后分析与表达这些需求。调查用户需求的方法有很多,如查阅记录、访谈、开调查会、设计调查表请用户填写或回答相关问题等。其中比较有效的方法是访谈,我们可以借助一些设计合理的调查表来与用户直接交流。通过充分交流,可以了解他们平时是如何使用数据库的,以及对当前信息的要求,进而设计满足用户需求的字段,并根据设计的字段收集数据。
(2)建立概念模型
确定建立数据库的目的以及完成数据收集后,就进入数据库设计过程的第二阶段——建立概念模型。概念模型,也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。这一阶段是整个数据库设计的关键。设计时,一般先根据应用的需求,画出能反映每个应用需求的E-R图,其中包括确定实体、属性和联系的类型。然后优化初始的E-R图,消除冗余和可能存在的矛盾。概念模型是队用户需求的客观反映,并不涉及具体的计算机软、硬件环境。因此,在这一阶段中我们必须将注意力集中在怎样表达出用户对信息的需求,而不考虑具体实现问题。
(3)建立数据模型
完成上一阶段后,我们得到了一个与具体计算机软、硬件无关的概念模型。接着我们就可以着手建立数据库模型了,这是数据库设计过程的第三个阶段。在这一阶段中我们要将概念模型中得到的E-R图转换成具体的数据模型。数据模型是表示实体与实体间的联系的模型。数据模型一般分为层次、网状、关系和面向对象模型等,主要是用于DBMS的实现。目前比较常用的是关系数据模型,我们通常将E-R图转换成关系数据模型,实际上就是要将实体、实体的属性和实体之间的联系转换为关系模式。
(4)实施与维护数据库
最后一个阶段是实施与维护数据库。完成数据模型的建立后,我们就必须对字段进行命名,确定字段的类型和宽度,并利用数据库管理系统或数据库语言创建数据库结构、输入数据和运行等,因此数据库的实施是数据库设计过程的“最终实现”。如果数据库运行很成功,则表明数据库设计任务基本结束,以后的重点就是数据库的维护工作,包括做好备份工作、数据库的安全性和完整性调整、改善数据库性能等。
数据库的设计在数据库应用系统的开发中占有很重要的地位。只有设计出合理的数据库,才能为建立在数据库上的应用提供方便。不过数据库的设计过程从来都不会有真正的结束,因为随着用户需求和具体应用的变化和扩大,数据库的结构也可能会随之变化。
4 系统详细实现
3.1 首页设计
订餐系统首页设计采用CSS,DIV和HTML排版文件模块的调用,页面分成上下左右几个部分。首页面运行如下:
图3.1系统首页
3.2注册页面设计
会员注册页面设计,用户注册需要填写相关的注册资料,填写完成后,提交给系统处理.
注册运行如下图:
图3.2注册
3.3用户登录页面设计
用户注册完成后需要登录系统,登录页面主要是验证用户的账号和密码,登录成功后系统会跳转到成功页面,登录页面是在系统的首页左边部分显示的.页面运行如下
图3.3用户登录
3.4用户信息页面设计
用户信息页面主要实现了会员登录后,可以查看和修改用户信息,本页面也是修改个人资料的页面,只有登录后的用户才可以进来修改。页面运行如下:
图3.4用户信息页面
3.5订餐页面设计
订餐页面是本系统的核心功能,会员登录后就可以开始选适合自己口味的菜品来订餐,进入订餐页面,可以查看到图片和价格,需要手动输入预定的数量和支付款方式,最后提交给系统处理,最后完成订餐操作。
图3.5订餐页面
提交订单成功系统提示如下图:
图3.6订餐成功页面
3.6我的预定页面设计
我的预订页面,可以查看会员自己预定的菜品信息,这样做的好处可以避免订餐用户忘记自己的订菜数量以及订餐的菜品名称,页面运行如下:
图3.7我的预定页面
3.7留言板本页面设计
会员进入本系统可以提交和发布留言信息,也可以浏览所有人的留言信息,管理员可以查看和管理留言,页面运行如下:
图3.8留言板页面
3.8管理登录页面设计
图3.9管理登录页面
登录成功如下:
图3.10提示页面
登录成功后系统跳转到管理中心页面,管理中心页面是管理的导航页面,运行如下:
图3.11管理中心页面
3.9修改密码页面设计
管理员登录后可以修改自己的管理密码,页面运行如下:
图3.12密码修改页面
3.10系统管理设计
系统管理可以添加管理员帐号信息,也就是添加多个管理人员管理本系统。页面运行如下:
图3.13系统管理页面
3.11会员管理设计
会员注册后的基本信息,管理员可以查看和管理,页面运行如下:
图3.14会员管理页面
3.12菜品类别管理设计
菜品类别管理,主要实现了菜品类别信息的添加和删除管理,页面运行如下:
图315类别管理页面
3.13菜品管理设计
菜品信息管理可以查看菜品信息添加删除菜品,上传菜品图片等操作页面运行如下:
图3.16菜品管理页面
3.14菜品录入设计
菜品信息的录入,输入菜品名称、选择菜品类别,介绍和价格,上传菜品图片,添加菜品的时间等,页面运行如下:
图3.17菜品录入页面
315公告管理设计
公告信息管理具有公告标题和内容和发布时间信息的管理,页面运行如下:
图3.18公告管理页面
3.16订单管理设计
订单管理页面管理员可以查看会员订单也可以管理删除会员订单,页面运行如下:
图3.19订单管理页面