[项目管理]-第一章:绪论

1.软件的定义及特征
2.软件危机产生的原因
3.软件过程 、软件过程能力 、软件过程性能的定义
4.CMM定义及5个成熟度级别的主要特征
5.软件过程的可视性、过程能力和性能预测与成熟度之间的关系
6.KPA定义及结构
7.KPA的共同特点包含5点内容
8.CMM每个成熟度等级的KPA及其子目标

1 软件的定义及特征

软件的定义:

是使计算机能够工作的指令集合和相应的数据结构和文档,是一种产品,将计算机的硬件能力发挥出来的一种工具,是传递信息的一种工具,对信息的处理手段。

软件的特征:
  1. 软件是一种逻辑元素,而不是物理元素;
  2. 软件是开发出来的,而不是用传统的方法制造出来的;
  3. 软件不会被用坏,一般产品的失败概率都遵循浴盆曲线;
  4. 工业界已经是标准化装配时代,但软件还是定制时代;
  5. 创新性和人为因素更高。

2 软件危机产生的原因

  1. 用户不易准确描述对软件的需求,经常存在二义性,遗漏甚至错误
  2. 大型软件往往需要成百上千人的合作,由于软件系统结构复杂,如何有效组织管理、充分发挥团队作用就成为软件开发成功的关键。
  3. 缺乏有效的软件开发方法和工具的支持,过分依靠程序设计在开发中的技巧和创造性,加剧了软件产品的个性化。开发过程没有统一、规范的方法论指导,文档资料不齐全。
  4. 缺乏软件开发经验及相关数据积累,无法准确估计经费和进度,导致经费严重超支,完成期限一拖再拖。
  5. 忽视测试阶段的工作,提交的产品质量差。

根源总结

  • 逻辑产品,不同于物理产品
  • 复杂性高
    逻辑产品,逻辑复杂性,远高于硬件复杂性
    软件的复杂性随规模呈指数级上升
  • 规模大
    应用扩大,代码量仍在不断膨胀
  • 影响软件生产率和质量的因素比较复杂
    人员的能力和水平
    团队合作
  • 缺乏有效、系统原理、原则、方法和工具的指导和辅助

3 软件过程 、软件过程能力 、软件过程性能的定义

软件过程

人们用于开发和维护软件及其相关过程的一系列活动,包括软件工程活动和软件管理活动。

软件过程能力

描述(开发组织或项目组)遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件项目而言。

软件过程性能

表示(开发组织或项目组)遵循其软件过程所得到的实际结果。

软件过程性能描述的是已得到的实际结果,而软件过程能力则描述的是最可能的预期结果,它既可对整个软件开发组织而言,也可对一个特定项目而言。

4 CMM定义及5个成熟度级别的主要特征

CMM定义

CMM — Capability Maturity Model for Software. 软件能力成熟度模型是一种描述有效软件过程的关键元素的框架,CMM描述一条从无序的不成熟的过程到成熟的、有纪律的过程的进化的改进途径。

CMM体系描述了在不同成熟度级别下的软件过程的关键因素。

CMM包括对软件开发和维护进行策划、工程化和管理的实践。遵循这些关键实践,就能改进组织在实现有关成本、进度、功能和产品质量等目标上的能力。

成熟度级别

1级 初始级 (Initial)
2级 可重复级 (Repeatable)
3级 已定义级 (Defined)
4级 已管理级 (Managed)
5级 优化级 (Optimizing)

主要特征

1. 初始级特征:
软件过程的特点是无秩序的,偶尔甚至是混乱的,几乎没有什么过程是经过定义的,成功依赖于个人努力。

2.可重复级特征:
已建立基本的项目管理过程去跟踪成本进度和功能,必要的过程纪律已经就位,使具有类似应用的项目能重复以前的成功。

3.已定义级特征:
管理活动和工程活动两方面的软件过程均已文档化、标准化,并集成到组织的标准软件过程中,全部项目均采用供开发和维护软件用的组织标准软件过程的一个经批准的普及剪裁版本。

4.已管理级特征:
已采集详细的有关软件过程和产品质量的度量,无论软件过程还是产品均得到定量了解和控制。

5.优化级特征:
利用来自过程和来自新思想、新技术的先导性实验的定量反馈信息,使持续过程的改进成为可能。

5 软件过程的可视性、过程能力和性能预测与成熟度之间的关系

软件过程的可视性:

等级1 ――― 一个黑盒
等级2 ――― 项目里程碑处具有管理可视性
等级3 ――― 盒子的内部结构可视
等级4 ――― 软件过程被配备上度量,并得到定量地控制
等级5 ――― 对过程不断改进

过程能力和性能预测

随着成熟度增长,实际结果相对预定目标结果的偏差范围减小。
随着成熟度增加,预定目标结果得到改善。

在这里插入图片描述

6 KPA定义及结构

什么是关键过程区域(Key Process Area,KPA)?

每个关键过程区域识别出一串相关活动,当这些活动全部完成时,能达到一组对增强过程能力至关重要的目标 。

KPA的特性:
  1. 每个KPA识别出一串相关活动。
  2. 每个KPA定义在单个成熟度等级上。
  3. KPA鉴别出为达到某一成熟度等级所必须解决的问题。
KPA的结构:

目标
共同特点:

  1. 执行约定
  2. 执行能力
  3. 执行活动
  4. 度量和分析
  5. 验证实施
KPA的目标(Goal):
  • 目标概括一个KPA中的所有关键实践,并能用于确定一个组织或项目是否已有效地实施此KPA。
  • 目标表示每个关键过程域的范围、边界和意图。

7 KPA的共同特点包含5点内容

  1. 执行约定(Commitment to Perform) :
    企业为了建立和实施相应KPA所必须采取的行动;
  2. 执行能力(Ability to Perform) :
    描述了为了某软件过程得以始终如一地执行必须在项目或企业中存在的先决条件,是企业实施KPA的前提条件;
  3. 执行活动(Activities Performed) :
    描述了执行KPA所需求的必要行动、任务和步骤;其是唯一一项与项目执行相关的属性。
  4. 度量和分析(Measurement and Analysis) :
    关注于这个关键过程域的活动需要做的度量和度量分析要求。
  5. 验证实施(Verifying Implementation) :
    是验证执行活动是否与建立的过程一致,核实以确保所实施的过程是按照原定的计划以及达到其目标,着眼于保证过程的实现要通过独立的个人和高级管理人员验证。

8 CMM每个成熟度等级的KPA及其子目标

CMM共有18个KPA,其中:
2级 ―― 6个
3级 ―― 7个
4级 ―― 2个
5级 ―― 3个
在这里插入图片描述

等级2的KPA:

需求管理RM(Requirements Management)

  • 软件需求受控制,为软件工程和管理活动建立基线
  • 软件计划、产品和活动与需求一致

软件项目计划SPP(Software Project Planning)

  • 项目活动和约定是有计划的并成文归档
  • 对项目的估计要文档化,便于项目计划和跟踪时使用
  • 受制约的组和个人要认同于项目的约定

软件项目跟踪和监督SPTO(Software Project Tracking and Oversight)

  • 实际的结果或性能要按照软件计划进行跟踪
  • 当实际的结果或性能严重偏离计划时,要采取措施进行纠正
  • 受影响的组和个人要认同对约定的更改

软件子合同管理SSM (Software Subcontract Management)

  • 主方选择合适的子方
  • 主方和子方认同他们的约定
  • 主方和子方在项目进行期间保持联系
  • 主方根据约定跟踪子方的实际性能

软件质量保证SQA(Software Quality Assurance)

  • SQA活动纳入计划
  • 软件产品和活动与采用的标准、规程和需求间的一致性被客观地验证
  • 受影响的组和个人了解SQA活动的结果
  • 项目中无法解决的有意见分歧的事宜,通知高级管理部门解决

软件配置管理SCM(Software Configuration Management)

  • SCM活动纳入计划
  • 选定的软件工作产品被标识受控制和便于利用
  • 被标识的软件工作产品的更改是可控的
  • 受影响的组和个人知道软件基线的状态和内容
等级3的KPA:

组织过程焦点OPF (organization process focus)

  • 软件过程开发和改进活动在机构内保持一致;
  • 所使用的软件过程的强弱之处被确定;
  • 机构级的过程开发和改进活动纳入计划。

组织过程定义OPD(organization process definition)

  • 开发并维护机构的一个标准软件过程;
  • 与软件项目使用机构标准软件过程相关的信息被收集、评审并可用。

培训大纲TP(training program)

  • 培训活动纳入计划;
  • 提供关于执行软件管理和技术的人员所需的开发技巧和知识的培训;
  • 软件工程组和软件相关组里每个人都接受了执行工作所需的培训。

集成软件管理ISM (integrated software management )

  • 项目定义的软件过程是机构标准软件过程的裁剪版本;
  • 依据项目定义的软件过程来计划和管理项目。

软件产品工程SPE(software product engineering)

  • 软件工程任务被定义、集成并遵照执行,以生产软件;
  • 软件工作产品相互间保持一致。

组间协调IC(intergroup coordination)

  • 所有受影响的组认同客户需求;
  • 所有的组认同不同组间的约定;
  • 各组识别、跟踪和解决组间问题。

同行评审PR( peer reviews)

  • 同行评审活动纳入计划;
  • 软件工作产品的缺陷被识别和清除。
等级4的KPA:

定量过程管理QPM (quantitative process management)

  • 将量化过程管理活动纳入计划;
  • 项目定义的软件过程的过程性能得到量化控制;
  • 机构标准软件过程的过程能力以量化项值表示。

软件质量管理SQM (software quality management)

  • 将项目的软件质量管理活动纳入计划;
  • 对软件产品质量及其优先级的可测目标有定义;
  • 软件产品质量目标的实际进步得到量化管理。
等级5的KPA:

缺陷预防DP (defect prevention)

  • 将缺陷预防活动纳入计划;
  • 找出和识别引起缺陷的共同原因;
  • 引起缺陷的共同原因被赋予优先次序并被系统地清除。

技术改革管理TCM(technology change management )

  • 将技术更新纳入计划;
  • 新技术被评估以决定对质量和生产率的影响;
  • 合适的新技术被引入到机构内正常使用。

过程更改管理 PCM(process change management )

  • 将待续地过程改进纳入计划;
  • 机构软件过程改进活动的参加者遍及全部机构;
  • 机构软件过程和项目定义的软件过程得到持续地改进

CMM的评估方法

软件过程评估:

用于确定一个组织的当前软件过程的状态,确定组织所面临的具有高优先级的与软件过程有关的问题,和获得组织对软件过程改进的支持。

软件过程评价:

用于识别合格的能完成软件工作的承包商或者监控现有软件工作中所应用的软件过程的状态

过程评估的方法:
成熟度问卷
文档
面谈

本章重点回顾

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值