首页 软件过程与软件过程改进

软件过程与软件过程改进

举报
开通vip

软件过程与软件过程改进第12章软件过程与软件过程改进软件过程概述软件生存期过程国际标准软件过程成熟度软件能力成熟度模型软件过程改进第12章软件过程与软件过程改进尽管软件工程项目的具体情况各有不同,但影响软件产品质量和软件项目生产率的共同因素主要有3个:人员、技术和过程。如果把音乐会演出视为软件项目,则乐队和指挥就相当于参与项目的人员;舞台和乐器相当于支持开发的环境条件、技术和工具;而乐谱相当于软件项目的过程。12.1软件过程概述软件过程尽管软件危机最早于上个世纪六十年代已经提出,业内人士确已投入了大量人力和物力,试图摆脱软件业长期的发展...

软件过程与软件过程改进
第12章软件过程与软件过程改进软件过程概述软件生存期过程国际 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 软件过程成熟度软件能力成熟度模型软件过程改进第12章软件过程与软件过程改进尽管软件工程项目的具体情况各有不同,但影响软件产品质量和软件项目生产率的共同因素主要有3个:人员、技术和过程。如果把音乐会演出视为软件项目,则乐队和指挥就相当于参与项目的人员;舞台和乐器相当于支持开发的环境条件、技术和工具;而乐谱相当于软件项目的过程。12.1软件过程概述软件过程尽管软件危机最早于上个世纪六十年代已经提出,业内人士确已投入了大量人力和物力,试图摆脱软件业长期的发展之痛。然而,事实表明,问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 至今还未得到很好地解决。在近十几年的大量研究和实践之后,许多人逐渐认识到,从软件过程的改进来解决可能是有效的方法之一。12.1软件过程概述软件过程著名的软件工程专家,也是CMM的主要创始人WattsHumphrey提出了以下几个重要论点:(1)软件系统的质量取决于用以开发和改进它的过程质量。(2)解决软件问题的重要一步是把整个软件工作当作一个过程来对待,使其能够控制、度量和改进。(3)软件过程是我们用以开发软件产品的一套工具、方法和实践。(4)软件过程管理的目标是按 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 生产产品,同时提高软件组织的能力,以利于生产出好的产品。12.1软件过程概述软件过程(5)成本估算和开发期安排的承诺应该是比较合理的,开发出的产品应该在功能和质量方面都能满足用户的期望。(6)有效的软件管理必须考虑所要完成的任务,所采用的方法和工具,以及参与工作人员的技能、培训和积极性。(7)有效的软件过程必须是可预测的。12.2软件生存期过程国际标准1995年8月,国际标准化组织(ISO)和国际电工委员会(IEC)联合发布了国际标准ISO/IEC12207InformationTechnologySoftwareLifeCycleProcesses。2008年,这两个国际标准化机构又联合了美国电气与电子工程师学会(IEEE),共同发布了该标准的第二版:ISO/IEC12207:2008(IEEEStd.12207-2008)Systemsandsoftwareengineering——Softwarelifecycleprocesses。12.2软件生存期过程国际标准结构由于越来越多的软件作为系统的一部分开发和运行,因此我们在研究和处理软件问题时,建立系统的观念是十分必要的。软件项在系统中的位置如下图所示。基于这一观念,该标准分为两部分:1)与系统相关的过程;2)软件特有过程。系统元素12.2软件生存期过程国际标准与系统相关的过程12.2软件生存期过程国际标准软件特有过程12.3软件过程成熟度什么是软件过程成熟度过程制度化12.3.1什么是软件过程成熟度软件过程成熟度的概念任何一个软件组织,在完成自身的开发、维护等工作中,都有自己的软件过程。这种过程有可能是初级的、低效的,也可能是高效的,在其成熟性方面存在差异,这当然是相互比较而言的。软件过程成熟度(SoftwareProcessMaturity)是软件过程改进的一个重要概念,它是指:一个特定软件过程得到清晰的定义、管理、测量、控制的有效程度。成熟度意味着能力的增长具有潜力,并表示组织软件过程是珍贵的,他在组织内所有项目中的应用是一致的。12.3.1什么是软件过程成熟度不成熟过程与成熟过程的对比1)角色与职责不成熟过程成熟过程没有明确规定角色和职责每个人做自己认为要做的事常会发生重叠和不清楚的所属关系和责任明确规定角色和职责相互关系无重叠有明确的目标和测量方法能够体现持续改进过程的机制2)处理变更的方式不成熟过程成熟过程每个人都按自己的想法做事遵循一个规划好的文件化过程可分享取得的经验12.3.1什么是软件过程成熟度3)对发生问题的反应不成熟过程成熟过程无秩序的混乱现象随处可见“救火”方式解决出现问题的情况经常发生每个人都想当英雄根据已有的知识和专业规则对发生的问题进行分析和处理12.3.1什么是软件过程成熟度4)可信性不成熟过程成熟过程有时延迟交付产品或超出预算如有估算也不可靠估算准确项目得到有效的控制和管理目标一般能够达到12.3.1什么是软件过程成熟度5)对工作人员的奖励不成熟过程成熟过程奖励的对象是“救火”队员“如果你第一次就把事情做好了,那是你的本分,没有人理睬,但你若先把事情搞乱,然后再去解决,你就成了英雄。”_Deming,1986奖励那些生产高质量产品的团队奖励那些防火者而不是救火者12.3.1什么是软件过程成熟度6)预见性不成熟过程成熟过程质量不可把握,它依赖于个人进度和预算不能根据以往的经验确定项目的进度和产品的质量均可预见进度和预算可根据以往项目的经验确定,并且是符合实际的12.3.1什么是软件过程成熟度12.3.2过程制度化过程认同与过程制度化软件开发过程决定了在接受软件工程项目后工作人员的行动方式和反应方式。为了实现某个既定的目标,人们的行为、活动和任务都要遵循为达到此目标所经历的过程。 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 化的过程体现了一系列有序的和协调一致的行为模式,无论这个过程是由一个人来完成或是由一个团队人员共完成都是如此。12.3.2过程制度化过程认同与过程制度化当一个规范化过程已经渗入组织的日常生活之中,过程的要求已经变成全体员工的自觉行动,得到大家的认同和坚持遵循时,过程便成为制度化的(processinstitutionalization)。做到这一点并不容易,要靠过程文化和过程基础设施的支持,如图所示。12.3.2过程制度化过程文化过程文化是指人们的习惯和行为受到过程思维和过程管理原则的影响。人们对于规范化过程是完全认同的,就是说,人们的活动自觉地按过程要求去作。过程文化应具有自己的特性。12.3.2过程制度化过程文化12.3.2过程制度化过程基础设施对于软件过程来说,基础设施指的是支持软件过程的基础框架和结构基础。它不仅包括组织和管理的岗位和职责,而且包括支持定义过程、开展过程活动、获取和分析过程有关绩效反馈以及不断进行过程改进活动所必须的技术工具和平台。事实上,过程基础设施包含了组织和管理基础设施、技术基础设施两个方面,如图所示。12.3.2过程制度化组织管理基础设施组织和管理基础设施包括建立、监控和推进过程活动的岗位及其职责。支持过程的岗位和职责又有面向全局的和面向局部之分。支持全局工作的功能组通常是在公司一级上工作的,如软件工程过程组(SPEG)。支持局部工作的功能组可能是在项目级上工作,也可能是在某个特定的关键过程域上工作。在这些功能组工作的人员有些是全职(或称全时)的,如SEPG组;也有的功能组人员是兼职的,如软件过程改进组(PITProcessImprovementTeam)。12.3.2过程制度化技术基础设施软件过程技术基础设施是支持SEPG和PIT的技术平台、计算机设施和工具。对于软件过程环境来说,基础设施的过程支持部件包括支持与过程有关活动的工具。下图表示软件过程技术基础设施的结构。12.4软件能力成熟度模型CMM与SEICMM的演化CMM族和CMMICMM1.2简介CMMI评估美国卡内基梅隆大学软件工程研究所在美国国防部资助下于20世纪80年代末建立的能力成熟度模型(capabilitymaturitymodel,CMM),是用于评价软件机构的软件过程能力成熟度的模型。最初,建立此模型的目的主要是,为大型软件项目的招投标活动提供一种全面而客观的评审依据,发展到后来,此模型又同时被应用于许多软件机构内部的过程改进活动中。12.4能力成熟度模型改进对软件过程的管理是消除软件危机的突破口,比采用先进的技术和工具更重要。能力成熟度模型的基本思想:通过建立成熟的优化的软件过程,提高软件的生产率和质量。而技术的改进是软件过程改进的结果。CMM的作用:指导软件机构通过确定当前的过程成熟度并识别出对过程改进起关键作用的问题,进而稳步而有效地改进其软件过程,提高成熟度,使其软件过程能力得到循序渐进的提高。CMM把软件过程从无序到优化的进化过程分成5个有序的阶段,用以测量软件机构的软件过程成熟度和评价其软件过程能力,这些等级还能帮助软件机构把应做的改进工作排出优先次序。CMM对5个成熟度级别特性的描述,说明了不同级别之间软件过程的主要变化。从“1级”到“5级”,反映出从混乱到成熟的软件过程必须经历的过程改进途径。CMM的每个成熟度级别中都包含一组过程改进的目标,满足这些目标后一个机构的软件过程就从当前级别进化到下一个成熟度级别。CMM不提供做这些改进的具体措施。软件工程*过程变更管理PCM技术变更管理TCM缺陷预防DP软件配置管理SCM软件质量保证SQA软件子合同管理SSM软件项目追踪与监督SPTO软件项目策划SPP需求管理RM软件产品工程SPE集成软件管理ISM培训大纲TP组织过程定义OPD组织过程焦点OPF同行评审PR组间协调IC软件质量管理SQM定量过程管理QPM规范化过程标准化过程可预测过程持续改进过程个别过程2级(可重复级)3级(已定义级)4级(已管理级)5级(优化级)1级(初始级)软件工程*关键过程域分类5优化级过程变更管理4可管理级需求管理软件项目策划软件项目跟踪与监控软件子合同管理软件质量保证软件配置管理过程分类机构的过程管理过程缺陷预防软件质量管理整体化软件管理组间协调组织过程关注组织过程定义培训规划无序过程定量过程管理3可定义级2可重复级1初始级工程的过程软件产品工程同行评审技术变更管理1.初始级软件过程的特征是无序的,甚至是混乱的。几乎没有什么过程是经过定义的(即没有一个定型的过程模型),项目能否成功随机性很大。没有健全的软件工程 管理制度 档案管理制度下载食品安全管理制度下载三类维修管理制度下载财务管理制度免费下载安全设施管理制度下载 。延期交付和费用超支的情况经常发生,大多数行动只是应付危机,而不是完成计划好的任务。处于1级成熟度的软件机构,其过程能力是不可预测的,其软件过程是不稳定的,产品质量只能根据相关人员的个人工作能力而不是软件机构的过程能力来预测。2.可重复级建立了基本的项目管理过程(过程模型),可跟踪成本、进度、功能和质量。对新项目的策划和管理过程是基于以前类似项目的实践经验。已经制定了项目标准,并且软件机构能确保严格执行这些标准。项目组与客户及承包商已经建立起一个稳定的工作环境。过程能力可以概括为:软件项目的策划和跟踪是稳定的,已经为一个有纪律的管理过程提供了可重复以前成功实践的项目环境。3.已定义级软件机构已经定义了完整的软件过程(过程模型),软件过程已经文档化和标准化。有一个固定的过程小组从事软件过程工程活动。过程小组可以利用过程模型进行过程例化活动,从而获得一个针对某个特定的软件项目的过程实例。过程小组还可以推进软件机构的过程改进活动。实施了培训计划,能够保证全体项目负责人和项目开发人员具有完成承担的任务所要求的知识和技能。过程能力可以概括为:无论是管理活动还是工程活动都是稳定的。软件开发的成本和进度以及产品的功能和质量都受到控制,而且软件产品的质量具有可追溯性。4.已管理级软件机构对软件过程(过程模型和过程实例)和软件产品都建立了定量的质量目标。可以定量地了解和控制软件过程和软件产品,并为评定项目的过程质量和产品质量奠定了基础。过程能力可以概括为:软件过程是可度量的。这一级的过程能力允许软件机构在定量的范围内预测过程和产品质量趋势,在发生偏离时可以及时采取措施予以纠正,并且可以预期软件产品是高质量的。5.优化级软件机构集中精力不断地改进软件过程。以防止出现缺陷为目标的机构,它有能力识别软件过程要素的薄弱环节。可以获得关于软件过程有效性的统计数据,利用这些数据可以对新技术进行成本/效益分析,并优化采用最佳新技术。通过对过程实例性能的分析和确定产生某一缺陷的原因,来防止再次出现这种类型的缺陷;可以通过从过程实施中获得的定量的反馈信息,在采用新思想和新技术的同时测试它们,以不断地改进和优化软件过程。处于5级成熟度的软件机构的过程能力可以概括为,软件过程是可优化的。能够持续不断地改进其过程能力,既对现行的过程实例不断地改进和优化,又借助于所采用的新技术和新方法来实现未来的过程改进。一些统计数字表明,提高一个完整的成熟度等级大约需要花18个月到3年的时间,但是从第1级上升到第2级有时要花3年甚至5年时间。12.4.3CMM族和CMMI基于CMM的模型自从CMM面世以来在各国软件界中产生了巨大影响,它在解决软件过程存在问题方面的成功使得相关领域也纷纷采纳和仿效它的模式,于是出现了多种基于CMM的模型,构成了一个CMM族。12.4.3CMM族和CMMICMMI1997年SEI开始研究CMMI,其任务是将已有的CMM模型结合成一个模型,新的模型(CMMI)应该兼顾已采用CMM的组织,使其不致受到大的影响,又能便于它的新用户使用;同时还应该与国际标准ISO/IEC15504相兼容。CMMI的1.1版于2002年发布,这一版本正是我国近年来实施的版本,它在我国软件业具有一定影响。接着在2006年发布了CMMI(forDevelopment)1.2版,对原来版本的内容作了一些修改,并于2007年开始实施。这是当前实施的有效版本。12.4.3CMM族和CMMICMMI来源和发展12.4.4CMM1.2简介CMMI模型的两种表示12.4.4CMM1.2简介两种表示的对比12.4.4CMM1.2简介两种表示的对比13.3进度管理进度控制问题甘特图时标网状图PERT图1.值得重视的现象软件项目能否按计划的时间完成,及时提交产品是项目管理的一个重要课题。我们都希望按计划及时完成,但项目未能按预期的进度提交产品,延误工期的现象经常会出现。我们必须重视这一现象,分析其原因,并有针对性地采取措施。2.制订项目进度安排的条件制订项目进度安排计划是为了实施,自然希望越准确,越符合实际越好,但是怎样才能做到这一点,需要在这以前做些工作,创造良好的条件,使得进度安排的确定是有根据的。进度控制问题这些条件包括以下7条:(1)项目分解。无论多么大、多么复杂的项目都必须首先将其划分成能够管理的若干活动和若干任务,并且往往这种分解是多个层次的。(2)确定各部分之间的相互关系。划分后的活动和任务按项目本身的要求,必定存在着一定的相互依赖关系,如谁先谁后,或是两者应该并行互不依赖等。(3)时间分配。为每项活动和任务分配需要的时间,如需要多少人天的工作量。进度控制问题(4)确认投入的工作量。应确认按项目要求的人力投入工作量在实际工作中能够予以满足,而不致出现某些工作阶段人力投入不足的现象。(5)确定人员的责任。(6)规定工作成果。任何分配的任务都应给出符合要求的工作成果,它应该是整个项目的一个组成部分。(7)规定里程碑。任何一项工作完成后需经过一定形式的检验,如经过评审或审核(批准)得到认可,被认为确已完成,表示一个里程碑已经完成。里程碑也被称为基线。进度控制问题甘特图(Ganttchart)是表示工作进度计划以及工作实际进度情况最为简明的图示方法。甘特图中横坐标表示时间,以水平线段表示子任务的工作阶段,可以为其命名。线段的起点和终点分别对应着该项子任务的开工时间和完成时间,线段的长度表示完成它所需的时间,有实线和虚线之分,一开始做出各项子任务的计划时间,应该都以虚线表示。甘特图甘特图可以清楚地表示各项子任务在时间对比上的关系,但无法表达多个子任务之间更为复杂的衔接关系。甘特图甘特图为克服甘特图的缺点,将甘特图做了一些修改,形成了时标网状图(timescalarnetwork),如右图所示。图中的任务以有向线段表示,其指向点表示任务间的衔接点,并且都给予编号,可以显示出各子任务间的依赖关系。它显示出比甘特图具有优越性。时标网状图计划评审技术(programevaluationandreviewtechique,PERT)也称网络图方法,或简称PERT图方法,它的另一名称是关键路径法(criticalpathmethod,CPM)。PERT图PERT图PERT图中以有向的箭头作为边表示子任务,它是有名称(即子任务名)、有长度(即完成此项子任务所需的时间)的向量;以有编号的圆圈作为结点,它应该是子任务向量的始发点或指向点;由若干条边和若干个结点构成了网状图,于是我们可以沿相互衔接的子任务形成的路径,进行路径长度的计算、比较和分析,从而实现项目工期的控制。实例PERT图
本文档为【软件过程与软件过程改进】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
希望图文
公司秉着用户至上的原则服务好每一位客户,专注课件、范文、教案设计制作
格式:ppt
大小:1MB
软件:PowerPoint
页数:53
分类:其他高等教育
上传时间:2022-05-06
浏览量:2