◆产品: 进行项目计划之前,应该首先定义产品的目的和范围, 考虑可选的解决方案,标识技术和管理的约束。无这些 信息,就不可能进行合理的、准确的成本估算、有效的 风险评估、适当的项目任务划分、可管理的项目进度安 “目的”指从用户的角度标识出该产品的总体目标而 不考虑这些目标如何实现。 “范围”指标识出与产品相关的主要数据、功能和行 为 确定了目的和范围,就可以根据产品交付的期限、预 算的限制、可用的人员、技术接口及各种其他因素,选 择最好的解决方案途径 西安交通大学刘海岩
西安交通大学 刘海岩 6 ◆ 产品: 进行项目计划之前,应该首先定义产品的目的和范围, 考虑可选的解决方案,标识技术和管理的约束。无这些 信息,就不可能进行合理的、准确的成本估算、有效的 风险评估、适当的项目任务划分、可管理的项目进度安 排。 “目的”指从用户的角度标识出该产品的总体目标而 不考虑这些目标如何实现。 “范围”指标识出与产品相关的主要数据、功能和行 为。 确定了目的和范围,就可以根据产品交付的期限、预 算的限制、可用的人员、技术接口及各种其他因素,选 择最好的解决方案途径
◆过程 根据以下条件选择一个合适的软件过程模型: (1)开发人员及需要该产品的用户 (2)产品本身的特征 (3)项目组的工作环境 采用如下的框架活动集合: 客户交流、计划、风险分析、工程实施、构造及发 布、用户评估。这些活动可被修改以适应不同软件项目 的特征和项目组的需求。每个活动可被分解为更详细的 工作任务 如客户交流活动可能需要下列任务 西安交通大学刘海岩
西安交通大学 刘海岩 7 ◆ 过程 根据以下条件选择一个合适的软件过程模型: ⑴开发人员及需要该产品的用户 ⑵产品本身的特征 ⑶项目组的工作环境 采用如下的框架活动集合: 客户交流、计划、风险分析、工程实施、构造及发 布、用户评估。这些活动可被修改以适应不同软件项目 的特征和项目组的需求。每个活动可被分解为更详细的 工作任务。 如客户交流活动可能需要下列任务:
(1)列出需要澄清问题的清单 (2)安排与用户进行讨论的会议 (3)评审用户要求及范围的陈述 (4)研究推荐的解决方案 (5)为正式的会议准备工作文档 (6)共同制订能反映软件的数据、功能和行为特 征的规约,形成软件范围的文档 (7)评审文档 (8)根据需求修改文档 庇护性活动贯穿于整个过程。 西安交通大学刘海岩
西安交通大学 刘海岩 8 ⑴列出需要澄清问题的清单 ⑵安排与用户进行讨论的会议 ⑶评审用户要求及范围的陈述 ⑷研究推荐的解决方案 ⑸为正式的会议准备工作文档 ⑹共同制订能反映软件的数据、功能和行为特 征的规约,形成软件范围的文档 ⑺评审文档 ⑻根据需求修改文档 …… 庇护性活动贯穿于整个过程
◆项目 有计划的控制软件项目, Boehm提出了一种方法, 强调项目目标、里程碑、进度、责任、管理和技术方 法以及需要的资源,称之为WH原则。通过下面一系列 的提问和回答,可以导出项目的关键特征并产生项目计 划的大纲: (1)为什么(Why)该系统被开发?值得吗? (2)将做什么(What)?什么时候(When)做? 建立项目进度,标识关键的项目任务和里程碑 (3)某功能由谁(Who)负责?开发人员的角色和责任。 (4)哪里需要( Where)?客户、用户和其他投资者也有 责任 (5)工作将如何(How)进行?定义项目的管理和技术 策略。 (6)资源需要多少( How much)? 西安交通大学刘海岩
西安交通大学 刘海岩 9 ◆项目 有计划的控制软件项目,Boehm提出了一种方法, 强调项目目标、里程碑、进度、责任、管理和技术方 法以及需要的资源,称之为W 5H 2原则。通过下面一系列 的提问和回答,可以导出项目的关键特征并产生项目计 划的大纲: ⑴为什么(Why)该系统被开发?值得吗? ⑵将做什么(What)?什么时候(When)做? 建立项目进度,标识关键的项目任务和里程碑。 ⑶某功能由谁(Who)负责?开发人员的角色和责任。 ⑷哪里需要(Where)?客户、用户和其他投资者也有 责任。 ⑸工作将如何(How)进行?定义项目的管理和技术 策略。 ⑹资源需要多少(How much)?
软件项目管理中的主要元素及之间的关系 映射到 进度表 1 产生 任务 工作产品 分配到1 角色 分配到1「开发人员] 分配到1 小组 开发人员、小组、角色、任务、 工作产品、进度表(UM类图)之间的关系 西安交通大学刘海岩
西安交通大学 刘海岩 10 软件项目管理中的主要元素及之间的关系 开发人员、小组、角色、任务、 工作产品、进度表(UML类图)之间的关系