设计文档

news/2024/7/3 2:25:20

 

因为内容过多,只发一部分,详见设计文档。

 

本详细设计说明书编写的目的是说明程序模块的设计考虑,包括程序描述、输入/输出、算法和流程逻辑等,为软件编程和系统维护提供基础。

本说明书是设计阶段的成果,说明了功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。

本说明书的预期读者为系统设计人员、软件开发人员、软件测试人员和项目评审人员。

功能概述:

水果预定网页端包含用户管理、水果商品信息管理、订单管理、客户服务共4个大的功能模块。

    用户可以通过注册账户进入平台。进入平台后,用户在主页对商品进行挑选,选择相应商品后,确定详细的购买数量,待挑选完毕以后,确认订单,付款。此外还提供查看订单状态,以及客服反馈的服务。

    运营商也通过账号登录平台,发布水果商品信息,管理顾客的订单,反馈订单状态,派送水果。

系统功能表:

 

 

 

功能名称

 

 

功能描述

 

 

用户管理

 

用户注册

 

 

用户填写注册信息,平台内创建1个新用户

 

 

用户登录

 

 

根据账号和密码,用户登录进入平台

 

 

用户信息修改

 

 

用户登录进入平台后,可以修改个人信息

 

 

水果商品信息管理

 

添加水果商品

 

 

运营商将某一种水果发布到平台上,供用户购买

 

 

删除水果商品

 

 

运营商下架某一种水果

 

 

修改水果商品

 

 

对水果的具体描述进行修改

 

 

订单管理

 

确认订单

 

 

挑选商品,付款,确认

 

 

删除订单

 

 

删除已完成和未完成的订单

 

 

完成订单

 

 

运营商管理用户的订单,完成水果派送

 

 

客户服务

 

客服帮助

 

 

用户向运营商反馈问题请求

 

 

回复顾客

 

 

运营商回复用户的请求

 

 

总体架构:

 

系统分为三层,WEB为用户层,后台服务器端为接口服务层,数据库在数据存储层。

(1)用户层主要是面向用户的功能,包括购买水果、信息查询等。WEB为订单信息查看等;

(2)接口服务层主要是对业务逻辑的处理,包括登录、注册、水果提供、水果派送等;

(3)数据存储层主要是数据和文件的存储。

详细设计

 整体用例图:

整体类图:

(后台人员未包括在内)

 

以下模块只展示部分图。

登录模块

用例表:

 

编号

 

 

1

 

 

名称

 

 

登录系统

 

 

执行者

 

 

注册的普通用户、零售商、负责人、系统管理员

 

 

优先级

 

高■中□低□

 

描述

 

 

执行者通过登录功能登录本系统,获得执行者的权限。

 

 

前置条件

 

 

已注册

 

基本流程

 

  1. 点击登录按钮
  2. 显示登录界面
  3. 填写登录用户名和密码
  4. 提交表单到后端
  5. 数据库查询密码
  6. 数据库返回密码
  7. 后端验证密码正确
  8. 密码若正确,提示登录成功

 

 

结束状态

 

 

显示登录成功,进入系统主页

 

 

可选流程

 

 

  1. 忘记密码
  2. 新用户去注册

 

 

异常流程

 

 

1.提示该用户账号未注册 

2.提示账号密码错误

 

说明

 

 

 注册模块

顺序图以及其描述文档

 

顺序图综述:上图描述了“注册”的顺序图,涉及用户、用户界面、后端、数据库4个对象。

 

参与者对象描述:“用户”是参与者,“用户界面”、“后端”、”数据库”是对象。用户选择注册系统并填写用户名、密码,选择用户类型,用户界面提供入口,后端传递信息,数据库添加数据。

 

消息描述:“注册”的顺序是通过消息发送的前后关系得到体现。通过用户填写的用户名、密码,选择的用户类型,前后端传递用户信息以及数据库添加结果,数据库增加用户数据。

 

其他描述:无

 

 

新品上新模块

状态图以及其描述文档

 

状态图综述:上图描述了“新品上新”中关于“零售商”对象的状态变化

 

状态描述:状态图中描述了“新品上新”中“零售商”“未录入(信息)”、“录入(信息)”、“录入(信息)中”和“录入(信息)成功”等4个状态。“未录入”是描述零售商的初始状态,“录入”描述用户正处于填写新品信息的过程中,“录入(信息)中”描述后端、数据库的交互过程,并返回录入结果,“录入成功”描述用户已经成功录入商品的状态。

 

状态转换描述:“点击‘新品上传’”命令触发用户由“未录入”的状态,转换为“录入”的状态。“确认上传”消息触发后端提交表单、数据库添加新品信息的过程。“录入成功”触发用户改变为“已录入”状态。

 

其他描述:无

 

 

商品修改模块

用例表

 

编号

 

 

4

 

名称

 

新品上新信息

 

执行者

 

 

注册零售商

 

优先级

 

高■中□低□

 

描述

 

零售商根据水果的售卖情况以及时令变化修改商品,将其删除或者修改基本信息。

 

 

前置条件

 

 

已登录且用户类型为零售商

基本流程

 

1.点击登录按钮

2.显示登录界面

3.输入用户名、密码

4.登录成功

5.跳转到零售商个人中心界面

6.点击商品查看按钮

7.显示零售商提供商品界面

8.点击[修改&删除]按钮

9.修改/删除商品

 

 

结束状况

 

 

点击确认按钮

 

可选流程

 

  1. 删除商品,点击[修改&删除]按钮的删除部分,提示[确认删除&取消],点击确认删除,删除商品完成。
  2. 修改商品,点击[修改&删除]按钮的修改部分,跳转到商品修改界面,修改商品的基本信息,点击确认修改按钮,修改成功。

 

异常流程

 

 

说明

 

搜索水果模块

顺序图以及其描述文档

 

顺序图综述:上图描述了“搜索水果”的顺序图,涉及用户、用户界面、后端、数据库4个对象。

 

参与者对象描述:“用户”是参与者,“用户界面”、“后端”、”数据库”是对象。用户可以根据自己的需求通过本系统在主页搜索水果的基本信息,用户界面提供入口,后端传递信息,数据库查找、返回数据。

 

消息描述:“搜索水果”的顺序是通过消息发送的前后关系得到体现。通过用户的查看申请发起消息传递,数据库查找、返回数据,后端传递前端的消息以及数据库的查询结果。

 

其他描述:无

 

转载于:https://www.cnblogs.com/CLSSSW/p/9185900.html


http://lihuaxi.xjx100.cn/news/272542.html

相关文章

AS1.0(2.0)中的XML示例

虽然Flash早就升级为AS3.0&#xff0c;但是FMS的服务端编程依然仅支持AS1.0(2.0)&#xff0c;服务端与.net通讯的最简单方式莫过于请求一个RESTful的webService或wcf&#xff0c;通过它们返回的xml来获取数据。 var _xml:XML new XML("<ArrayOfstring xmlns\"htt…

基于 Spring Cloud 开发的分布式系统,遇到爬虫、接口盗刷怎么办?

点击上方“方志朋”&#xff0c;选择“设为星标”回复”666“获取新整理的面试文章来源 | oschina.net/p/kk-anti-reptilekk-anti-reptile是&#xff0c;适用于基于spring-boot开发的分布式系统的反爬虫组件。系统要求基于spring-boot开发(spring-boot1.x, spring-boot2.x均可)…

smarty 模板引擎

http://blog.csdn.net/zuiaituantuan/article/details/5951242 http://wenku.baidu.com/link?url-UHlSnTXOOAjFG1KjX6T9sEG6V4hNAMfRDpMuRRnc_FKbFAxiE5Ntk4lzxSm-7Z531uWdfvgYx81sdC61SgTZm7q8FdUt3gSs7ZlC0JR1SW转载于:https://www.cnblogs.com/hxjbc/p/4441879.html

国内高校硕博补贴大公开!(某校博士在读已经年薪 25w 了)

点击上方“视学算法”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达转自 | 中国农业大学论坛&#xff0c;论文项目硕博招聘仅作学术分享&#xff0c;不代表本公众号立场&#xff0c;侵权联系删除之前有消息称&#xff0c;中科大为吸引优质的博…

听说过代码洁癖,Bug洁癖怎么解?

来源 | Python编程时光&#xff08;ID: Cool-Python&#xff09;当我们写的一个脚本或程序发生各种不可预知的异常时&#xff0c;如果我们没有进行捕获处理的时候&#xff0c;通常都会致使程序崩溃退出&#xff0c;并且会在终端打印出一堆 密密麻麻 的 traceback 堆栈信息来告诉…

VS code 插件配置手册

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达VS code 插件配置手册C/C Tools插件---C/C支持安装库文件的配置GDB本地调试配置GDB远程调试配置Remote VSCode插件---远程编辑文件安装环境配置在本地端的配置在远程端的配…

Python 哪种方式循环最快,或许颠覆你的认知

众所周知&#xff0c;Python 不是一种执行效率较高的语言。此外在任何语言中&#xff0c;循环都是一种非常消耗时间的操作。假如任意一种简单的单步操作耗费的时间为 1 个单位&#xff0c;将此操作重复执行上万次&#xff0c;最终耗费的时间也将增长上万倍。 和是 Python 中常…

拥抱并行流,提高程序执行速度

点击上方“方志朋”&#xff0c;选择“设为星标”回复”666“获取新整理的面试文章作者&#xff1a;后青春期的Keatscnblogs.com/keatsCoder/p/12934394.html前言 在 Java7 之前&#xff0c;如果想要并行处理一个集合&#xff0c;我们需要以下几步 1. 手动分成几部分 2. 为每部…