软件过程规范_第1页
软件过程规范_第2页
软件过程规范_第3页
软件过程规范_第4页
软件过程规范_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件过程管理-Ch.1软件过程规范教学与考试学时:32理论:32学时

共16周成绩分值(大约):考勤:10%作业:20%考试:70%我所关注的!!!一、你们对这门课是怎么认识的?二、你们对这门课有兴趣吗?三、我怎么讲你们才能听懂?关于教材

1、《软件过程管理》朱少民等编,清华大学出版社,2007年4月.

2、《个体软件过程》(美)Humphrey汉弗莱著, 吴超英译人民邮电出版社

3、《软件过程管理》(英文影印版)(美)WattsS.Humphrey出版社:清华大学出版社.卡内基·梅隆大学软件工程丛书

朱少民等编,清华大学出版社本章基本要求和重点基本要求:通过学习,使学生了解软件过程管理的产生和概念;理解掌握过程规范、软件生命周期标准、软件过程建模;了解软件生命周期的过程需求、软件项目管理重点与难点:软件过程、过程规范、软件过 程建模引言为何开设软件过程管理?

世界软件过程领袖级人物、能力成熟度模型(CMM)奠基人WattsS.Humphrey(瓦茨.汉弗莱)所说:

◎要解决软件危机,首要把软件活动视作可控的、可度量的和可改进的过程◎通过“七人分粥”小故事,说明软件过程的重要性◎有什么流程,就有什么结果?流程决定结果

为何开设软件过程管理?为确保软件质量和提高产品竞争力,软件组织需要规范软件开发过程、实施软件过程管理软件过程管理可为快速开发高质量软件、有效维护软件运行等各类活动提供指导性框架、实施方法和最佳实践。软件过程管理理念和文化软件过程管理体现在过程模型、规范、问题处理方法和具体实践等一系列内容之上但首先体现在组织的文化中,即建立过程管理的先进理念软件过程管理理念和文化(1)以客户为导向、以过程为中心(2)好的过程就能产生好的产品(3)尊重流程、自上而下、依赖流程(4)只关注质量过程而不是质量结果软件过程管理概述

以全面阐述软件过程管理的各个方面1、软件过程规范2、个体软件过程(PSP)、

PSP设计与实现3、PSP:时间管理与质量管理4、团体软件过程(TSP)的结构和启动过程、TSP工作流程TSP-TeamSoftProcess软件过程管理概述5、项目估算和资源管理,项目风险管理、项目跟踪和监督6、软件过程的评估和改进7、软件过程的管理实践8、最后通过具体的应用实践对软件过程管理做了全方位的阐释。——JamesHarrington(美)如是说一旦人们将注意力转向过程,将发现一个全新的思维空间。《项目变革管理》(美)H.詹姆斯﹒哈林顿(H.JamesHarrington)软件过程管理的目的最大限度地提高软件产品的质量与软件开发过程的生产率产品质量和过程生产率依赖三因素:过程、人和技术实现目的除加强技术创新、培育优秀人才外,规范和改进软件过程是十分必要的内容概览全书共分为10章,以全面阐述软件过程管理的各个方面。首先说明了软件过程规范、成熟度及其相关的概念和理论,包括软件过程标准体系。然后在此基础上,深入讨论了软件过程的组织管理、需求管理、项目管理、质量管理、技术管理和集成管理等流程、方法和实践,并进一步探讨了软件过程评估和改进的框架、模型和实施细节,最后通过具体的应用实践对软件过程管理做了全方位的阐释。课程目标通过本课程的学习,可以了解并掌握:软件过程规范的内容、影响和作用软件过程不成熟的特点、软件过程成熟的标准软件过程的可视性和过程能力软件过程文化、环境和过程框架如何定义组织过程并对过程剪裁以获得项目过程软件过程的需求管理、项目管理和质量管理软件过程的技术管理和集成管理如何实施软件过程的评估和改进……课程服务于

项目经理Projectmanager

程序经理Programmanager

产品经理Productmanager-软件质量管理人员ThememberofSQAG

软件工程过程组成员ThememberofSEPG

软件配置管理人员ThememberofSCMG还包括:软件企业高层管理人员软件工程师和测试工程师

软件分析师、软件咨询顾问课程安排建议:

2学分,32学时周次教学章节教学内容建议学时1第1章软件过程规范

1.1过程的定义1.2过程规范1.3软件生命周期的过程需求1.4软件生命周期标准1.5软件过程建模42-3第2章软件过程成熟度

2.1过程成熟度标准2.2能力成熟度模型概述2.3过程成熟度级别2.4软件过程的可视性2.5过程能力和效能预测2.6软件过程框架23-4第3章软件过程的组织管理

3.1组织过程焦点3.2组织过程定义3.3PSP过程框架和成熟度模型3.4PSP设计与实践3.5TSP的结构和启动过程3.6TSP工作流程2课程安排-2周次教学章节教学内容建议学时5第4章软件过程的需求管理4.1需求管理的模型和流程4.2需求开发4.3需求管理26第5章软件过程的技术管理5.1软件过程的技术架构5.2软件过程的问题分析和决策方法5.3软件过程的技术路线5.4知识传递5.5软件过程管理工具27第6章软件过程的项目管理6.1软件配置管理6.2项目估算和资源管理6.3项目风险评估6.4制定项目计划6.5项目跟踪和监督4课程安排-3周次教学章节教学内容建议学时8第7章软件过程的质量管理7.1质量管理概述 7.2软件质量方针和计划 7.3软件评审过程和方法 7.4缺陷分析和预防7.5质量度量7.6PSP过程质量管理49-10第8章软件过程的集成管理8.1集成项目管理8.2集成项目的合成计划8.3产品集成的过程管理8.4集成产品开发模式8.5IPD方法应用和实践4课程安排-4周次教学章节教学内容建议学时11-12第9章软件过程的评估和改进

9.1过程模型的剪裁9.2软件过程度量9.3过程评估参考模型9.4过程评估9.5过程改进的模型和方法9.6组织和技术革新9.7软件过程改进的实施 413-14第10章软件过程的管理实践10.1IBM-Rational业务驱动开发的过程管理10.2微软公司的软件开发过程模式10.3敏捷模型的软件过程管理10.4面向构件的软件过程10.5软件过程的自定义体系4软件过程规范一旦人们将注意力转向过程,将发现一个全新的思维空间。——JamesHarrington

本章提纲1.1过程的定义1.2过程规范1.3软件生命周期的过程需求1.4软件生命周期标准1.5软件过程建模1.1过程的定义1.1.1过程的定义1.1.2软件过程的分类和组成1.1.3软件过程定义的层次性1.1过程的定义《牛津简明词典》中,“过程”被定义为活动与操作的集合,例如一系列的生产阶段或操作。《书氏大词典》定义“过程”是用于产生某结果的一整套操作、一系列的活动、变化以及作为最终结果的功能。IEEE-Std-610定义“过程”是为完成一个特定的目标而进行的一系列操作步骤,如软件开发过程。SEI-CMM定义过程是用于软件开发及维护的一系列活动、方法及实践。

软件过程基本概念过程是针对一个给定目标的一系列运作步骤,是在过程环境下的一系列有序活动活动是过程对象一次状态改变,也叫过程步任务是完成活动所需要的原子动作泛过程如,实现(或构造)是属于开发过程的一个活动,而详细设计、设计复审、编码、测试计划以及规范开发、代码复审和测试等都被看作是任务,实现(活动)由这些任务构成过程的简单描述实现、管理和支持过程之间的关系软件生命周期过程软件过程又称软件生存周期过程,是软件生存周期内为达到一定目标而必须实施的一系列相关过程的集合它是围绕软件的活动序列,财务、市场活动不属于生存周期过程项目计划就是安排实际的过程,制作项目计划首先要定义过程。项目计划是某个软件过程模型的实例软件过程是人类制作产物的一系列活动,而过去的软件工程是把产物和人分离,只研究产品过程及其质量,假定人力、物力资源是无限大、无限好。现在认识到面对实际资源实施软件过程求相对最佳质量才是有效的。软件生命周期过程软件生存命周期过程包括:

又加入了:各种管理活动、质量保证环境基础设施配置、文档管理等活动

早期:立项、需求分析、设计、编码、测试、交付、维护、退役2.软件生命周期过程标准1994年制订了ISO12207软件生存周期过程标准,它把用于开发一个软件系统的过程分为三类:主过程支持过程辅助过程(组织过程)软件生存周期过程示意图2.软件存命周期过程标准(续)说明:文档:一组活动,用于记录任何其他过程所产生的特定信息配置管理:一组活动,用于捕获和维护开发过程中所产生的信息和产品,以便于后续开发质量保证:一组活动,用于保证产品和相关过程与需求文档和计划保持一致验证:用于检验产品的活动(正确地做事)确认:用于确认产品的活动(做正确的事)2.软件生命周期过程标准(续)说明:联合复审:由两方使用的、评估其他活动的状态和产品的活动

审计:一组活动,用于确定项目与需求、计划和合同的符合程度

问题解决:描述了一组活动,在分析和根除存在的问题时,所要执行的活动

2.软件生命周期过程标准(续)说明:管理:组织的管理活动,包括但不限于项目管理(当它们与其他生存周期过程有关时)

基础设施:由一组建立生存周期过程所需要的活动组成,包括但不限于人力、资本和开销等,它涵盖了为执行一个项目所需要的有关资源

过程改进:由一组用于改进任何其他过程性能的活动组成培训:定义了为项目有关人员提供合适培训的活动2.软件生命周期过程标准(续)说明:这些辅助过程一般都应用于多个项目。组织过程形成了一个组织项目运作环境。事实上,在一些成熟的组织里,应该表示它的过程,并形成其制度,以便有规程地使用。因此,成熟组织已开发和规范了该组织经常引用的一个基础过程(或称组织的标准过程),继之通过剪裁这一过程,满足特定项目的需求和条件。以上这些考虑将对过程改进产生特别的影响。获取过程管理过程运行过程维护过程开发过程辅助过程管理基础设施过程改进培训供应过程需方供方管理者运行管理者用户开发者、维护者支持过程的使用者工程视图运行视图管理视图合同视图支持过程文档配置管理问题解决质量保证支持视图使用使用使用使用使用使用使用使用使用使用验证确认联合评审审计使用软件生存周期过程2.软件生命周期过程标准(续)建立软件生存周期过程,需考虑:软件开发生存周期全局模型的选择

一个全局过程模型通常称之为一个生存周期模型,描述了一个生存周期内一些单个任务或阶段的相互联系。特定阶段及其任务所执行的一些单个过程的选择2.软件生命周期过程标准(续)ISO12207规定了一个完整的软件生存命周期应该有哪些活动,以规定的过程/活动来保证质量。至于什么时候实施什么过程/活动,反复几次合适则根据项目特点定义。1.2过程规范1.2.1什么是过程规范1.2.2过程规范的内容和示例1.2.3过程规范的影响和作用1.2.1什么是过程规范“规范”一词被解释为“明文规定或约定俗成的标准”,或理解为“用来控制或治理一个团队的一系列准则与章程,以及团队成员必须遵守的相关的规章制度”过程规范就是对输入/输出和活动所构成的过程进行明文规定或约定俗成的标准。软件过程规范是软件开发组织行动的准则与指南,可以依据上述各类过程的特点而建立相应的规范,如软件基本过程规范、软件支持过程规范和软件组织过程规范。

软件过程规范的建立软件能力成熟度模型(CMM/CMMI)个体软件过程(PSP)团队软件过程(TSP)IBM-Raional

统一过程(RUP)极限编程(eXtremeProgramming,XP)微软软件框架(MSF)1.2.2过程规范的内容和示例任务规范日常规章制度软件工具

“责任人、参与人员、入口准则、出口准则、输入、输出和活动”等基本内容1.2.3过程规范的影响和作用消极影响的存在和消除

FredBrooks“创造力来自个人,而不是组织结构或者过程”规范存在的必要性过程规范的作用帮助团队实现共同的目标一个规范的软件过程必将能带来稳定的、高水平的过程质量过程规范使软件组织的生产效率更高1.3软件生命周期的过程需求1.3.1软件工程过程1.3.2软件支持过程1.3.3软件管理过程1.3.4软件组织过程1.3.5软件客户-供应商的过程1.3.1软件工程过程工程过程是软件系统、产品的定义、设计、实现以及维护的过程。开发过程:定义并开发软件产品的活动过程,包括需求分析、软件设计和编程等。运行过程:在规定的环境中为其用户提供运行计算机系统服务的活动过程,包括软件部署维护过程:提供维护软件产品服务的活动过程,也就是通过软件的修改、变更,使软件系统保持合适的运行状态,这一过程包括软件产品的移植和退役。1.3.2软件支持过程文档编制配置管理质量保证验证确认联合评审审核问题解决

明确并定义文档开发中所采用的标准、软件过程中所需要的各类文档。详细说明所有文档的内容、目的及相关的输出产品。根据定义的标准与已确定的计划来编写、审查、修改和发布所有文档。按已定义的标准和具体的规则维护文档。软件过程或项目中的配置项(如程序、文件和数据等有关内容)被标识、定义。根据已定义的配置项建立基线,以便对更改与发布进行有效的控制,并控制配置项的存储、处理与分发,确保配置项的完全性与一致性。记录并报告配置项的状态以及已发生变更的需求。针对过程或项目确定质量保证活动、制定出相应的计划与进度表。确定质量保证活动的有关标准、方法、规程与工具。确定进行质量保证活动所需的资源、组织及其组织成员的职责。有足够的能力确保必要的质量保证活动独立于管理者以及过程实际执行者之外进行开展和实施。在与各类相关的计划进度保持一致的前提下,实施所制定的质量保证活动。根据需要验证的工作产品所制定的规范(如产品规格说明书)实施必要的检验活动:有效地发现各类阶段性产品所存在的缺陷,并跟踪和消除缺陷。根据客户实际需求,确认所有工作产品相应的质量准则,并实施必需的确认活动。提供有关证据,以证明开发出的工作产品满足或适合指定的需求。与客户、供应商以及其他利益相关方(或独立的第三方)对开发的活动和产品进行评估。为联合评审的实施制定相应的计划与进度,跟踪评审活动,直至结束。判断是否与指定的需求、计划以及合同相一致。由合适的、独立的一方来安排对产品或过程的审核工作。以确定其是否符合特定需求提供及时的、有明确职责的以及文档化的方式,以确保所有发现的问题都经过相应的分析并得到解决。提供一种相应的机制,以识别所发现的问题并根据相应的趋势采取行动。1.3.3软件管理过程1.3.3软件的管理过程项目管理过程是计划、跟踪和协调项目执行及生产所需资源的管理过程。项目管理过程的活动,包括软件基本过程的范围确定、策划、执行和控制、评审和评价等。质量管理过程是对项目产品和服务的质量加以管理,从而获得最大的客户满意度。此过程包括在项目以及组织层次上建立对产品和过程质量管理的关注风险管理过程,在整个项目的生命周期中对风险不断的识别、诊断和分析,回避风险、降低风险或消除风险,并在项目以及组织层次上建立有效的风险管理机制子合同商管理过程,选择合格的子合同商并对其进行管理的过程1.3.4软件组织过程

业务规划过程是为组织与项目成员提供对愿景的描述以及企业文化的介绍,从而使项目成员能更有效地工作。定义过程是建立一个可重复使用的过程定义库,从而对其它过程等提供指导、约束和支持改进过程是为了满足业务变化的需要,提高过程的效率与有效性,而对软件过程进行持续的评估、度量、控制和改善的过程人力资源和培训过程,为项目或其它组织过程提供培训合格的人员所需的活动

基础设施过程是建立生存周期过程基础结构、为其他过程建立和维护所需基础设施的过程1.3.5软件客户-供应商的过程客户-供应商过程是内部直接影响到客户、外部直接影响开发、向客户交付软件以及软件正确操作与使用的过程,包括软件获得、客户需求管理、提供软件、操作软件以及提供客户服务等5个子过程获取过程从确定需要获取的软件系统、产品或服务开始,然后制定和发布标书、选择供方和管理获取过程,直到验收软件系统、产品或服务。该过程的成功实施会导致最终生成一个明确的合同或条约,清楚地描述出客户与供应方的期望、职责与义务。在整个软件生命周期中,针对不断变化的客户需求加以收集、处理和跟踪,并建立软件需求的基准线,以作为项目中软件开发活动过程和产品度量和变更管理的基础按客户、事先规定的要求对软件进行包装、发布与安装的活动过程确定包装、发布以及安装软件的有关要求。软件有效地被安装与使用。软件达到需求定义中所规定的质量水平。确定和管理由于引人并发操作软件而带来的操作上的风险。按要求的步骤和在要求的操作环境中运行软件。提供操作上的技术支持,以便解决操作过程个出现的问题.确保软件(或主机系统)有足够的能力满足用户的需求。基于实施情况,确定客户所需要的支持服务。通过提供适当的服务来满足客户的需求。针对客户对产品本身及其相应的支持服务的满意程度进行持续的评估1.4软件生命周期标准1.4.1ISO/IEC标准体系1.4.2IEEE标准体系1.4.3标准体系全貌图1.4.1ISO/IEC标准体系ISO/IEC12207:1995-软件生存周期过程

从多个角度说明了软件生命周期各个过程中的活动,对规范软件开发过程,协调各类人员之间的关系,都具有指导作用。

ISO/IEC15504软件过程评估标准

能力确定模式,帮助评估并确定一个潜在软件供应商的能力。过程改进模式,帮助提高软件开发过程的水平。自我评估模式,帮助判断是否有能力承接新项目的开发。ISO/IEC标准体系的构成软件过程系统过程原理12207/AMD1的过程结果15288要素标准12207/14764TR15846TR1632615939145981591015288标准部分指南TR15271ISO9000-3TR92941801915288指南1.4.2IEEE标准体系IEEE1074:1997-生命周期过程的标准。IEEE1540-01-软件风险管理。IEEE1517-99-软件复用过程。IEEE1219-1998-软件维护过程。IEEEStd730-2001-软件质量保证计划。IEEEStd1012-验证与确认。IEEEStd1028-评审。1.4.3标准体系全貌图1.5软件过程建模1.5.1软件过程建模型1.5.2基于UML的过程建模1.5.3基于IDEF3的过程建模1.5.4基于Agent的自适应软件过程模型1.5.5基于SOA的软件过程模型1.5.1软件过程模型瀑布模型螺旋模型、增量模型、迭代模型V模型并发过程模型极限编程(XP)IBM-Rational统一过程(RUP)1.5.2基于UML的过程建模用户模型视图,从用户的视角来表示系统。用例(Use-case)描述使用场景,可用于用户模型视图的建模方案。结构模型视图,从系统内部来分析数据和功能,属于静态结构建模。行为模型视图,描述系统动态或行为方面的各种元素间交互或协作关系,属于动态结构建模。实现模型视图,针对如何构建(实现)系统的结构和行为时的表示。环境模型视图,表示待实现的系统环境的结构和行为。UML图用例模型:对应用例图、序列图、协作图、状态图和活动图分析模型:对应类图和对象图(包括子系统和包)、序列图、协作图、状态图和活动图。设计模型:对应类图和对象图(包括子系统和包)、序列图、协作图、状态图和活动图。开发模型:对应配置图(包括活动类和组件)、序列图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论