作业四:需求改进&系统设计
这个作业属于哪个课程 | <班级的链接> |
---|---|
这个作业要求在哪里 | <作业要求的链接> |
这个作业的目标 | 1、对作业三的需求进行改进完善 |
2、完成系统设计 | |
3、学习DDD战略设计 |
一、需求改进
用户可以使用系统注册、登录、修改密码的功能,并通过身份验证识别用户身份。
公司管理员工可以使用系统对自由职业者的信息、项目信息、时间表进行增删改查。
自由职业者可以使用系统对自己的时间表进行增删改查。
自由职业者可以使用系统发布项目、对已发布项目进行信息的修改删除查询、删除已发布项目。
自由职业者可以使用系统查询、签署合同。
自由职业者可以使用系统查询和自己签署有合同的客户的信息。
客户可以使用系统通过关键字搜索所有符合的项目。
客户可以使用系统查看合同、签署合同、查询已签署合同。
客户可以使用系统查看到和自己签署有合同的自由职业者信息。
二、系统设计
DDD战略设计的几个核心概念:领域、子域、限界上下文、架构分层
(1)一个好的分层式结构,可以使得开发人员的更加高效的开发。利用领域驱动设计中的分层等战略设计,划分各个层次;定义好各层次之间的接口(运用依赖倒置原则)。
(2)领域划分成内聚性高的几个子领域,给出每个子领域的限界上下文。
(3)定义好实体和值对象
(4)定义好领域服务、领域应用
领域
划分为以下几个领域
- 服务商领域:即服务方,负责实现与自由职业者有关的功能
- 客户领域:即需求方,负责实现与普通用户有关的功能
- 管理员领域:管理系统,负责实现与管理员有关的功能
- 通用权限领域:所有身份均拥有的功能的集合
- 系统领域:系统基础功能的集合
子域
- 自由职业者领域
- 客户领域
- 管理员 领域
- 系统领域
限界上下文
- 服务商任务子领域:实现服务商查询任务,接受任务,管理任务的功能
- 时间安排表子领域:实现服务商管理、维护自己的时间安排表的功能
- 客户任务子领域:实现客户查询任务,发布任务,管理任务的功能
- 合同子领域:实现合同签订、合同记录的功能
- 用户管理子领域:实现管理员管理用户的功能
- 系统管理子领域:实现管理员管理系统的功能,包括导出、审查、打印日志等功能
- 公共信息子领域:实现所有用户共同能查询的公共信息功能
- 账户子领域:实现所有用户对自己账号的创建,修改信息功能
- 前端子领域:实现系统界面的功能
- 后端子领域:实现前端与数据库的连接
- 数据库子领域:实现系统的数据库建立,增删查改功能
- 日志子领域:实现系统提供安全和审计日志的功能
三、代码开发安排表
任务 | 优先级 | 开发时间计划 | 测试计划 |
---|---|---|---|
建立数据库 | 高 | 5h | 1h |
用户界面开发 | 高 | 8h | 1h |
数据处理模块 | 高 | 8h | 1h |
注册模块 | 高 | 2h | 1h |
登录模块 | 高 | 2h | 1h |
修改密码模块 | 高 | 1h | 1h |
合同模块 | 高 | 4h | 1h |
项目模块 | 高 | 4h | 1h |
时间表模块 | 高 | 4h | 1h |
客户查询模块 | 高 | 2h | 1h |
自由职业者查询模块 | 高 | 2h | 1h |
安全模块 | 高 | 5h | 2h |
四、测试计划
1.测试范围
参考需求规格说明书的系统运行环境
2.测试目标
检查模块能否达到预期要求,排除实际使用过程中出现的bug
3.测试策略
测试人员:个人
测试环境:模拟运行环境
测试方式:
- 自动化测试
- 黑盒测试
- 白盒测试
- 中断测试
- 压力测试
测试任务 | 测试时间计划 |
---|---|
登录界面模块 | 2h |
公司管理员模块 | 2h |
自由职业者模块 | 2h |
客户模块 | 2h |
数据模块 | 2h |
安全模块 | 3h |
集成测试 | 8h |
系统测试 | 4h |
五、截图