作业3:综合系统开发----需求分析


这个作业属于哪个课程 2022软件代码开发技术
这个作业要求在哪里 作业2要求
这个作业的目标 1.学会结合领域驱动设计方法、软件设计模式等知识运用UML进行建模
2.熟练Github的使用
3.提升需求分析能力

1.项目背景

软件开发需求:

一家公司提供服务出租,自身有一些员工,另外还有很多自由职业者作为服务商存在。公司目前使用Excel工作表来管理他们的客户(自由职业者),时间表等。Excel解决方案无法很好地进行扩展。它无法应对多用户使用的场景,也不提供安全和审计日志。因此他们决定构建一个新的基于Web的解决方案。以下是核心要求:
1.搜索自由职业者分类的功能
2.用于存储联系自由职业者的不同渠道的解决方案
3.搜索项目分类的功能
4.搜索客户分类的功能
5.维护合同中自由职业者的时间表

2.需求规格说明书

数据需求:

  1. 输入数据
  • 客户信息:id、姓名、性别、电话号码、邮箱、信誉等级、需要服务类型
  • 自由职业者信息:id、姓名、性别、电话号码、邮箱、信誉等级、服务类型
  • 合同表:id、项目描述、自由职业者id、客户id、项目类型、进度、金额
  • 时间表:id、自由职业者id、可服务时间
  1. 存储数据:
  • 审计信息:操作者id、操作内容、操作结果
  1. 输出数据
  • 操作结果:操作者id,操作内容,操作结果

其他需求:

性能需求:

  • 系统兼容性好,能够在包括移动端和PC端,安卓和苹果端的不同平台上运行。
  • 能在操作系统Windows10,浏览器:Microsoft Edge浏览器、Chrome浏览器等主流浏览器顺利运行。

安全需求:

  • 系统安全性好,能够保证不被病毒入侵。
  • 系统抗压力能力强,能够支持十万级的用户同时使用。
  • 系统稳定性强,能在网络强度较弱的时候保持功能正常。

用例分析:

客户
SF1:注册登录功能
SF2:发布项目
SF3:联系自由职业者
SF4:搜索自由职业者及种类
SF5:签订合同
自由职业者
SF6:注册登录功能
SF7:搜索项目及种类
SF8:编辑时间表
SF9:搜索客户及种类
SF10:签订合同
管理员
SF11:管理客户、自由职业者信息
SF12:项目分类
SF13:客户分类
SF14:查看管理合同

用例图:

领取驱动设计

领域驱动架构:

定义领域对象:

客户:customer
自由职业者:freelancer
管理员:administrator
合同:project
时间表:schedule

领域模型

结构模块图

项目时间安排表

计划名称 开始时间 预计时间 结束时间 矫正时间
需求分析 2022.4.7 11天 2022.4.18 6天
文档编写 2022.4.19 6天 2022.4.25 1天
功能开发 2022.4.25 30天 2022.5.25 15天
软件测试 2022.5.25 4天 2022.5.29 7天
项目维护 2022.5.30 18天 2022.6.18 10天
矫正方法:关键路径法(CPM),其工作原理是:为每个最小任务单位计算工期、定义最早开始和结束日期、最迟开始和结束日期、按照活动的关系形成顺序的网络逻辑图,找出必须的最长的路径,即为关键路径。

github链接

issue截图

相关