1、软件项目管理1谢谢观赏2019-9-14l软件过程与过程管理软件过程与过程管理lCMMI概述概述lCMMI的成熟度等级及其过程域的成熟度等级及其过程域lCMMI的应用的应用lPSP,TSP与与CMMIl敏捷软件开发方法敏捷软件开发方法2谢谢观赏2019-9-14l软件过程软件过程(Software Processes)是指软件开发是指软件开发人员开发和维护软件及相关产品(如项目计划、人员开发和维护软件及相关产品(如项目计划、设计文档、代码、测试用例和用户手册)的一设计文档、代码、测试用例和用户手册)的一套行为、方法、技术及变换过程。套行为、方法、技术及变换过程。l不能把软件过程简单地理解为软件
2、产品的开发不能把软件过程简单地理解为软件产品的开发流程。流程。3谢谢观赏2019-9-14l从大量项目实践中归纳总结出的行之有效的过从大量项目实践中归纳总结出的行之有效的过程称为程称为最佳实践最佳实践(Best Practices)。l软件过程管理软件过程管理就是对最佳实践进行有效的积累,就是对最佳实践进行有效的积累,形成可重复的软件过程,使最佳实践在组织范形成可重复的软件过程,使最佳实践在组织范围内共享。围内共享。 软件过程管理可将个人能力转变为企业的能力。软件过程管理可将个人能力转变为企业的能力。4谢谢观赏2019-9-14l软件过程管理的主要内容包括软件过程管理的主要内容包括过程定义过程
3、定义和和过程过程改进改进。w 过程定义是指对最佳实践进行总结,形成一过程定义是指对最佳实践进行总结,形成一套稳定的、可重复的软件过程。套稳定的、可重复的软件过程。w 过程改进是指根据实践中对软件过程的使用过程改进是指根据实践中对软件过程的使用情况,对软件过程中的偏差和不足之处进行情况,对软件过程中的偏差和不足之处进行不断优化。不断优化。5谢谢观赏2019-9-14l互相依赖,互相促进互相依赖,互相促进6谢谢观赏2019-9-14lCMMI( Capability Maturity Model Integration)即能力成熟度模型集成,由即能力成熟度模型集成,由CMM (Capability
4、 Maturity Model)发展而来,它最发展而来,它最早是应用于软件业的一个过程改进模型,为软早是应用于软件业的一个过程改进模型,为软件组织描述了从混乱的、不成熟的软件过程向件组织描述了从混乱的、不成熟的软件过程向成熟有序的软件过程进行改进的一条途径。后成熟有序的软件过程进行改进的一条途径。后来随着应用的推广和模型本身的发展,来随着应用的推广和模型本身的发展,CMMI逐渐演化成为一个被广泛应用的综合性过程改逐渐演化成为一个被广泛应用的综合性过程改进模型。进模型。7谢谢观赏2019-9-14l1991年,美国卡耐基梅隆大学软件工程研究所年,美国卡耐基梅隆大学软件工程研究所(SEI)推出了能
5、力成熟度模型)推出了能力成熟度模型CMM,CMM的作用各主要有两方面:的作用各主要有两方面:w 为软件客户提供评价软件开发商能力的方法。为软件客户提供评价软件开发商能力的方法。w 帮助软件开发商改进其软件过程,提高成熟帮助软件开发商改进其软件过程,提高成熟度。度。8谢谢观赏2019-9-14l随着随着CMM在软件界应用的不断推广,其它相在软件界应用的不断推广,其它相关学科和领域也采用它的模式,开发出了许多关学科和领域也采用它的模式,开发出了许多类似于类似于CMM的模型。的模型。w SE-CMM (System Engineering CMM) 系系统工程统工程CMM,应用于系统工程管理。,应用
6、于系统工程管理。w SA-CMM (Software Acquisition CMM) 软软件获取件获取CMM,应用于软件获取(采购)方,应用于软件获取(采购)方的能力成熟度模型。的能力成熟度模型。9谢谢观赏2019-9-14w IPD-CMM (Integrated systems product Development CMM): 集成系统产品开发集成系统产品开发CMM,应用于集成系统产品的开发管理。,应用于集成系统产品的开发管理。w P-CMM (People CMM):人员能力成熟度:人员能力成熟度模型,应用于人力资源管理。模型,应用于人力资源管理。l为了以示区别,常把为了以示区别,常
7、把CMM叫做叫做SW-CMM。l同一个组织可能会应用多个过程改进模型,但同一个组织可能会应用多个过程改进模型,但多个过程改进模型的并存可能会引起冲突和混多个过程改进模型的并存可能会引起冲突和混淆。淆。10谢谢观赏2019-9-14lCMMI为工业界和政府部门提供了一个集成的为工业界和政府部门提供了一个集成的能力成熟度模型产品集,消除了不同模型之间能力成熟度模型产品集,消除了不同模型之间的不一致和重复,降低了过程改进的成本。的不一致和重复,降低了过程改进的成本。lCMMI覆盖了软件工程、系统工程、集成产品覆盖了软件工程、系统工程、集成产品开发和系统采购,以更加系统和一致的框架来开发和系统采购,以
8、更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开指导组织改善软件过程,提高产品和服务的开发、获取和维护能力。发、获取和维护能力。lCMMI 1.0版于版于2000年发布,年发布,2002年又发布了年又发布了1.1版,版,2006年发布了年发布了1.2版。版。11谢谢观赏2019-9-14lCMMI是目前世界公认的软件产品进入国际市是目前世界公认的软件产品进入国际市场的通行证。一般来说,通过场的通行证。一般来说,通过CMMI认证的级认证的级别越高,就越容易获得用户的信任,在国内、别越高,就越容易获得用户的信任,在国内、国际市场上的竞争力也就越强。国际市场上的竞争力也就越强。l 20
9、00年年6月,国务院颁发了月,国务院颁发了鼓励软件产业和鼓励软件产业和集成电路产业发展若干政策集成电路产业发展若干政策,其中第,其中第17条中条中明确规定明确规定“鼓励软件出口型企业通过鼓励软件出口型企业通过CMM认认证,其费用通过中央外贸发展基金适当予以支证,其费用通过中央外贸发展基金适当予以支持持”。随后各省市、高新区、软件园都出台了。随后各省市、高新区、软件园都出台了对通过对通过CMM的企业给予资金奖励的制度。的企业给予资金奖励的制度。12谢谢观赏2019-9-14l软件过程成熟度指一个具体的软件过程被明确软件过程成熟度指一个具体的软件过程被明确和有效地定义、管理、度量、控制和实施的程和
10、有效地定义、管理、度量、控制和实施的程度。度。l软件组织成熟的过程是一个不断改进、循序渐软件组织成熟的过程是一个不断改进、循序渐进的过程,而不是通过革命性的革新快速实现进的过程,而不是通过革命性的革新快速实现的。的。13谢谢观赏2019-9-14不成熟的组织不成熟的组织成熟的组织成熟的组织软件过程一般在项目进行软件过程一般在项目进行中临时确定,有时确定了也中临时确定,有时确定了也不严格执行。不严格执行。建立了机构级的软件开发建立了机构级的软件开发和维护过程,软件人员按照计和维护过程,软件人员按照计划完成活动。划完成活动。被动地处理软件项目中的一些被动地处理软件项目中的一些突发事件。突发事件。具
11、有对软件项目的监控和主动具有对软件项目的监控和主动应对风险的能力。应对风险的能力。进度和经费预算估计得不准确,进度和经费预算估计得不准确,进度延期导致削减软件功能,进度延期导致削减软件功能,降低软件质量。降低软件质量。项目进度和预算是根据以往项项目进度和预算是根据以往项目取得的实践经验确定,比较目取得的实践经验确定,比较符合实际情况。符合实际情况。产品质量难以预测。产品质量难以预测。软件产品质量由质量保证部门软件产品质量由质量保证部门负责监控。负责监控。14谢谢观赏2019-9-14l初始级初始级:软件过程是无序的,有时甚至是混乱:软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取
12、决于个人努的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。力。管理是反应式的。 l已管理级已管理级:建立了基本的项目管理过程来跟踪:建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。律,能重复早先类似应用项目取得的成功经验。15谢谢观赏2019-9-14l已定义级已定义级:已将软件管理和工程两方面的过程:已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软过程。所有项目均使用经批准、剪
13、裁的标准软件过程来开发和维护软件。件过程来开发和维护软件。 l量化管理级量化管理级:分析软件过程和产品质量的详细:分析软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解度量数据,对软件过程和产品都有定量的理解与控制。管理活动有一个作出结论的客观依据,与控制。管理活动有一个作出结论的客观依据,能够在定量的范围内预测性能。能够在定量的范围内预测性能。16谢谢观赏2019-9-14l优化管理级优化管理级:过程的量化反馈和先进的新思想、:过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。新技术促使过程持续不断改进。 17谢谢观赏2019-9-14lCMMI是一个引导软件组织不断走
14、向成熟的过是一个引导软件组织不断走向成熟的过程模型。程模型。初始级初始级已管理级已管理级已定义级已定义级量化管理级量化管理级优化管理级优化管理级有纪律的过程有纪律的过程标准一致的过程标准一致的过程可预见的过程可预见的过程不断改进的过程不断改进的过程18谢谢观赏2019-9-14成熟度等级过程域1过程域2过程域n特定目标共性目标特定实践共性实践19谢谢观赏2019-9-14l每个成熟度等级包含若干个每个成熟度等级包含若干个关键过程域关键过程域(Key Key Process AreaProcess Area,KPAKPA)。)。lKPAKPA表示当软件组织改进软件过程时必须集中表示当软件组织改进
15、软件过程时必须集中精力解决的关键问题。精力解决的关键问题。l一个组织要想达到某个成熟度等级,必须满足一个组织要想达到某个成熟度等级,必须满足该等级(以及较低等级)包含的该等级(以及较低等级)包含的KPAKPA的所有要的所有要求,满足每个求,满足每个KPAKPA的所有目标。的所有目标。20谢谢观赏2019-9-14成熟度等级成熟度等级关键过程域关键过程域缩写词缩写词等级等级2:已:已管理级管理级需求管理需求管理REQM项目计划项目计划PP项目监督与控制项目监督与控制PMC供应商协议管理供应商协议管理SAM度量和分析度量和分析MA过程和产品质量保证过程和产品质量保证PPQA配置管理配置管理CM等级
16、等级3:已:已定义级定义级需求开发需求开发RD技术解决方案技术解决方案TS21谢谢观赏2019-9-14成熟度等级成熟度等级关键过程域关键过程域缩写词缩写词等级等级3:已:已定义级定义级产品集成产品集成PI验证验证VER确认确认VAl组织过程核心组织过程核心OPF组织过程定义组织过程定义OPD组织培训组织培训OD集成项目管理集成项目管理IPM风险管理风险管理RSKM决策分析与解决决策分析与解决DAR22谢谢观赏2019-9-14成熟度等级成熟度等级关键过程域关键过程域缩写词缩写词等级等级3:已定:已定义级义级集成供应商管理集成供应商管理ISM组织集成环境组织集成环境OEI集成团队集成团队IT等
17、级等级4:量化:量化管理级管理级组织过程性能组织过程性能OPP量化项目管理量化项目管理QPM等级等级5:优化:优化管理级管理级组织革新与部署组织革新与部署OID原因分析与解决原因分析与解决CAR23谢谢观赏2019-9-14l能力等级能力等级(Capability Level, CL)是指在一)是指在一个单独的过程域中执行的良好程度。个单独的过程域中执行的良好程度。lCMMI包括包括6个能力等级:个能力等级:w CL0,不完整级:过程域的一个或多个目标,不完整级:过程域的一个或多个目标没有被满足。没有被满足。w CL1,已执行级:过程通过转换可识别的输,已执行级:过程通过转换可识别的输入工作产
18、品,产生可识别的输出工作产品。入工作产品,产生可识别的输出工作产品。能实现过程域的特定目标。能实现过程域的特定目标。24谢谢观赏2019-9-14wCL2,已管理级:过程作为已管理的过程制度,已管理级:过程作为已管理的过程制度化。化。wCL3,已定义级:过程作为已定义的过程制度,已定义级:过程作为已定义的过程制度化。化。wCL4,量化管理级:过程作为量化管理的过程,量化管理级:过程作为量化管理的过程制度化。制度化。wCL5,优化级:过程作为优化的过程制度化。,优化级:过程作为优化的过程制度化。25谢谢观赏2019-9-14lCMMI指明该做什么,但没有指明如何做,它指明该做什么,但没有指明如何
19、做,它不是方法论,没有给出特定应用领域内的专门不是方法论,没有给出特定应用领域内的专门技术。技术。lCMMI是一个用于改进软件产品和管理过程的是一个用于改进软件产品和管理过程的结构化模型,但是仅描述软件过程的本质属性,结构化模型,但是仅描述软件过程的本质属性,并非涉及软件工程的所有问题。并非涉及软件工程的所有问题。lCMMI是从软件过程角度定义了成熟的软件过是从软件过程角度定义了成熟的软件过程的实践活动,但是对于成熟的软件组织而言,程的实践活动,但是对于成熟的软件组织而言,人的因素和技术的因素也同样重要。人的因素和技术的因素也同样重要。26谢谢观赏2019-9-14l一般需要一般需要2年才能把
20、成熟度提升一级(建议安年才能把成熟度提升一级(建议安排排1.5年到年到2年)。年)。l根据根据CMU-SEI的统计,软件企业在引入的统计,软件企业在引入CMM后劳动生产率平均增长了后劳动生产率平均增长了35%;错误比率平均;错误比率平均减少减少39%;平均成本回报率为;平均成本回报率为5:1。27谢谢观赏2019-9-143.1 初始级初始级l过程过程w 极少存在或使用稳定的软件过程。(极少存在或使用稳定的软件过程。(过程无过程无秩序秩序) w 各种条例、规章制度互不协调,甚至互相矛各种条例、规章制度互不协调,甚至互相矛盾。(盾。(开发无规范开发无规范) 28谢谢观赏2019-9-14l人员人
21、员w 依赖个人努力和精英人物;依赖个人努力和精英人物;w 项目组成员的工作方式就是哪里出现危机就项目组成员的工作方式就是哪里出现危机就去哪儿解决。去哪儿解决。l技术技术w 引进新技术是很大的风险。引进新技术是很大的风险。l度量度量w 不收集和分析数据。不收集和分析数据。29谢谢观赏2019-9-14l注意:有些组织制定了一些软件工程规范,但注意:有些组织制定了一些软件工程规范,但如果这些规范没有覆盖基本的关键过程域,且如果这些规范没有覆盖基本的关键过程域,且执行没有政策、资源方面的保证时,那么该组执行没有政策、资源方面的保证时,那么该组织仍然被视为处于初始级成熟度。织仍然被视为处于初始级成熟度
22、。30谢谢观赏2019-9-14l改进方向改进方向w 建立项目管理过程,实施规范化管理,保障建立项目管理过程,实施规范化管理,保障项目的承诺。项目的承诺。w 进行需求管理,建立客户与软件项目之间的进行需求管理,建立客户与软件项目之间的共同理解,使项目真正反映客户的要求。共同理解,使项目真正反映客户的要求。w 建立各种软件项目计划。如:软件开发计划、建立各种软件项目计划。如:软件开发计划、配置管理计划、风险管理计划等。配置管理计划、风险管理计划等。w 开展软件质量保证活动。开展软件质量保证活动。31谢谢观赏2019-9-14特征:特征:l进行较为现实的承诺,按以前在同类项目上的进行较为现实的承诺
23、,按以前在同类项目上的成功经验建立必要的过程准则以确保再一次成成功经验建立必要的过程准则以确保再一次成功。功。l逐个项目地建立基本过程管理条例来加强软件逐个项目地建立基本过程管理条例来加强软件过程能力。过程能力。l建立了基本的项目管理过程来跟踪成本、进度建立了基本的项目管理过程来跟踪成本、进度和功能,包括:需求管理、计划和跟踪监控、和功能,包括:需求管理、计划和跟踪监控、质量管理、配置管理、子合同管理。通过执行质量管理、配置管理、子合同管理。通过执行这些过程,从管理角度可以看到一个按计划执这些过程,从管理角度可以看到一个按计划执行的且阶段可控的软件开发过程。行的且阶段可控的软件开发过程。32谢
24、谢观赏2019-9-14特征特征:l管理工作主要跟踪软件经费支出、进度和功能,管理工作主要跟踪软件经费支出、进度和功能,识别在承诺方面出现的问题。识别在承诺方面出现的问题。l采用基线(采用基线(baseline)来标志进展,控制完整)来标志进展,控制完整性。性。l定义了软件项目的过程标准,并遵循它。定义了软件项目的过程标准,并遵循它。l通过子合同建立有效的供求关系。通过子合同建立有效的供求关系。33谢谢观赏2019-9-14l过程过程w 软件开发和维护过程是相对稳定的,但过程软件开发和维护过程是相对稳定的,但过程建立在项目级别,而非企业级别。建立在项目级别,而非企业级别。w 软件工程过程受控于
25、有效的工程管理过程,软件工程过程受控于有效的工程管理过程,先前的成功经验可以被重复使用。先前的成功经验可以被重复使用。w 问题出现时,有能力识别并纠正,承诺可以问题出现时,有能力识别并纠正,承诺可以兑现。兑现。34谢谢观赏2019-9-14l人员人员w 理解管理的必要性并对管理有承诺。理解管理的必要性并对管理有承诺。w 注意人员的培训。注意人员的培训。l技术技术w 建立技术支持活动,并有稳定的计划。建立技术支持活动,并有稳定的计划。l度量度量w 有计划地收集、分析有关项目过程和产品的有计划地收集、分析有关项目过程和产品的数据。数据。35谢谢观赏2019-9-14l不再按项目制定软件过程,而是总
26、结各种项目不再按项目制定软件过程,而是总结各种项目的成功经验,使之规则化,把具体经验归纳为的成功经验,使之规则化,把具体经验归纳为全组织机构的标准软件过程。将改进组织机构全组织机构的标准软件过程。将改进组织机构整体软件过程能力作为软件组织的责任。整体软件过程能力作为软件组织的责任。l确定全组织机构的标准软件过程,把软件工程确定全组织机构的标准软件过程,把软件工程及管理活动集成到一个稳固而确定的软件过程及管理活动集成到一个稳固而确定的软件过程中。从而可以跨项目改进软件过程效果。中。从而可以跨项目改进软件过程效果。l建立软件工程过程小组(建立软件工程过程小组(SEPG),长期承担),长期承担评估与
27、调整软件过程的任务,以适应未来软件评估与调整软件过程的任务,以适应未来软件项目的要求。项目的要求。36谢谢观赏2019-9-14l积累数据:建立组织机构的软件过程库及软件积累数据:建立组织机构的软件过程库及软件过程相关的文档库。过程相关的文档库。l加强人员培训。加强人员培训。37谢谢观赏2019-9-14l需求管理需求管理l项目计划项目计划l项目监督与控制项目监督与控制l供应协议管理供应协议管理l过程与产品质量保证过程与产品质量保证l配置管理配置管理l度量与分析度量与分析38谢谢观赏2019-9-14l需求管理需求管理(Requirements Management, ReqM)是指在客户和项
28、目组之间就客户的需)是指在客户和项目组之间就客户的需求建立一个协议并加以管理。该协议包括技术求建立一个协议并加以管理。该协议包括技术需求和非技术需求两个方面,它构成了整个产需求和非技术需求两个方面,它构成了整个产品生命周期中估计、计划、执行和跟踪项目活品生命周期中估计、计划、执行和跟踪项目活动的基础。动的基础。l目标目标w 控制系统的需求,为工程和管理活动建立基控制系统的需求,为工程和管理活动建立基线。线。w 保持计划、产品和活动与系统的需求一致。保持计划、产品和活动与系统的需求一致。39谢谢观赏2019-9-14需求管理划分为以下需求管理划分为以下5个独立的过程:个独立的过程:l需求获取需求
29、获取:通过与用户的交流,对现有系统的:通过与用户的交流,对现有系统的观察及对业务的分析,从而开发、捕获和修订观察及对业务的分析,从而开发、捕获和修订用户的需求。用户的需求。l需求分析需求分析:也称需求建模,是为最终用户所看:也称需求建模,是为最终用户所看到的系统建立一个概念模型,是对需求的抽象到的系统建立一个概念模型,是对需求的抽象描述。描述。l需求规格需求规格:以开发人员可用的技术形式,描述:以开发人员可用的技术形式,描述一个产品所应具有的特征和性质,形成需求规一个产品所应具有的特征和性质,形成需求规格说明书。格说明书。40谢谢观赏2019-9-14l需求验证需求验证:开发人员和用户对需求规
30、格进行分:开发人员和用户对需求规格进行分析和验证。析和验证。l需求变更需求变更:采用正式的审批流程来管理需求的:采用正式的审批流程来管理需求的变更,使需求变更产生的影响是可控的。变更,使需求变更产生的影响是可控的。 变更审批流程包括变更审批流程包括4个主要活动:变更申请、个主要活动:变更申请、变更评估、批准变更评估、批准/拒绝变更、实现变更。拒绝变更、实现变更。41谢谢观赏2019-9-14l项目计划项目计划(Project Planning)的目标是为实)的目标是为实施和管理项目制定合理的计划。施和管理项目制定合理的计划。l要制定合理的计划,就要对需要完成的工作做要制定合理的计划,就要对需要
31、完成的工作做出比较实际的估计,并为完成这些工作建立一出比较实际的估计,并为完成这些工作建立一些必要约定。些必要约定。l项目计划首先对要进行的工作、项目的约束条项目计划首先对要进行的工作、项目的约束条件和项目的目标进行描述。件和项目的目标进行描述。42谢谢观赏2019-9-14l项目计划过程包括如下步骤:定义项目的生命项目计划过程包括如下步骤:定义项目的生命周期,确定项目的范围,估计项目的规模、成周期,确定项目的范围,估计项目的规模、成本和所需资源,制定项目的进度计划,确定并本和所需资源,制定项目的进度计划,确定并评估项目风险。评估项目风险。43谢谢观赏2019-9-14l项目监督与控制项目监督
32、与控制(Project Monitoring and control)的目标是随时掌握项目的实际开发)的目标是随时掌握项目的实际开发过程,使得当项目的执行活动与计划相背离时,过程,使得当项目的执行活动与计划相背离时,管理部门能采取有效的措施。管理部门能采取有效的措施。l当选定的工作产品已完成或处在选定的里程碑当选定的工作产品已完成或处在选定的里程碑时,将实际的项目规模、工作量、成本和进度时,将实际的项目规模、工作量、成本和进度与计划相比较,以确定工作进展情况。当肯定与计划相比较,以确定工作进展情况。当肯定不能满足计划时,采取相应的调整措施,包括不能满足计划时,采取相应的调整措施,包括修改开发计
33、划以反映实际的进度情况,对余下修改开发计划以反映实际的进度情况,对余下的工作重新计划,或采取相应的措施改进过程的工作重新计划,或采取相应的措施改进过程运行性能。运行性能。44谢谢观赏2019-9-14l供应协议管理供应协议管理(Supplier Agreement Management)的目标是选择合适的供应商,)的目标是选择合适的供应商,并对产品获取过程进行管理。并对产品获取过程进行管理。l对软件项目来说,常需要采购一些软件或硬件对软件项目来说,常需要采购一些软件或硬件产品,也有可能把项目的一部分外包给第三方产品,也有可能把项目的一部分外包给第三方来做,而采购和外包可以认为是风险最大的活来做
34、,而采购和外包可以认为是风险最大的活动之一。动之一。45谢谢观赏2019-9-14l确定产品的获取类型(如购买商品化产品、通确定产品的获取类型(如购买商品化产品、通过合同获取等)。过合同获取等)。l根据供应商的能力选择产品供应商。根据供应商的能力选择产品供应商。l与供应商建立和维护正式的协议。与供应商建立和维护正式的协议。l与供应商共同履行协议中所规定的活动。与供应商共同履行协议中所规定的活动。l选择、监督和分析供应商的生产过程。选择、监督和分析供应商的生产过程。l评估供应商的工作产品。评估供应商的工作产品。l在接收产品前确保供应协议已得到满足。在接收产品前确保供应协议已得到满足。l将产品从供
35、应商转移到当前项目中。将产品从供应商转移到当前项目中。46谢谢观赏2019-9-14l过程与产品质量保证过程与产品质量保证(Process and Product Quality Assurance)为项目管理者提供项目)为项目管理者提供项目过程和相关产品的适当的可见性,从而为交付过程和相关产品的适当的可见性,从而为交付高质量的产品和服务提供支持。高质量的产品和服务提供支持。l在该过程与中,产品质量评估的客观性对项目在该过程与中,产品质量评估的客观性对项目的成功是至关重要的,可以通过设立独立的质的成功是至关重要的,可以通过设立独立的质量保证组或应用一些标准来达到这种客观性。量保证组或应用一些标
36、准来达到这种客观性。l质量保证工作应尽早开始,在项目初期就应制质量保证工作应尽早开始,在项目初期就应制定相应的计划、标准和规程。定相应的计划、标准和规程。47谢谢观赏2019-9-14l根据过程描述、标准和规程,客观地评估所执根据过程描述、标准和规程,客观地评估所执行的过程。行的过程。l根据过程描述、标准和规程,客观地评估工作根据过程描述、标准和规程,客观地评估工作产品和服务。产品和服务。l交流质量问题并确保不一致项得到解决。交流质量问题并确保不一致项得到解决。 不一致项是指在质量评估过程中所发现的与标不一致项是指在质量评估过程中所发现的与标准、过程描述和规程不一致的地方。准、过程描述和规程不
37、一致的地方。48谢谢观赏2019-9-14l配置管理配置管理(Configuration Management)是)是通过配置标记、配置控制、配置状态审核和配通过配置标记、配置控制、配置状态审核和配置审计来建立和维护工作产品的一致性。置审计来建立和维护工作产品的一致性。49谢谢观赏2019-9-14l度量与分析度量与分析(Measurement and Analysis)过程域的目标是开发和维持度量能力,从而能过程域的目标是开发和维持度量能力,从而能够支持管理信息需求。够支持管理信息需求。l将度量与分析集成到项目过程中,主要有以下将度量与分析集成到项目过程中,主要有以下几方面的作用:几方面的作
38、用:w 支持客观的计划和估计。支持客观的计划和估计。w 跟踪实际性能,并与计划和目标对比。跟踪实际性能,并与计划和目标对比。w 识别和解决与过程相关的问题。识别和解决与过程相关的问题。50谢谢观赏2019-9-14l根据识别出的信息需求建立和维护度量目标。根据识别出的信息需求建立和维护度量目标。l定义满足度量目标的测量。定义满足度量目标的测量。l定义数据收集和存储过程。定义数据收集和存储过程。l定义数据分析和报告过程。定义数据分析和报告过程。l收集度量数据,并检查数据的完整性。收集度量数据,并检查数据的完整性。l分析和解释度量数据。分析和解释度量数据。l管理和存储度量数据、度量定义和分析结果。
39、管理和存储度量数据、度量定义和分析结果。l向所有相关人员报告度量和分析结果。向所有相关人员报告度量和分析结果。51谢谢观赏2019-9-14特征:特征:l软件工程和管理方面的软件过程都已经文档化、软件工程和管理方面的软件过程都已经文档化、标准化,并综合成软件开发组织的标准软件过标准化,并综合成软件开发组织的标准软件过程。程。l软件过程标准被应用到所有的项目开发和维护软件过程标准被应用到所有的项目开发和维护当中,有些项目可能要对这些标准软件过程进当中,有些项目可能要对这些标准软件过程进行裁减。行裁减。l对于任何项目,其生产过程、成本、计划和功对于任何项目,其生产过程、成本、计划和功能都是可以控制
40、的,从而软件质量也可以控制。能都是可以控制的,从而软件质量也可以控制。52谢谢观赏2019-9-14特征:特征:l软件工程过程组(软件工程过程组(SEPG)负责软件过程活动。)负责软件过程活动。l在全组织范围内安排培训计划。在全组织范围内安排培训计划。53谢谢观赏2019-9-14l过程过程w 整个组织采纳标准化的软件工程和管理过程整个组织采纳标准化的软件工程和管理过程来管理所有项目的开发和维护。软件工程和来管理所有项目的开发和维护。软件工程和管理活动是稳定和可重复的,具有连续性。管理活动是稳定和可重复的,具有连续性。w 软件过程起了预见及防范问题的作用,能使软件过程起了预见及防范问题的作用,
41、能使风险的影响最小化。风险的影响最小化。l人员人员w 整个组织内部的所有人员对于所定义的软件整个组织内部的所有人员对于所定义的软件过程的活动、任务有深入理解,大大增强了过程的活动、任务有深入理解,大大增强了软件过程能力。软件过程能力。w 有计划地对人员角色进行培训。有计划地对人员角色进行培训。54谢谢观赏2019-9-14l技术技术w 在定性基础上评估新技术。在定性基础上评估新技术。l度量度量w 在全过程中收集使用数据。在全过程中收集使用数据。w 在整个项目中系统性地共享数据。在整个项目中系统性地共享数据。l改进方向改进方向w 开始着手过程的定量分析,以达到定量控制开始着手过程的定量分析,以达
42、到定量控制项目过程的效果。项目过程的效果。55谢谢观赏2019-9-14l需求开发需求开发l技术解决方案技术解决方案l产品集成产品集成l验证验证l确认确认l组织过程焦点组织过程焦点l组织过程定义组织过程定义l组织培训组织培训l集成项目管理集成项目管理l风险管理风险管理l决策分析与解决决策分析与解决l集成供应商管理集成供应商管理l组织集成环境组织集成环境l集成团队集成团队56谢谢观赏2019-9-14l需求开发需求开发(Requirement Development)的)的目的是生成并分析客户、产品和产品组件的需目的是生成并分析客户、产品和产品组件的需求。求。l需求开发的第一个特定目标是开发客户
43、需求。需求开发的第一个特定目标是开发客户需求。这要求提取出利益关系人的需要、期望、约束这要求提取出利益关系人的需要、期望、约束和接口。和接口。l需求开发的第二个特定目标是使用客户需求来需求开发的第二个特定目标是使用客户需求来开发产品级和产品组件级的需求。这要求把客开发产品级和产品组件级的需求。这要求把客户需求解释成技术形式更强的产品需求,把需户需求解释成技术形式更强的产品需求,把需求分配给每个产品组件以及识别接口需求。求分配给每个产品组件以及识别接口需求。57谢谢观赏2019-9-14l需求开发的第三个目标是分析和验证需求。首需求开发的第三个目标是分析和验证需求。首先要开发操作概念和应用场合,
44、随后根据这些先要开发操作概念和应用场合,随后根据这些操作概念定义所需的功能,分析这些需求从而操作概念定义所需的功能,分析这些需求从而保证它们是必要的和足够的,并且是能够实现保证它们是必要的和足够的,并且是能够实现的。此外,分析需求还可以帮助平衡利益关系的。此外,分析需求还可以帮助平衡利益关系人的需要和约束。最后,要对需求进行验证,人的需要和约束。最后,要对需求进行验证,保证最终产品在用户环境中运行良好。保证最终产品在用户环境中运行良好。58谢谢观赏2019-9-14l技术解决方案技术解决方案(Technical Solution)的目的)的目的是开发、设计和实现需求的解决方案。是开发、设计和实
45、现需求的解决方案。l本过程域的第一个特定目标是选择产品或产品本过程域的第一个特定目标是选择产品或产品构件的解决方案。它包含两个特定实践,首先,构件的解决方案。它包含两个特定实践,首先,项目必须开发可选解决方案以及它们的评估标项目必须开发可选解决方案以及它们的评估标准,其次,从可选解决方案中选择最能满足已准,其次,从可选解决方案中选择最能满足已确立标准的解决方案。确立标准的解决方案。59谢谢观赏2019-9-14l本过程域的第二个特定目标是设计产品或产品本过程域的第二个特定目标是设计产品或产品构件。它有构件。它有4个特定实践:第一个特定实践为个特定实践:第一个特定实践为产品或产品组件开发了一个体
46、系结构和一个设产品或产品组件开发了一个体系结构和一个设计;第二个特定实践通过建立技术数据包为开计;第二个特定实践通过建立技术数据包为开发者提供一个对产品的综合描述;第三个特定发者提供一个对产品的综合描述;第三个特定实践按照已确立的标准建立产品组件接口的解实践按照已确立的标准建立产品组件接口的解决方案;在第四个特定实践中,选择应该开发、决方案;在第四个特定实践中,选择应该开发、购买还是重用产品组件。购买还是重用产品组件。60谢谢观赏2019-9-14l本过程域第三个特定目标是实现产品并生成与本过程域第三个特定目标是实现产品并生成与之关联的支持文档。包括两个特定实践:首先,之关联的支持文档。包括两
47、个特定实践:首先,实现所有类型的产品组件的设计,其次,开发实现所有类型的产品组件的设计,其次,开发和维护应用支持文档,这些文档描述如何安装、和维护应用支持文档,这些文档描述如何安装、操作和维护产品。操作和维护产品。61谢谢观赏2019-9-14l产品集成产品集成(Product Integration)的目的是把)的目的是把产品组件组装成产品,保证产品正常工作,并产品组件组装成产品,保证产品正常工作,并把产品交付给用户。把产品交付给用户。l产品集成过程域的关键在于产品和产品构件接产品集成过程域的关键在于产品和产品构件接口(包括内部接口和外部接口)的管理,保证口(包括内部接口和外部接口)的管理,
48、保证接口之间的兼容性。接口之间的兼容性。lPI过程域的第一个特定目标是为产品集成做准过程域的第一个特定目标是为产品集成做准备,包含备,包含3个特定实践。首先,确定产品构件个特定实践。首先,确定产品构件的集成顺序;其次,建立产品集成环境;最后,的集成顺序;其次,建立产品集成环境;最后,建立产品集成的程序和标准。建立产品集成的程序和标准。62谢谢观赏2019-9-14lPI过程域的第二个特定目标是保证产品构件的过程域的第二个特定目标是保证产品构件的内部和外部接口的兼容性。它包含两个特定实内部和外部接口的兼容性。它包含两个特定实践:首先,检查接口描述以确定接口描述的全践:首先,检查接口描述以确定接口
49、描述的全面性和完整性;然后,管理产品和产品构件的面性和完整性;然后,管理产品和产品构件的接口,以维持接口之间的一致性,解决冲突。接口,以维持接口之间的一致性,解决冲突。63谢谢观赏2019-9-14lPI过程域的第三个特定目标是集成产品组件并过程域的第三个特定目标是集成产品组件并交付产品。包括交付产品。包括4个特定实践:首先,确认每个特定实践:首先,确认每个产品组件都已被识别并且其功能与描述一致,个产品组件都已被识别并且其功能与描述一致,接口也与它们的描述符合;然后根据产品集成接口也与它们的描述符合;然后根据产品集成顺序和规程集成产品构件;第三步是评估组装顺序和规程集成产品构件;第三步是评估组
50、装后的产品构件,重点关注接口的兼容性;最后,后的产品构件,重点关注接口的兼容性;最后,包装产品并把它交付给用户。包装产品并把它交付给用户。64谢谢观赏2019-9-14l验证验证(Verification)的目的是保证工作产品)的目的是保证工作产品满足它们的指定需求。满足它们的指定需求。l验证过程域包含验证过程域包含3个特定目标:为验证做准备、个特定目标:为验证做准备、执行同行评审和验证选择的工作产品。执行同行评审和验证选择的工作产品。l第一个目标包含三个特定实践:选择要验证的第一个目标包含三个特定实践:选择要验证的工作产品和验证方法;建立验证环境;建立验工作产品和验证方法;建立验证环境;建立