1. 业务需求
1.1 应用背景
开发软件项目进度计划总是那么不准确,延期经常出现,跟可恨的是甚至无法给出一个相对比较明确的延迟时间。很大
因素在于分配给开发人员的完成时间与开发人员的实际完成时间有一定的偏差。
1.2 业务机遇
我们可以开发一款psp软件,即个人软件过程软件。此软件能够对所有的工作过程进行时间的记录,经过一定的时间之后,积累了许多产能数据(经验数据)。根据不同开发人员不同任务下的产能数据,能够较准确的预测开发时间。
1.3 业务目标
帮助软件工程师在个人的基础上运用过程的原则,借助于PSP提供的一些度量和分析工具,了解自己的技能水平,控制和管理自己的工作方式,使自己日常工作的评估、计划和预测更加准确、更加有效,进而改进个人的工作表现,提高个人的工作质量和产量,积极而有效地参与高级管理人员和过程人员推动的组织范围的软件工程过程改进。
1.4 业务风险
在实际中,要执行好时间管理也的确不容易,开发人员有时候会忘记记录自己的开发时间。
2 项目前景
2.1 前景概述
为开发人员提供一个psp工具,记录开发人员完成某项任务的产能数据。开发人员再完成类似任务时,能够准确的估算自己的开发时间,从而降低了软件开发风险。
2.2主要特性
编号 |
特性 |
|
FEAT01 |
研发经理能够创建项目、指定或修改项目经理、删除尚未分配工作任务的项目 |
|
FEAT02 |
项目经理可以对项目设置工作包,工作包允许多级嵌套,它只用来组织工作任务 |
|
FEAT03 |
项目经理可以为开发人员指派工作任务,工作任务属于特定的工作包 |
|
FEAT04 |
项目经理在分配工作任务时,能够查阅开发人员的日程安排表,可以按开发人员查询, 也可按日程查询 |
|
FEAT05 |
开发人员接到任务时,通过系统填写计划时间(计划开始时间和计划结束时间), 项目经理确认后,更新日程安排表 |
|
FEAT06 |
开发人员可以查询相近工作任务的历史数据(估算数据、实际数据) |
|
FEAT07 |
开发人员任务执行将超计划时,应报告项目经理,项目经理通过系统更新其日程表 |
|
FEAT08 |
当任务完成之后,项目经理负责Close任务,并填入实际的完成情况(KLOC、实际结束时间) |
|
FEAT09 |
开发人员可以随时记录自己的时间,提供“开始计时”、“暂停计时”、“停止计时”,在停止时, 填入任务编号(在线则选择)、工作关键字(以逗号分隔的多个),自动生成开始时间、 暂停时间、停止时间、总时长、有效时长(总时长-中断时长) |
|
FEAT10 |
开发人员可以根据任务编号、关键字、起止时间进行分类组合查询与统计 |
|
FEAT11 |
时间记录程序会自动连接服务器,完成时间日志上传的工作,未能连接服务器,则在本机暂存 时间日志 |
|
FEAT12 |
项目经理可以按项目、任务、关键字统计实际工作时长、产能 |
|
FEAT13 |
研发经理及管理层可以按个人、任务、项目、关键字查看工作时长、统计产能 |
|
FEAT14 |
自动检测程序员当天的产能并保存。 |
2.3 假设与依赖
开发人员能够按时地、准确地、客观地填写时间日志表。
3. 项目范围
编号 |
版本1 |
版本2 |
|
FEAT01 |
实现 |
实现 |
|
FEAT02 |
实现 |
实现 |
|
FEAT03 |
实现 |
实现 |
|
FEAT04 |
实现 |
实现 |
|
FEAT05 |
实现 |
实现 |
|
FEAT06 |
实现 |
实现 |
|
FEAT07 |
实现 |
实现 |
|
FEAT08 |
实现 |
实现 |
|
FEAT09 |
实现 |
实现 |
|
FEAT10 |
实现 |
实现 |
|
FEAT11 |
实现 |
实现 |
|
FEAT12 |
实现 |
实现 |
|
FEAT13 |
实现 |
实现 |
|
FEAT14 |
不实现 |
实现 |
4. 项目环境
4.1 操作环境
参与者一:开发人员
1.登录系统;
2.填写计划时间(1开始时间 2结束时间)--------项目经理确认后系统自动更新日程安排;
3.查询历史任务数据(1估算数据 2实际数据) 查询条件可以:1)任务编号 2)关键字 3)起止时间 以上三个条件可以分类组合进行查询与统计;
4.记录自己的开发时间( 1开始计时 2暂停计时 3停止计时 )----------系统生成记录时间日志
参与者二:项目经理
1.登陆系统
2.设置工作包
3.给开发人员指派任务(属于特定工作包)
4.查询开发人员的日程安排 查询条件可以: 1)开发人员 2)日程
5.更新开发人员的日程表(系统在开发人员执行将超时时报告项目经理)
6.任务完成后,close任务
7.填写实际完成情况(1 kloc 2 实际结束时间)
8.根据项目、任务、关键字统计实际工作时长、产能
参与者三:研发经理
1.登录系统
2.创建项目
3.管理项目经理(指定、修改项目经理)
4.删除尚未分配工作任务的项目
5.根据个人、任务、项目、关键字查看工作时长、统计产能
参与者四:管理层
1.根据个人、任务、项目、关键字查看工作时长、统计产能
4.2 涉众
这个系统中的主要涉众如下表:
涉众 |
特点 |
开发人员 |
掌握自己的进度,但估算可能出错 |
项目经理 |
部署项目结构与任务,掌握整体进度,统筹兼顾 |
4.3 项目属性
具体项目属性如下表:
属性 |
驱动因素 |
约束因素 |
可调整因素 |
特性 |
各个版本的功能必须完全可操作。 |
在最终版本中进行调整。 |
|
质量 |
用户满意度必须达到85%;必须通过全部的安全机制检查,系统能够在win7,winxp等操作系统下稳定工作。 |
在后续版本中完善功能提高用户满意度 |
|
成本 |
项目经理 |
必须控制开发费用在额定范围内 |
允许费用超过的最大额度不超过总经费的10% |
进度 |
项目经理 |
必须保证开发时间在规定时限范围内 |
开发时间最长不得超过规定时间2天 |
人员 |
团队规模包括一个项目经理,两名开发人员,和一名测试人员 |
人员数目按照规定严格控制 |
如果计划不够,可以适当增加人员务必保证在规定时间内完成项目。 |
词汇表:
psp,业务需求,项目前景,项目范围,项目环境。
参考资料:
需求工程—软件建模与分析
需求工程文档规范