尚通 | 2021软件代码开发技术作业三| 综合系统开发----需求分析
这个作业属于什么课程 | https://edu.cnblogs.com/campus/gdgy/2021Softwarecodedevelopmenttechnology |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/2021Softwarecodedevelopmenttechnology/homework/11968 |
这个作业的目标 | 1. 帮助我们更好地掌握Github使用 |
2.加深对领域驱动设计方法、软件设计模式等知识的理解 | |
3.学会运用UML、领域驱动设计方法、软件设计模式等知识,对系统需求进行建模 | |
4. 更好的学会软件需求规格说明书的撰写 |
1.软件设计需求
一家公司提供服务出租,自身有一些员工,另外还有很多自由职业者作为服务商存在。公司目前使用Excel工作表来管理他们的客户(自由职业者),时间表等。Excel解决方案无法很好地进行扩展。它无法应对多用户使用的场景,也不提供安全和审计日志。因此他们决定构建一个新的基于Web的解决方案。以下是核心要求:
- 搜索自由职业者分类的功能
- 用于存储联系自由职业者的不同渠道的解决方案
- 搜索项目分类的功能
- 搜索客户分类的功能
- 维护合同中自由职业者的时间表
2.领域驱动设计
2.1定义概念类
自由职业者 | Freelancer |
服务项目 | Service project |
时间表 | Schedule |
客户 | Customer |
2.2领域模型
3.需求规格说明书
3.1问题概述
在计算机上进行“无纸化”信息管理,是现如今商家管理自家账务、人员的普遍趋向。计算机具有节省人力、运算快捷、信息转移方便等。这大大减少了商家的开销。基于WEB的服务出租系统,在以往的本地管理系统上增加WEB支持,使得用户可以在任何地点访问、修改自己的信息,同时WEB便于以后的功能扩展且提供审计功能,以便回滚不正确的改动。
3.2功能概述
3.2.1功能需求
搜索自由职业者分类的功能
用于存储联系自由职业者的不同渠道的解决方案
搜索项目分类的功能
搜索客户分类的功能
维护合同中自由职业者的时间表
3.2.2技术需求
a.需要部署在服务器上,可用云服务器
b.并发的改动请求处理
c.大量的云存储空间,约10T(小型商家系统)/约100T(中型商家系统)
d.网络速度>=200KB/s
e.多浏览器支持
3.3功能模型
3.3.1数据流图
3.3.2系统用例图
3.4数据模型
3.4.1实体及其属性
自由职业者 | 编号、姓名、电话、住址 |
时间表 | 编号、名称、内容、起始时间、结束时间 |
服务项目 | 编号、名称、内容、价格 |
客户 | 编号、姓名、电话、住址 |
3.4.2实体联系图
3.5数据字典
3.5.1数据项介绍
名称 | 描述 | 定义 | 位置 |
自由职业者编号 | 用来唯一区分自由职业者 | 1{数字}5 | 自由职业者信息 |
自由职业者姓名 | 自由职业者的姓名 | 2{字符}10 | 自由职业者信息 |
自由职业者电话 | 自由职业者的电话 | 1{数字}11 | 自由职业者信息 |
自由职业者住址 | 自由职业者的住址 | 1{字符}20 | 自由职业者信息 |
时间表编号 | 用来唯一确定时间表的某一项 | 1{数字}5 | 时间表信息 |
时间表名称 | 时间表项目的名称 | 2{字符}10 | 时间表信息 |
时间表内容 | 时间表项目的内容 | 2{字符}50 | 时间表信息 |
时间表起始时间 | 时间表项目的起始时间 | 1{数字}5 | 时间表信息 |
时间表结束时间 | 时间表项目的结束时间 | 1{数字}5 | 时间表信息 |
服务项目编号 | 唯一确定服务项目 | 1{数字}5 | 服务项目信息 |
服务项目名称 | 服务项目的名称 | 2{字符}20 | 服务项目信息 |
服务项目内容 | 服务项目的内容 | 2{字符}50 | 服务项目信息 |
服务项目价格 | 服务项目的价格 | 1{数字}20 | 服务项目信息 |
客户编号 | 用来唯一确定某一客户 | 1{数字}5 | 客户信息 |
客户姓名 | 客户的姓名 | 2{字符}10 | 客户信息 |
客户电话 | 客户的电话 | 1{数字}11 | 客户信息 |
客户住址 | 客户的住址 | 2{字符}50 | 客户信息 |
3.5.2数据存储
名称 | 描述 | 定义 | 位置 |
自由职业者信息 | 某一自由职业者的相关信息 | 自由职业者信息=编号+名称+电话+住址 | 服务器数据库 |
时间表信息 | 时间表中每一项目的信息 | 时间表信息=编号+名称+内容+起始时间+结束时间 | 服务器数据库 |
服务项目信息 | 每一项服务项目的详细内容 | 服务项目信息=编号+名称+内容+价格 | 服务器数据库 |
客户信息 | 某一客户的相关信息 | 客户信息=编号+名称+电话+住址 | 服务器数据库 |
4.任务计划
4.1项目时间安排
活动 | 任务 | 预期工期(天) | 预计开始时间 | 预计结束时间 | 矫正后工期(天) | 矫正后开始时间 | 矫正后结束时间 |
需求分析 | 需求收集、分析、建模 | 3 | 2021/4/30 | 2021/5/2 | 3 | 2021/4/30 | 2021/5/2 |
总体设计 | UML图绘制等 | 5 | 2021/5/3 | 2021/5/8 | 7 | 2021/5/3 | 2021/5/10 |
详细设计 |
前端界面设计 后台脚本设计 |
7 | 2021/5/9 | 2021/5/16 | 7 | 2021/5/11 | 2021/5/16 |
前端界面搭建 | 5 | 2021/5/17 | 2021/5/22 | 5 | 2021/5/17 | 2021/5/21 | |
后台数据处理 | 5 | 2021/5/23 | 2021/5/28 | 5 | 2021/5/22 | 2021/5/26 | |
前后端连接 | 3 | 2021/5/29 | 2021/6/1 | 2 | 2021/5/27 | 2021/5/28 | |
性能测试 | 系统测试及错误修复 | 2 | 2021/6/2 | 2021/6/4 | 3 | 2021/5/29 | 2021/5/31 |
系统最终测试 | 1 | 2021/6/5 | 2021/6/5 | 2 | 2021/6/1 | 2021/6/2 | |
交付 | 系统交付 | 1 | 2021/6/6 | 2021/6/6 | 1 | 2021/6/3 | 2021/6/3 |
4.2矫正时间算法
根据以往案例计算,在总体设计部分增大了工期。并且对开始与结束时间进行重新计算。
5.GitHub地址
https://github.com/Service-ST
6.后台编辑截图