软件项目管理本科.pptx
《软件项目管理本科.pptx》由会员分享,可在线阅读,更多相关《软件项目管理本科.pptx(127页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第一章 绪论 主要内容1.软件开发的现状2.CMM简介3.INFOSYS公司的项目管理实践第1页/共127页一.软件开发的现状1.课程的意义2.软件危机的提出3.世界软件产业发展现状及中国软件业的差距第2页/共127页1.课程的意义1.软件开发是一个高风险的过程2.软件过程的管理是软件成功的关键3.我国现阶段对软件项目管理的人才需求旺盛第3页/共127页2.软件危机的提出“软件危机”的三个主要原因:1.用户不易准确描述对软件的需求,经常存在二义性,遗漏甚至错误2.大型软件往往需要成百上千人的合作,由于软件系统结构复杂,如何有效组织管理、充分发挥团队作用就成为软件开发成功的关键。3.缺乏有效的
2、软件开发方法和工具的支持,过分依靠程序设计在开发中的技巧和创造性,加剧了软件产品的个性化。第4页/共127页3.世界软件产业发展现状及中国软件业的差距 美国印度爱尔兰第5页/共127页中国的软件现状(与印度的比较及反思)软件产值的比较印度中国(软件产值:亿)1999:53.267.52000:71.788.52001:96.3102.3第6页/共127页软件出口的比较印度中国(软件出口)1999:392.52000:6242001:77.87.2第7页/共127页二.软件能力成熟度模型1.CMM简介2.CMM的成熟度级别3.不同级别的KPA4.CMM的评估方法第8页/共127页1.CMM简介C
3、MMcapabilitymaturitymodelforsoftware软件能力成熟度模型是一种描述有效软件过程的关键元素的框架,CMM描述一条从无序的不成熟的过程到成熟的、有纪律的过程的进化的改进途径。CMM包括对软件开发和维护进行策划、工程化和管理的实践。遵循这些关键实践,就能改进组织在实现有关成本、进度、功能和产品质量等目标上的能力。CMM的起源与发展我国的CMM现状第9页/共127页几个基本概念软件过程软件过程能力软件过程性能软件过程成熟度第10页/共127页软件过程 人们用于开发和维护软件及其相关过程的一系列活动,包括软件工程活动和软件管理活动。第11页/共127页软件过程能力 描述
4、(开发组织或项目组)遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件项目而言。第12页/共127页软件过程性能表示(开发组织或项目组)遵循其软件过程所得到的实际结果,软件过程性能描述的是已得到的实际结果,而软件过程能力则描述的是最可能的预期结果,它既可对整个软件开发组织而言,也可对一个特定项目而言。第13页/共127页2.CMM的成熟度级别1.成熟度等级分为5级2.成熟度等级的五个级别的主要特征3.软件过程的可视性4.过程能力和性能预测第14页/共127页成熟度等级1-51级初始级2级可重复级3级已定义级4级已管理级5级优化级第15页/共127页成熟度等级的五
5、个级别的主要特征初始级特征:软件过程的特点是无秩序的,偶尔甚至是混乱的,几乎没有什么过程是经过定义的,成功依赖于个人努力。可重复级特征:已建立基本的项目管理过程去跟踪成本进度和功能,必要的过程纪律已经就位,使具有类似应用的项目能重复以前的成功。已定义级特征:管理活动和工程活动两方面的软件过程均已文档化、标准化,并集成到组织的标准软件过程中,全部项目均采用供开发和维护软件用的组织标准软件过程的一个经批准的普及剪裁版本。第16页/共127页成熟度等级的五个级别的主要特征(续)已管理级特征:已采集详细的有关软件过程和产品质量的度量,无论软件过程还是产品均得到定量了解和控制。优化级特征:利用来自过程和
6、来自新思想、新技术的先导性实验的定量反馈信息,使持续过程的改进成为可能。第17页/共127页软件过程的可视性等级1一个黑盒等级2项目里程碑处具有管理可视性等级3盒子的内部结构可视等级4软件过程被配备上度量,并得到定量地控制等级5对过程不断改进第18页/共127页过程能力和性能预测随着成熟度增长,实际结果相对预定目标结果的偏差范围减小随着成熟度增加,预定目标结果得到改善第19页/共127页3.不同级别的KPA关键过程区域(keyprocessarea)每个关键过程区域识别出一串相关活动,当这些活动全部完成时,能达到一组对增强过程能力至关重要的目标CMM共有18个KPA,2级6个;3级7个;4级2
7、个;5级3个。KPA的特性:A每个识别出一串相关活动B每KPA定义在单个成熟度等级上C.KPA鉴别出为达到某一成熟度等级所必须解决的问题第20页/共127页等级2的KPAl需求管理RM(requirementsmanagement)l软件项目策划SPP(softwareprojectplanning)l软件项目跟踪和监督SPTO(spftwareprojecttrackingandoversight)l子合同管理SSM(softwaresubcontractmanagement)l质量保证SQA(softwarequalityassurance)l软件配置管理SCM(softwareconfi
8、gurationmanagement)第21页/共127页等级3的KPAl组织过程焦点OPF(organizationprocessfocus)l组 织 过 程 定 义 OPD(organizationprocessdefinition)l培训大纲TP(trainingprogram)l集 成 软 件 管 理 ISM(integratedsoftwaremanagement)l软件产品工程SPE(softwareproductengineering)l组间协调IC(intergroupcoordination)l同行评审PR(peerreviews)第22页/共127页等级4的KPA l定量过
9、程管理QPM(quantitativeprocessmanagement)l软件质量管理SQM(softwarequalitymanagement)第23页/共127页等级5的KPAl缺陷预防DP(defectprevention)l技术改革管理TCM(technologychangemanagement)l过程更改管理PCM(processchangemanagement)第24页/共127页关键过程域(KPA)的结构目标共同特点(执行约定,执行能力,执行活动,测量和分析,验证实施)第25页/共127页目标目标概括一个PKA中的所有关键实践,并能用于确定一个组织或项目是否已有效地实施此KPA
10、。目标表示每个关键过程域地范围、边界和意图。第26页/共127页共同特点执行约定(Commitment to Perform)执行能力(Ability to Perform)执行活动(Activities Performed)度量和分析(Measurement and Analysis)验证实施(Verifying Implementation)第27页/共127页执行约定(Commitment to Perform)执行约定是企业为了建立和实施相应KPA所必须采取的行动,这些行动主要牵涉到企业范围的政策和高层管理的责任。第28页/共127页执行能力(Ability to Perform)执行
11、能力描述为了使某软件过程得以始终如一地执行的必须在项目或企业中存在的先决条件,是企业实施KPA的前提条件。企业必须采取措施,在满足了这些条件后,才有可能执行KPA的实践活动。执行能力关注于项目计划的实践;资源的配置;责任的布置与授权;以及各种有关的培训等,这些都是为了执行这个关键过程域的活动而对特定人以及作为整体的机构的能力开发起非常重要作用的事务。第29页/共127页执行活动(Activities Performed)执行活动描述了执行KPA所需求的必要行动、任务和步骤。在五个公共属性中,执行活动是唯一与项目执行相关的属性,其余四个属性则涉及企业CMM能力基础设施的建立。执行活动一般包括计划
12、、执行的任务、任务执行的跟踪等。第30页/共127页验证实施(Verifying Implementation)验证实施是验证执行活动是否与建立的过程一致,核实以确保所实施的过程是按照原定的计划以及达到其目标,着眼于保证过程的实现要通过独立的个人和高级管理人员验证。涉及到管理的评审和审计以及质量保证活动,包括:过程执行的确保,产品要求的确保,高层管理人员进行的审核和项目经理进行的审核。第31页/共127页测量和分析(Measurement and Analysis)测量和分析关注于这个关键过程域的活动需要作的度量和度量分析要求。典型的测量和分析的要求是确定执行活动的状态和执行活动的有效性。第3
13、2页/共127页4.CMM 的评估方法1.过程评估与过程评价2.过程评估的方法第33页/共127页过程评估与过程评价软件过程评估:用于确定一个组织的当前软件过程的状态,确定组织所面临的具有高优先级的与软件过程有关的问题,和获得组织对软件过程改进的支持软件过程评价:由于识别合格的能完成软件工作的承包商或者监控现有软件工作中所应用的软件过程的状态第34页/共127页过程评估的方法成熟度问卷文档面谈第35页/共127页三.INFOSYS公司的项目管理实践1.INFOSYS公司的背景知识2SEPG对项目的支持3高层经理参与项目4项目经理培训5.项目管理过程(项目规划,项目执行,项目收尾)第36页/共1
14、27页第二章 软件项目管理概述l项目管理的概念l项目管理的主要内容l项目管理的阶段划分第37页/共127页1 1什么是项目管理?Badiru(1991)将项目管理定义为:一种为高效恰当地完成某个既定的目标而对资源进行管理、分配和调度的过程。我们也可以把项目管理定义为:一种为实现既定目标而对技术、人力及金融资源所进行的系统集成。第38页/共127页项目的特征一个明确的范围和目标;一个预期的完成时间;有可以利用的资源;一种已定义的性能评估方法;评审工作时使用的评估等级。第39页/共127页2.项目管理的主要内容l项目管理的8方面内容:范围管理、质量管理、时间管理、成本管理、风险管理、人力资源管理、
15、合同/采购管理、通讯管理第40页/共127页项目管理主要有三个大的阶段项目规划项目执行项目收尾第41页/共127页项目规划:主要是项目经理审阅合同条款,并制定一个满足他们的计划,实际上包括:定义生命周期、估计工作量和进度、制定任务进度计划等。项目执行:包括执行项目计划、跟踪项目的状态,并在项目的绩效偏离项目计划设定的绩效时采取措施进行纠正。项目收尾:主要是在客户接收工作产品之后对项目进行系统的总结。数据分析是这一阶段的主要任务。第42页/共127页第三章 需求规格和需求管理 需求过程:需求开发(分析和产生需求的过程,发生在软件生命周期的开始)需求管理(包括对需求的评审,跟踪和控制活动,贯穿于整
16、个生命周期)第43页/共127页一.需求分析和需求规格需求分析的过程需求规格说明书(需求规格说明书的要求)第44页/共127页二.需求变更管理需求是会发生变化的,而且需求的变更可以在项目生命周期的任何时间发生。越是发生在后期,对项目的影响越大。如何管理好需求变更的申请是非常重要的。第45页/共127页变更管理过程 变更管理过程规定如何发出变更申请、何时需要正式批准等。在出现需求变更申请时,必须执行需求变更管理过程。第46页/共127页一般的变更管理过程 记录变更分析变更对工作产品的影响估计变更申请所需的工作量重新估计交付时间表执行累计的成本影响风险如果影响超出一定的限度,则与高级主管一起评审影
17、响客户不再提出变更申请修改工作产品第47页/共127页三.需求的跟踪管理跟踪矩阵跟踪矩阵的维护和使用第48页/共127页第四章 过程定义和过程裁剪过程描述:是项目可以用来遵照执行某些任务的一系列步骤,以及执行这些步骤的指南。第49页/共127页开发过程开发过程是提炼用户需求,设计、构建和测试满足这些需求的软件并最终将其交付给客户所需的过程:概要设计详细设计编码和单元测试集成测试系统测试验收测试和安装文档整理系统维护第50页/共127页概要设计主要给出从计算机的逻辑角度开发针对用户需求的解决方案。输入准则:需求规格文档经过评审并授权输入:需求规格文档输出准则:概要设计文档经过评审和授权输出:概要
18、设计文档、项目标准、概要设计评审记录度量:工作量、缺陷主要步骤:第51页/共127页详细设计进一步对概要设计中的整体应用分解,分解成模块和程序,对程序进行逻辑设计。输入准则:概要设计文档经过评审和授权输入:概要设计文档输出准则:详细设计文档和单元测试计划已经经过评审和授权输出:详细设计文档和单元测试计划度量:工作量、缺陷主要步骤:第52页/共127页编码和单元测试根据详细设计用编程语言编写所需要的程序输入准则:详细设计文档经过评审并授权输入:详细设计文档、项目标准、单元测试计划、程序框架输出准则:成功执行所有单元测试计划中的测试用例输出:源代码、可执行代码、测试数据度量:工作量、缺陷主要步骤:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 管理 本科
限制150内