综合系统开发-需求分析
这个作业属于哪个课程 | 班级传送门 |
---|---|
这个作业要求在哪里 | 作业要求传送门 |
这个作业的目标 | 1. 掌握如何编写需求规格说明书 2. 掌握运用领域驱动设计方法分析系统需求 3. 掌握运用统一建模语言工具描述需求规格 4. 熟悉使用GitHub |
领域驱动设计
-
确定领域对象
- 客户:customer
- 自由职业者:FreeWorker
- 项目:Project
- 时间表:scheduler
-
确定对象之间的联系
-
添加对象属性
-
得出最终领域对象模型
需求规格说明
需求分析
问题分析
一家公司提供服务出租,自身有一些员工,另外还有很多自由职业者作为服务商存在。公司目前使用Excel工作表来管理他们的客户(自由职业者),时间表等。Excel解决方案无法很好地进行扩展。它无法应对多用户使用的场景,也不提供安全和审计日志。因此他们决定构建一个新的基于Web的解决方案。
功能需求分析
- 对自由职业者进行统一管理,包括通过分类进行搜索、可以查询自由职业者的不同联系方式、记录自由职业者的时间表
- 对项目进行统一管理,可以通过分类搜索项目
- 对客户进行统一管理,可以通过分类来搜索客户
- 提供安全和审计日志
数据需求分析
输入数据 | 存储数据 |
---|---|
自由职业者 | 存储其基本信息,同时包括多种渠道的联系方式、具体的时间表、负责的项目等 |
客户 | 存储基本信息,包括id、名字、联系方式、接收的项目 |
项目 | 存储项目基本信息,包括项目id、名字、内容 |
时间表 | 存储自由职业者的时间表单 |
非功能性需求分析
- 安全性:保证数据库中的数据不会被泄露,仅管理员可见
- 健壮性:系统稳定不会崩溃,运行过程中不会出现crash问题
需求分析建模
用例模型
-
用例图
-
用例描述
描述项 说明 用例名字 根据分类搜索自由职业者 用例描述 管理员可以通过选择分类,来搜索对应分类下的自由职业者 参与者 管理员 前置条件 管理进行认证并登陆 后置条件 显示对应分类的自由职业者在屏幕上 流程 登陆-选择自由职业者管理-分类搜索-选择分类-点击显示该分类下的自由职业者
数据流图
实体联系图
-
实体及属性
实体 属性 自由职业者 id、名字、分类id、电话、微信、qq、邮箱、时间表 客户 id、名字、分类id、电话 时间表 id、时间 项目 id、名字、分类id、内容 -
实体联系图
面向对象分析建模
类图如下:
时间规划表
活动 | 任务 | 预期工作时间 | 预期开始时间 | 预期结束时间 | 校正后工作时间 | 校正后开始时间 | 校正后结束时间 |
---|---|---|---|---|---|---|---|
需求分析 | 需求获取、分析、建模 | 10个工作日 | 2021.5.6 | 2021.5.18 | 10个工作日 | 2021.5.6 | 2021.5.18 |
系统设计 | 系统总体设计、流程设计 | 4个工作日 | 2021.5.19 | 2021.5.25 | 4个工作日 | 2021.5.19 | 2021.5.25 |
详细设计 | 模块设计、界面设计、代码设计 | 6个工作日 | 2021.5.26 | 2021.6.2 | 6个工作日 | 2021.5.26 | 2021.6.2 |
实现阶段 | 自由职业者、客户、项目、时间表模块实现 | 12个工作日 | 2021.6.3 | 2021.6.18 | 6个工作日 | 2021.6.3 | 2021.6.10 |
测试 | 单元测试、模块测试、系统测试 | 5个工作日 | 2021.6.21 | 2021.6.25 | 5个工作日 | 2021.6.11 | 2021.6.17 |
交付 | 系统交付 | 1个工作日 | 2021.6.28 | 2021.6.28 | 1个工作日 | 2021.6.18 | 2021.6.18 |
- 校正安排:实现阶段,各个模块的功能整体相似,编写完成一个模块之后,其他模块可以快速编程,缩减50%的预期时间。其他的活动与预期时间类似。