作业三:综合系统开发——需求分析
作业三——综合系统开发:需求分析
引言
项目背景
一家公司提供服务出租,自身有一些员工,另外还有很多自由职业者作为服务商存在。公司目前使用Excel工作表来管理他们的客户(自由职业者),时间表等。Excel解决方案无法很好地进行扩展。它无法应对多用户使用的场景,也不提供安全和审计日志。因此他们决定构建一个新的基于Web的解决方案。以下是核心要求:
- 搜索自由职业者分类的功能
- 用于存储联系自由职业者的不同渠道的解决方案
- 搜索项目分类的功能
- 搜索客户分类的功能
- 维护合同中自由职业者的时间表
需求规格说明书
1.需求梳理
1.1.过程梳理
a.项目名称:出租服务管理系统
b.系统需求:
- 数据需求:
序号 输入数据 输出数据 数据存储 1 自由职业者信息 审计日志 自由职业者信息 2 普通客户信息 审计日志 普通股客户信息 3 时间表 时间表 时间 4 项目信息 —— 项目信息 - 功能需求:
1、能够接收、存储或更新用户(含普通客户和自由职业者)信息;
2、能够产生审计信息;
3、能够查询用户信息。 - 技术需求:
序号 输入数据 输出数据 数据存储 1 自由职业者信息 审计日志 自由职业者信息 2 普通客户信息 审计日志 普通客户信息 3 时间表 时间表 时间 4 项目信息 —— 项目信息
c.层次结构图
1.2.关键行为
(1)查询自由职业者;
(2)管理时间表;
(3)审计日志;
(4)发布项目;
(5)查询项目。
2.领域结构设计
2.1.领域对象
(1)普通客户;
(2)自由职业者;
(3)系统管理员。
2.2.领域服务
(1)普通客户查询自由职业者;
(2)自由职业者管理时间表;
(3)系统管理员审计日志;
(4)普通客户发布项目;
(5)自由职业者查询项目;
(6)自由职业者编辑、修改个人信息;
(7)普通客户编辑、修改个人信息;
(8)自由职业者编辑时间表;
(9)普通客户与自由职业者签订合同。
2.3.用例图
- 用例描述:
| 描述项1 | 说明 |
|---|---|
| 用例名称 | 查看项目 |
| 用例描述 | 查看普通客户发布的项目详细信息 |
| 参与者 | 普通客户、自由职业者 |
| 前置条件 | 项目已发布 |
| 后置条件 | 了解、知悉项目详情 |
| 基本操作流程 | 1.自由职业者点击选择项目;2.系统给出项目详细信息。 |
| 拓展操作流程 | 1.自由职业者关闭项目;2.系统关闭项目详细信息。 |
| 描述项2 | 说明 |
|---|---|
| 用例名称 | 发布项目 |
| 用例描述 | 发布项目详细信息 |
| 参与者 | 普通客户 |
| 前置条件 | 项目编辑完成 |
| 后置条件 | 项目成功发布 |
| 基本操作流程 | 1.普通客户编辑项目信息;2.系统保存项目信息;3.普通客户选择发布项目;4.系统将项目详细信息发布。 |
| 拓展操作流程 | 1.普通客户取消发布项目;2.系统撤回项目详细信息。 |
| 描述项3 | 说明 |
|---|---|
| 用例名称 | 签署合同 |
| 用例描述 | 普通客户与自由职业者共同签署合同,确定合作关系 |
| 参与者 | 普通客户、自由职业者 |
| 前置条件 | 普通客户与自由职业者双方经联系在项目合作上能够恰谈 |
| 后置条件 | 合同签署完成,普通客户与自由职业者双方成功建立合作关系 |
| 基本操作流程 | 1.普通客户点击选择签署合同;2.自由职业者点击选择签署合同;3.系统在相应合同上输入双方信息。 |
| 描述项4 | 说明 |
|---|---|
| 用例名称 | 管理时间表 |
| 用例描述 | 编辑修改时间表就对应事项信息 |
| 参与者 | 自由职业者 |
| 前置条件 | 自由职业者个人信息编辑完毕 |
| 后置条件 | 自由职业者相应时间表信息成功保存 |
| 基本操作流程 | 1.自由职业者点击管理时间表;2.系统显示自由职业者的时间表并提供编辑功能;3.自由职业者保存时间表信息;4.系统存储时间表信息。 |
| 描述项5 | 说明 |
|---|---|
| 用例名称 | 查看时间表 |
| 用例描述 | 查看自由职业者对应的时间表信息 |
| 参与者 | 普通客户 |
| 前置条件 | 自由职业者时间表信息已经编辑且成功保存 |
| 后置条件 | 普通客户成功获取时间表信息 |
| 基本操作流程 | 1.普通客户点击查看自由职业者的时间表;2.系统显示自由职业者的时间表信息。 |
| 拓展操作流程 | 1.普通客户切换查看其他自由职业者的时间表;2.系统显示其他自由职业者的时间表信息。 |
| 描述项6 | 说明 |
|---|---|
| 用例名称 | 编辑个人信息 |
| 用例描述 | 编辑个人详细信息 |
| 参与者 | 普通客户、自由职业者 |
| 前置条件 | 成功注册系统账号 |
| 后置条件 | 成功修改个人信息 |
| 基本操作流程 | 1.普通客户或自由职业者点击编辑个人信息;2.系统存储编辑修改后的个人信息。 |
| 描述项7 | 说明 |
|---|---|
| 用例名称 | 查询个人信息 |
| 用例描述 | 查询个人详细信息 |
| 参与者 | 普通客户、自由职业者 |
| 前置条件 | 已编辑个人信息 |
| 后置条件 | 查询获取个人详细信息 |
| 基本操作流程 | 1.普通客户或自由职业者点击查询个人信息;2.系统获取个人详细信息。 |
| 拓展操作流程 | 1.普通客户或自由职业者切换查看其他用户的个人信息;2.系统显示其他用户的个人详细信息。 |
| 描述项8 | 说明 |
|---|---|
| 用例名称 | 审计日志 |
| 用例描述 | 产生并显示审计日志 |
| 参与者 | 系统管理员 |
| 前置条件 | 系统已被使用 |
| 后置条件 | 审计日志成功显示 |
| 基本操作流程 | 1.系统管理员点击查看审计日志;2.系统产生并显示审计日志。 |
3.领域模型设计
3.1.实体关系与属性
(1)实体及属性
| 实体 | 属性 |
|---|---|
| 合同 | 有效期、条款 |
| 项目 | 时间、名称、内容、发布者 |
| 时间表 | 日期、时分、安排 |
| 客户表 | 姓名、年龄、性别、联系方式、诚信认证 |
| 自由职业者表 | 姓名、工号、年龄、性别、服务类型、联系方式 |
(2)实体间联系
- 自由职业者制作时间表,因此自由职业者与时间表应该是一一对应的关系,则自由职业者表与时间表对应数量关系为1:1;
- 自由职业者可以同时实行多个项目,因此两者数量关系为1:n;
- 自由职业者可以同时签署多个合同,因此两者数量关系为1:n;
- 一个自由职业者可以与多个客户建立合作关系,而相反,一个客户也可以与多个自由职业者建立合作关系,因此二者数量关系为n:m;
- 客户可以参考多个自由职业者的时间表,因此两者数量关系为1:n;
- 客户可以发布多个项目,因此两者数量关系为1:n;
- 客户可以同时签署多个合同,两者数量关系为1:n;
- 一个合同对应一个项目,二者数量关系为1:1。
(3)实体联系图
项目时间安排表
| 计划名称 | 预计时间 | 开始时间 | 结束时间 | 矫正时间 | 矫正开始时间 | 矫正结束时间 |
|---|---|---|---|---|---|---|
| 需求获取 | 3 | 2022/5/1 | 2022/5/3 | 7 | 2022/5/1 | 2022/5/7 |
| 需求分析 | 3 | 2022/5/4 | 2022/5/6 | 2 | 2022/5/8 | 2022/5/9 |
| 概要设计 | 2 | 2022/5/7 | 2022/5/9 | 3 | 2022/5/10 | 2022/5/12 |
| 详细设计 | 4 | 2022/5/10 | 2022/5/13 | 6 | 2022/5/13 | 2022/5/18 |
| 编码 | 5 | 2022/5/14 | 2022/5/18 | 10 | 2022/5/19 | 2022/5/28 |
| 测试 | 2 | 2022/5/19 | 2022/5/20 | 10 | 2022/5/29 | 2022/6/7 |
- 矫正思路:在需求分析及系统的设计阶段花费更长的时间,以确保后期项目开发、模块实现等工作能够更为高效。在需求分析阶段增加50%的工作时间,后期实现工作预计效率会增加25%,并且预计后期各个极端所需成本会有所降低。
相关链接及截图
github issue连接🔗https://github.com/qwertyuiopasydq/abr/issues1.
2.随笔编辑


浙公网安备 33010602011771号