第二部分软件项目的管理 我们主要考虑计划、组织、监管和控制 软件项目所需要的管理技术。在这一部分我 们主要解决下列问题: (1)在一个软件项目中如何管理软件过程和过 程指导下的项目? (2)什么是软件度量?如何使用它们管理软件 过程和过程指导下的项目? (3)什么度量能够辅助管理者评估开发的产品 质量以及使用的过程的有效性? (4)一个软件项目组如何对工作量、成本和项 目时间进行可靠的评估?
第二部分 软件项目的管理 我们主要考虑计划、组织、监管和控制 软件项目所需要的管理技术。在这一部分我 们主要解决下列问题: (1)在一个软件项目中如何管理软件过程和过 程指导下的项目? (2)什么是软件度量?如何使用它们管理软件 过程和过程指导下的项目? (3)什么度量能够辅助管理者评估开发的产品 质量以及使用的过程的有效性? (4)一个软件项目组如何对工作量、成本和项 目时间进行可靠的评估?
第二部分软件项目的管理 (5)一个组织何时应该开发软件?何时 应该获取软件?何时应该请求外援? (6)如何评估风险? (7)如何创建一个项目实施进度计划? (8)什么是软件质量保证?如何使用他 作为项目控制杌制? (9)为什么正式的技术复审那么重要?
第二部分 软件项目的管理 (5)一个组织何时应该开发软件?何时 应该获取软件?何时应该请求外援? (6)如何评估风险? (7)如何创建一个项目实施进度计划? (8)什么是软件质量保证?如何使用他 作为项目控制机制? (9)为什么正式的技术复审那么重要?
第三章项目管理的概念 许多项目管理者,在根本不可能完成的最 后期限下苦苦挣扎。系统交付后,又花许多 时间去维护该系统 原因:项目管理太弱。 3.1管理的范围 有效的项目管理集中于3个P上:人员 ( People)、问题( Problem)和过程 ( Process)。其中人员是第一位的。 软件工程是人的智力密集的劳动,忽视了 这一点就不可能成功?
第三章 项目管理的概念 许多项目管理者,在根本不可能完成的最 后期限下苦苦挣扎。系统交付后,又花许多 时间去维护该系统。 原因:项目管理太弱。 3.1 管理的范围 有效的项目管理集中于3个P上:人员 (People)、问题(Problem)和过程 (Process)。其中人员是第一位的。 软件工程是人的智力密集的劳动,忽视了 这一点就不可能成功?
第三章项目管理的概念 如果对问题理解有误,那么再好的解决方案也是无用的 忽视过程也会给项目带来额外的风险。 31.1人员 软件工程研究所专门开发了一个人员管理能力成熟度 模型( PM-CMM),旨在“通过吸引、培养、鼓励和 留驻改善其软件开发能力所需要的人才增强软件组织 承担日益复杂的应用程序开发的能力 人员管理成熟度模型为软件人员定义了以下的关键实践 区域:招募、选择、业绩管理、培训、报酬、专业发 展、组织和工作计划、以及团队精神/企业文化培养
第三章 项目管理的概念 如果对问题理解有误,那么再好的解决方案也是无用的。 忽视过程也会给项目带来额外的风险。 3.1.1 人员 软件工程研究所专门开发了一个人员管理能力成熟度 模型(PM-CMM),旨在“通过吸引、培养、鼓励和 留驻改善其软件开发能力所需要的人才增强软件组织 承担日益复杂的应用程序开发的能力。” 人员管理成熟度模型为软件人员定义了以下的关键实践 区域:招募、选择、业绩管理、培训、报酬、专业发 展、组织和工作计划、以及团队精神/企业文化培养
第三章项目管理的概念 3.12问题 在项目实施以前,应该首先明确该项目的 目的和范围,考虑可选的解决方案。定义技 术和管理的约東。没有这些信息,就不能进 行合理的成本估算、有效的风险评估和进彳 适当的项目任务划分。根据产品的最后交付 期限、预算的限制、可用的人员、技术接口 及各种其他因素,给出项目的约束 3.1.3过程
第三章 项目管理的概念 3.1.2 问题 在项目实施以前,应该首先明确该项目的 目的和范围,考虑可选的解决方案。定义技 术和管理的约束。没有这些信息,就不能进 行合理的成本估算、有效的风险评估和进行 适当的项目任务划分。根据产品的最后交付 期限、预算的限制、可用的人员、技术接口 及各种其他因素,给出项目的约束。 3.1.3 过程
第三章项目管理的概念 软件过程提供了一个框架,在这个框架下 可以建立一个软件开发的综合计划。软件项 目是由若干个不同任务集合组成的,每一个 集合都是由任务、里程碑、交付物以及质量 保证点组成。 32人员 个成功的软件项目中,最成功的因素是人 ≥但事实上一些公司的行为与说话不符。常常认 为人员是不成问题的
第三章 项目管理的概念 软件过程提供了一个框架,在这个框架下 可以建立一个软件开发的综合计划。软件项 目是由若干个不同任务集合组成的,每一个 集合都是由任务、里程碑、交付物以及质量 保证点组成。 3.2 人员 一个成功的软件项目中,最成功的因素是人。 但事实上一些公司的行为与说话不符。常常认 为人员是不成问题的
第三章项目管理的概念 32.1项目参与者 参与软件过程的人员可以分为五类: (1)高级管理者:负责确定商业问题。这些问 题往往对项目产生很大影响。 (2)项目管理者:必须计划、刺激、组织和控 制软件开发人员。 (3)开发人员:负责开发一个产品或应用软件 所需要的专门技术人员 (4)客户:负责说明带开发软件的需求的人员。 (5)最终用户:最终用户是直接与软件进行交 互的人
第三章 项目管理的概念 3.2.1 项目参与者 参与软件过程的人员可以分为五类: (1)高级管理者:负责确定商业问题。这些问 题往往对项目产生很大影响。 (2)项目管理者:必须计划、刺激、组织和控 制软件开发人员。 (3)开发人员:负责开发一个产品或应用软件 所需要的专门技术人员。 (4)客户:负责说明带开发软件的需求的人员。 (5)最终用户:最终用户是直接与软件进行交 互的人
第三章项目管理的概念 322项目负责人 项目管理是集中于人的活动,一个项目负责 人应具备什么素质。 领导能力模型(MOI): (1)刺激( Motivate):鼓励软件开发人员发 挥其最大能力的一种能力。 (2)组织( Organization):融合已有的过程的 种能力。 (3)创新( Innovation):鼓励人们去创造,并 感到有创造性的一种能力
第三章 项目管理的概念 3.2.2 项目负责人 项目管理是集中于人的活动,一个项目负责 人应具备什么素质。 领导能力模型(MOI): (1)刺激(Motivate):鼓励软件开发人员发 挥其最大能力的一种能力。 (2)组织(Organization):融合已有的过程的 一种能力。 (3)创新(Innovation):鼓励人们去创造,并 感到有创造性的一种能力
第三章项目管理的概念 成功的项目负责人应采用一种解决问题的 管理风格。让每一位员工知道质量很重要, 不能妥协 32.3软件项目组 个项目需要n个人工作k年,那么这个项目 可有若干人力资源分配方案。 (1)n个人被分配来完成m个不同的功能,一般 而言,没有合作发生。协调是管理者的事情。 (2)n个人被分配来完成m个不同的功能 (m<n),建立非正式的小组,指定一个专门 的小组负责人小组之间的协调由专门的软件 管理老进行
第三章 项目管理的概念 成功的项目负责人应采用一种解决问题的 管理风格。让每一位员工知道质量很重要, 不能妥协。 3.2.3 软件项目组 一个项目需要n个人工作k年,那么这个项目 可有若干人力资源分配方案。 (1)n个人被分配来完成m个不同的功能,一般 而言,没有合作发生。协调是管理者的事情。 (2) n个人被分配来完成m个不同的功能 (m<n),建立非正式的小组,指定一个专门 的小组负责人小组之间的协调由专门的软件 管理者进行
第三章项目管理的概念 (3)n个人被分成t个小组,每一个小组完 成一个或多个功能任务,每一个小组有 个特定的结构,该结构是为同一个项 目的所有小组定义的,协调工作由小组 和软件项目管理者共同控制 每一种方法都有其优缺点,但正式 的小组的划分是效率最高的
第三章 项目管理的概念 (3)n个人被分成t个小组,每一个小组完 成一个或多个功能任务,每一个小组有 一个特定的结构,该结构是为同一个项 目的所有小组定义的,协调工作由小组 和软件项目管理者共同控制。 每一种方法都有其优缺点,但正式 的小组的划分是效率最高的