系统分析报告记录_第1页
系统分析报告记录_第2页
系统分析报告记录_第3页
系统分析报告记录_第4页
系统分析报告记录_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、系统分析报告记录作者:日期:题目:网系统分析与设计课程设计系统学生姓名:学号:班级:软件12-1指导教师:第一章关于软件性质、规模、目标的报告书 11.1 软件性质11.2 软件规模11.3 开发该软件要实现的目标。 11.4 题目来源、选题背景1第二章可行性研究报告 22.1 技术可行性22.2 经济可行性 22.3 法律可行性32.4 操作可行性32.5 结论3第三章 项目开发计划 43.1 系统概述43.2 系统资源43.3 进度安排5第四章需求规格说明书 64.1 业务分析64.1.1 业务描述64.2 功能分析,建立系统功能模型 84.2.1 需求结构84.2.2 功能模型84.3

2、对象分析,建立系统初步的对象模型 134.4 用例分析,建立用例分析模型134.5 扩充和完善,建立系统完整的对象模型 19第五章 面向对象的总体设计 225.1 软件运行环境 225.2 软件架构模型225.2.1 软件逻辑架构225.3 用例设计,建立用例设计模型235.4 扩充和完善对象模型,建立平台相关对象模型 305.5 数据库设计模型335.5.1 实体类一表一3NF335.5.2 数据库表间的关系365.6 界面设计模型375.6.1 界面结构模型375.6.2 屏幕界面模型(伪界而) 385.7 组件图425.8 部署图模型42VII第一章关于软件性质、规模、目标的报告书1.1

3、 软件性质本软件是网上外卖系统,提供菜单,菜式等信息。主要服务对象是附近一个大学 的学生和周边公司的工作人员,便于就餐。1.2 软件规模因为服务对象比较有针对性,数量不是很庞大,而且提供的服务只是订餐一方面, 用户订餐时间集中,所以选择中小型的网上外卖系统。1.3 开发该软件要实现的目标。本系统是针对于快餐店附近一个大学的学生和周边公司的工作人员而开发的一 个网上外卖系统。该系统可以让客户进行快餐的网上浏览,并且进行订购,从而实现“宅”宿舍里就可以打饭。实现以下功能:1、方便客户了解各种菜式、有更多的选 择,能够更好的选择自己喜爱的菜。2、拓展快餐店的贩卖渠道,增加收入。3、便于 对菜式的销量

4、信息和日销售额进行统计。4、可以电话订餐。1.4 题目来源、选题背景题目来源:是从老师给的题目中选择的。选题背景:随着社会消费水平的提高和科技的发展,大学生生活质量和生活方式 都发生的巨大的变化,“宅”生活已经深入人心,外卖也成为了越来越多的商家利润 的来源,所以开发一个网上外卖系统刻不容缓。第二章可行性研究报告2.1 技术可行性网上外卖系统是一项复杂的系统工程,为了保证系统成功,必须采用工程化的系 统开发方法,并研究出一些符合工程化标准的开发方法。这I些方法旨在指导开发者进行工程化的系统开发,从而加快开发的速度,保证质量以及降低开发成本。工程化 的系统开发确实在开发实践中取得了一定成果。此次

5、开发使用Java作为开发语言,Java是一种全新、且简单、安全、面向对象的 程序设计语言是专门为Java的应用开发的语言。SQL Server是有Microsoft开发和推广的关系数据库管理系统 (DBMS),是一个 全面的数据库平台,提供了企业级的数据管理。SQL Server数据库引擎为关系型数 据和结构化数据提供了更安全可靠的存储功能,可以构建和管理用于业务的高可用和 高性能的数据应用程序。通过以上的分析,开发网上外卖系统是在技术上是可行的2.2 经济可行性虽然在系统开发期间会有软件开发所需的软、硬件资源及人力资源的费用,但是 因为是小中型系统的开发,费用在可接受范围内,软件投入使用后会

6、带来的效益,因 为网上订餐系统给人们带来了方便,成为一种全新的商务模式。不用出门就可以订餐 的新时尚已经到来,构建一个网上订餐系统一定是效益大于成本的,所以在经济上是 完全可行的。12.3法律可行性该系统为独立开发,在技术上没有使用任何现有的软件与方法,所以在法律方面 不会存在侵犯专利权,侵犯版权等问题。2.4 操作可行性该系统的开发的操作方式开发前期单机方式,在后期的测试阶段需要网络方式, 较容易实现,用户可使用手机网络,电脑网络进行使用完全符合用户要求,操作方式 也易被接受,所以可行。2.5 结论综合技术可行性、经济可行性、法律可行性、操作可行性的分析,网上外卖系统 可以在有效的人力物力资

7、源下得到良好的开发。3第三章 项目开发计划3.1 系统概述项目目标:开发一个快餐店网上订餐系统主要功能:1、方便客户了解各种菜式、有更多的选择,能够更好的选择自己喜 爱的菜。2、拓展快餐店的贩卖渠道,增加收入。3、便于对菜式的销量信息和日销售 额进行统计。4、可以电话订餐。系统特点:送餐的范围在快餐店的周围1公里内。3.2 系统资源开发和运行该软件所需要的硬件资源:电脑开发和运行该软件所需要的软件资源:MyEclipse、MySQL数据库开发和运行该软件人力资源:小组人数 2人;小组成员的技术特长及责任小组成员负责需求其他购买功能详细见文档批注菜单管理#3.3进度安排时间进度周一关于软件性质、

8、规模、目标的报告书可行性研究报告项目开发计划周二、周三需求规格说明书周四总体设计说明书周五完善论文答辩5第四章需求规格说明书4.1 业务分析4.1.1 业务描述网上外卖系统提供当天的菜单、购买、登录/注册、个人修改、快餐店介绍等功能; 同时为店主提供相对相应信息的维护及管理的功能,包括客户管理、菜单管理、订单 管理、外卖情况统计、个人修改等功能。网络前台:(1)、当天菜单:在进入网上外卖系统首页后,单击“菜单浏览”,转入菜单浏览 页面,显示给客户的是该快餐店的所有菜式。客户可以选择自己喜欢的菜式,单击某 菜式标题进入查看菜式页面查看该菜式的主料、口味、图片、价格等详细信息。(2)、购买:登录后

9、的客户可以在“菜单浏览页面”选择一个菜式,浏览菜式的 详细的信息,客户把菜式添加到购物车,也可以查看购物车的内容,就是返回购物车 内容、每个条目的价格小计和购物车中所有条目的总价。客户可以更改要购买的菜式 数量,也可以删除购物车里菜式。客户购买购物车里的菜式,将显示订单详细信息。(3)、快餐店介绍:已登录客户在进入外卖系统首页后,单击“关于我们”按钮, 显示快餐店的地址、电话等简单介绍。(4)、登录/注册:客户在进入外卖系统首页后,单击“注册”按钮,进入注册页 面。在注册页面,客户可填写注册信息(提供邮购和管理所必须的有效信息, 如姓名, 地址,电话等)进行注册。已注册的客户进入系统后单击“登

10、录”按钮,进入登录页 面,在登录页面,填写用户名、密码,经系统验证后登录系统。(5)、个人修改:客户进入外卖系统首页并登录后,进入普通用户登录后的页面, 单击“个人修改”按钮,进入个人修改页面,在该页面中,系统显示该用户的基本信息,用户可以修改这些基本信息。后台管理:(1)、客户管理:店主登录后,进入管理员登录后页面。店主在该页面中点击“客 户”进入客户管理页面,店主可以在该页面中分页浏览客户信息、查看某客户的详细 信息、删除某客户、添加客户。(2)、菜单管理:店主登录后,进入管理员登录后页面。店主在该页面中点击“菜 单”进入菜单管理页面,店主可以在该页面中分页浏览菜单信息、查看某菜式的详细

11、信息、删除某菜式、添加菜式、修改菜式。(3)、外卖情况:店主登录后,进入管理员登录后页面。店主在该页面中点击“外 实情况”进入外卖情况查看页面,店主可以在该页面中对每天的外卖情况(比如,每种 菜的销量,日销售额)进行统计,也可以清空一段时间内的外卖情况。(4)、订单管理:店主登录后,进入管理员登录后页面。店主在该页面中点击“订 单”进入订单管理页面,店主可以在该页面中分页浏览订单信息、查看某订单详细信 息、配送订单、删除订单、修改订单、添加电话订单。(5)、个人修改:店主登录后,进入管理员登录后页面。店主在该页面中点击“个 人修改”进入个人修改页面,该页面显示店主个人信息,店主可以对其进行修改

12、。134.2功能分析,建立系统功能模型4.2.1 需求结构网上外卖系统图4.2.1网上外卖系统需求结构图4.2.2 功能模型将网上外卖系统所有需求合理归类,主要可以分为购买、订单、客户、菜单、外 实情况五个方面,主要为购买需求建立功能模型。(1)、描述:登录客户可以浏览菜式详细信息、添加菜式购物车,查看购物车、修改购物车里的菜式数量、删除购物车里的菜式,查看订单详细信息。(2)、用例图(3)、用例叙述(一)、“浏览菜式详细信息”用例的用例叙述用例名:浏览菜式详细信息参与者:客户 事件流程:1、客户在菜单浏览页中,单击某菜式名,系统查询该菜式详细信息,将查到 的菜式详细信息显示在查看菜式页面。2

13、、客户在查看菜式页面中,单击“返回”,则返回菜单浏览页面。(二)、”添加菜式到购物车”用例的用例叙述用例名:添加菜式到购物车参与者:客户事件流程:1、客户在查看菜式页时,单击“添加”按钮,添加菜式到购物车,并转入 购物车管理页面,单击“返回查看”按钮,就返回查看菜式页中。2、客户在查看菜式页中,单击“返回”按钮,则返回菜单浏览页。(三)、“查看购物车”用例的用例叙述用例名:查看购物车参与者:客户事件流程:1、客户在客户登录后的首页,单击“购物车”按钮进入购物车管理页面。2、系统从数据库中取出购物车里所有菜式信息,显示在购物车管理页面。2、客户在购物车管理页面,点“返回”,则返回客户登录后的首页

14、。(四)、”修改购物车中菜式的数量”用例的用例叙述用例名:修改购物车中菜式的数量 参与者:客户事件流程:1、客户在购物车管理页中,单击某条菜式信息后的“修改”,系统从数据 库中取出该菜式的详细信息,显示在“修改菜式数量”页中。2、客户在“修改菜式数量”页,修改的菜式的数量,点击“提交”,则转3,;点“取消”,则返回购物车管理页。3、系统将菜式信息更新到数据库中,若更新成功,则返回购物车管理页, 否则转信息页,显示失败信息。(五)、“购买购物车里的菜式”用例的用例叙述用例名:购买购物车里的菜式参与者:客户事件流程:1、客户在购物车管理页中,选择要买的菜式,单击页面中的“购买”按钮。2、系统自动提

15、交订单并且审阅是否符合送餐的范围在快餐店的周围 1公里 内。若符合则成功,进入订单详细信息页面,显示订单详细信息。否转信息页, 显示失败信息。(六)、”显示订单详细信息”用例的用例叙述用例名:显示订单详细信息参与者:客户事件流程:1、客户在购物车管理页面,单击“已购买”进入订单信息页面,显示已购买订单详细信息2、客户单击“返回”,返回购物车管理页面(七)、“删除购物车里菜式”用例的用例叙述参与者:客户事件流程:1、客户在购物车管理页面,单击某菜式信息后的“删除”按钮。2、系统从数据库的购物车表中删除,若删除成功,则返回购物车管理页 否则,转信息页,显示失败。4.3对象分析,建立系统初步的对象模

16、型订单菜单- 菜式编号int- 菜名:string- 菜式类型string- 菜式价格float- 菜式主料string- 菜式口味strin%- 菜式图片string *11外卖情况- 外卖序号int- 菜单号菜单- 销售数量int- 销售金额floa- 订单号string- 下单时间Date- 订单 状态string- 订单 地址string- 联系 方式string 未名:菜单- 用户编用户 数量:int- 单价float- 总计float用户- 用户编号string- 用户名string- 用户密码string- 用户姓名string- 用户电话string- 用户地址string购物

17、车-用户用户-菜单菜单-数Jt int - -单价float -总价float图4.3.1系统初步对象模型4.4用例分析,建立用例分析模型0.*电话订单-用户电话string-用户状态string用顺序图对用例进行分析,用BCE模式画“购买”需求的顺序图浏览菜式的详细信息图4.4.1浏览菜式详细信息用例的顺序图“添加菜式到购物车”用例4.4.2 添加菜式到购物车用例的顺序图4.4.3 "查看购物车”用例的顺序图17“修改购物车中菜式的数量”用例4.4.4"修改菜式数量”用例的顺序图购买购物车里的菜式用例4.4.5 "购买购物车中的菜式”用例顺序图4.4.6&quo

18、t;显示订单详细信息”用例“用“删除 购物车中菜式 例图4.4.7"删除购物车里的菜式”用例的顺序图184.5扩充和完善,建立系统完整的对象模型19一、实体类3Z A%¥叶刍木昔开订单-订单号-下单时间string:Date- 订单状态 :string- 订单地址 :string- 联系方式:string- 菜名:菜单- 数量:int-单价:float, 尚 1+ , float*-用户编号:用户+findOrderById()菜单+findOrders() +addOrder() +deleteOrder() +updateOrder() +findCount() +se

19、t() +get() +findOrdersByuserId()-采式编号:int-菜名:string-菜式类型:string-菜式价格:float-菜式主料:string .菜式口味:string-菜式图片:string+findMenuById() +findMenus() +addMenu() +deleteMenu() +updateMenu() +set()*购物车+get()+findCount()-菜单-用户菜单 用户!111-数量-单价int floatJ-总价float外卖情况+addCarMenu()-编号:int-菜单号:-销售数量-销售金额菜单 :int :float*

20、+deleteCarMenu() +findCarMenus() +findCarMenuById() +updateCarMenu()+findCase() +findById() +set() +get()+getTotal() +set() +get() +findcount()*1用户- 用户编号:string- 用户名:string- 用户密码:string- 用户姓名:string- 用户电话 :string -用户地址:string +addUser() +deleteUser() +editUser() +findUsers() +findUserById() +findCou

21、nt()+findUserByNameAndPwd() +set() +get()+create()1*电话订单-用户电话 :string -用户状态 :string +findOrders() +editOrders() +addOrders() +set() +get()图4.5.1实体类图、控制类购物军控制菜单控制类订单控制类客户控制类+add() +show() +delete() +update() +willupdate() +manager()+add() +show() +delete() +update() +manager() +willupdate() +find()+a

22、dd() +show()+delete()+update()+manager() +willupdate() +check()+add() +show() +delete() +update() +willupdate() +manager() +login()电话订单控制+add() +find() +update()外卖情况控a+find()21图4.5.2 控制类图三、边界类购买相关:客户登陆页面、客户登录后的页面、菜单浏览页面、查看菜式页面、购物车管理页面、修改购物车里菜式数量页面、订单详细信息页面四、用状态图分析“购买”需求时用到的类的状态变迁改物中式量 修购车菜数第五章 面向对象的

23、总体设计5.1 软件运行环境浏览器:IE应用服务器:Tomcat 6.0数据库服务器:MySQL集成服务器:MyEclipse开发语言:Java开发技术:JSP+Servlet+JavaBean+JDBC5.2 软件架构模型5.2.1 软件逻辑架构网上外卖系统图5.2.1软件逻辑架构图5.3 用例设计,建立用例设计模型用顺序图对“购买”用例进行分析浏览菜式的详细信息1:单击某菜式:show.jspOpMenuActionOpMenuServiceOpMenuDao2;show() I-3:findMenuById()4:selectById()7:forward()6:返回OpMenu类的对象

24、menu5:返回OpMenu类的对象menu25图5.3.1浏览菜式详细信息顺序图图5.3.2查看购物车顺序图“添加菜式到购物车”用例图5.3.3添加菜式到购物车顺序图#“修改购物车中菜式的数量”用例:OpUser : carManager.jsp:updateMenuCar.jsp :OpCarAction:OpCarService:OpCarDao1:"单击“修改”按钮2: willupdate()8:修改菜式数量9:提交14: updateCarMenu()19:sendRedirect()图5.3.4修改购物车菜式数量顺序图予 16:update(carmenu)29“购买购

25、物车里的菜式”用例图5.3.5购买购物车里的菜式顺序图“显示订单详细信息”用例图5.3.6显示菜单详细信息顺序图“删除购物车中菜式”用例图5.3.7删除菜式到购物车顺序图5.4扩充和完善对象模型,建立平台相关对象模型、实体类平台相关对象模型OpMenu-menuId : int -menuName : string -menuType : string -price : float -menuMain : string -taste : string -picture : string+getMenuId() +setMenuId() +getMenuName() +setMenuName()

26、 +getMenuType() +setMenuType() +getPrice() +setPrice() +getMenuMain() +setMenuMain() +getTaste() +setTaste() +getPrice() +setPrice()*ii I OpInfor-Id : int-menuId : OpMenu -num : int -money : float +getId() +setId() +getMenuId() +setMenuId() +getNum() +setNum() +getMoney() +setMoney()OpOrder-orderId

27、: string -orderTime : Date -orderStatu : string -address : string -telephone : string -menuId : OpMenu -num : int -price : float -money : float -userId : OpUser +getOrderId() +setOrderId() +getOrderTime() +setOrderTime() +getOrderStatu() +setOrderStatu() +getAddress() +setAddress() +getTelephone() +

28、setTelephone() +getMenuId() +setMenuId() +getNum() +setNum() +getMoney() +setMoney() +getUserId() +setUserId() +setPrice() +setPrice()OpCar-userId : OpMenu -menuId : OpUser -num : int -price : float -money : float +getUserId() +setUserId() +getMenuId() +setMenuId() +getNum() +setNum() +getPrice() +s

29、etprice() +getMoney() +setMoney()IOpUser-userId : string -userName : string -userPwd : string -userRName : string -telephone : string -address : string +getUserId() +setUserId() +getUserName() +setUserName() +getUserPwd() +setUserPwd() +getUserRname() +setUserRname() +getTelephone() +setTelephone()

30、+getAddress() +setAddress()OpTorder -telephone : string -statu : string +getTelephone() +setTelephone() +setStatu() +getStatu()图5.4.1实体类图31、业务逻辑类图图5.4.3数据访问类图33OpMenuServiceOpOrderService+findMenuById() : OpMenu +findMenus() : OpMenu +addMenu() : void +deleteMenu() : void +updateMenu() : void +findC

31、ount() : int+findOrderById() : OpOrder +findOrders() : OpOrder +addOrder() : void +deleteOrder() : void +updateOrder() : void +findCount(): int +findOrdersByuserId() : OpOrderOpCarService+addCarMenu(): void +deleteCarMenu() : void +findCarMenus() : OpCar +findCarMenuById() : OpCar +updateCarMenu() :

32、 void +getTotal() : int +findCount(): int图5.4.2业务逻辑类图、数据访问类OpCarDao+selectAll() : List<OpCar> +deleteCarMenu(): void +selectmenuById() : OpCar +insert() : void +selectById() : OpCar +update() : voidOpMenuDaoOpOrderDao+selectByAddress() : Boolean +insert() : void +delete() : void +update() : vo

33、id+selectAll() : List<OpOrder> +selectByOrderId() : OpOrder +selectAllcount() : int+selectById() : OpMenu +selectAll() : List<OpMenu> +delete() : void +insert() : void +update() : void +selectAllcount() : int5.5数据库设计模型四、控制类OpCarActionOpMenuActionOpOrderAction+add() +show() +delete() +upd

34、ate() +willupdate() +manager()+add() +show() +delete() +update() +manager() +willupdate() +find()+add() +show() +delete() +update() +manager() +willupdate() +check()35图5.4.4控制类图五、边界类购买 相关: user/login.jsp、 user/userafterlogin.jsp、 menu/browse.jsp、menu/show.jsp car/carManager.jsp car/OrderList.jsp、car

35、/updateMenuCar.jsp5.5.1实体类一表一3NF表5.1订单表(OpOrder)名称描述数据类型大小约束默认值orderld订单号Varchar100PKorderTime下单时间DateNN当前时间orderStatu订单状态Varchar100NNaddress订单地址Varchar200NNtelephone联系方式Varchar100NNmenuId菜名Int100NN FKnum数量IntNNuserId用户编号Varchar100NN FKprice单价Float100NNmoney总计Float100NN表5.2电话订单表(OpTorder)名称描述数据类型大小约

36、束默认值telephone用户电话Varchar100PKstatu用户状态Varchar100表5.3客户表(OpUser)名称描述数据类型大小约束默认值userid用户编号Varchar100PKuserName用户名Varchar100NNuserPwd密码Varchar100NNuserRname用户姓名Varchar100telephone电话Varchar100NNaddress地址Varchar200NN表5.4购物车表(OpCar)名称描述数据类型大小约束默认值userid用户编号Varchar100NN FKmenuid菜式编号intNN PK FKnum数量int1pric

37、e单价Floatmoney总价Float表5.5菜单表(OpMenu)名称描述数据类型大小约束默认值menuId菜式编号IntAI PKmenuName菜名Varchar100NNmenuType菜式类型Varchar100NNprice菜式价格FloatNNmenuMain菜式主料Varchar100NNtaste菜式口味Varchar100NNpicture菜式图片Varchar100NN表5.6外卖情况表(OpInfor)名称描述数据类型大小约束默认值Id外卖序号IntAI PKmenuId菜单号IntNN FKnum销售数量Intmoney销售金额Float375.5.2数据库表间的关系OpInforId int <pk> menuIdint <fk>money floatOpOrderorderId varchar(0) &l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论