文档介绍:上海交通大学
硕士学位论文
软件过程与软件过程改进
姓名:陈亭
申请学位级别:硕士
专业:企业管理
指导教师:陈俊芳
软件过程与软件过程改进摘要关键词过去,软件开发完全依赖于个人或者一个优秀的团体,但仅仅建立在可得到和管理实践等过程基础设施,通过组织的软件过程,来实现软件产品开发的可重复,不断提高软件开发的能力。卜分析和改进,并结合具体的实践演示了软件过程改进的道路。在信息技术快速发展的同时,软件行业却日益显得困难重重,甚至出现了“软件危机”。随着对软件产品的要求日益提高,软件产品的规模日益扩大,软件开发却经常陷于进度极度延迟,成本不断超出预算,软件的质量难以保证的困境。如何提高软件产品的生产率和质量成了迫切需要解决的问题。特定人员上的成功不能为组织软件产品的生产率和质量的长期提高打下基础。软件开发中的问题需要从软件过程中寻找答案。软件组织需要建立有效的软件工程软件过程是软件组织进行软件开发所遵循的标准和规程。它既包括需求管理、项目计划、项目控制、质量保证和配置管理等一些管理活动,也包括了分析、设计、编码和测试等的工程活动。这些标准和规程保证了软件开发能够以一种一致的可重复性的模式进行,奠定了随后的定量化软件过程改进的基础。本文的第一部分详细介绍了一个理想的软件过程所需要实现的活动、规程和工作产品。软件过程测量、分析和改进是基于定性化软件过程建立基础上的定量化软件过程改进手段。软件过程测量可以获得对软件过程运行的详细信息;性能分析可以更好地认识软件过程能力,更好地计划和控制软件项目;稳定性分析能够发现和消除过程中的异常因素,从而提高过程的可预测性。测量、分析和改进提供了一条不断提高软件过程能力的道路。在第二部分中,本文给出了如何进行测量、软件过程,软件过程改进,软件过程测量
,软件过程与软件过程改进,,“”.,.,甌甌,,.,,,■
:●
第一章软件开发与软件过程第一节软件过程业运作所不可欠缺的部分。通过企业在信息技术上的巨大投资带来的资本深化,信息技术行软件的质量难以保证的困境。如何提高软件产品的生产率和质量成了迫切需要解决的问题。和技术并不能解决软件开发所面临的所有问题。而且随着软件产品复杂度的提高,软件开发和工具中获益。软件组织的基本问题是不能够管理其软件过程,软件开发中的问题需要从软件过程中寻找答案。在过去,软件开发完全依赖于个人或者一个优秀的团体。而随着项目规模的扩大,个人的因素已经不能保证整个项目获得良好的交流、协调和一致。没有一个组织范围的软件过程定义,也使得能否重复一个成功的案例完全取决于是否由同样的人进行同样理软件过程》一书中,构造了一个软件过程成熟度的框架模型来实现一个受控的软件过程,自二战以来,由软硬件代表的信启、技术获得了高速的发展,日益成为人们日常生活和企业内部的生产率飞速提高,以及信息技术对其它行业生产率提高的外溢作用,信息技术对全行业的生产率提高做出了巨大的贡献,成为支持经济发展的重要力量。但是在信息技术快速发展的同时,软件行业却日益显得困难重重,甚至出现了“软件危机”。~方面硬件技术按照摩尔定律以指数方式不断快速发展,硬件产品的功能和容量获得了上亿倍的提高,另一方面,软件产品的生产率却显得相当低下。随着对软件产品的要求日益提高,软件产品的规模日益扩大,软件开发却经常陷于进度极度延迟,成本不断超出预算,虽然人们希望通过应用新的软件方法和技术,如结构化编程,面向对象的开发,和客户机/服务器等,来提高生产率和质量的希望。但经过了几十年,软件行业发现新的软件方法在功能、成本、时间和质量上的问题越来越严重。于是软件组织开始意识到,在无纪律混乱的软件开发状态下,组织不可能从较好的方法的项目。仅仅建立在可得到特定人员上的成功不能为组织软件产品的生产率和质量的长期提高打下基础。软件组织需要建立有效的软件工程和管理实践等过程基础设施,通过组织的软件过程定义,来实现软件产品开发的可重复,不断提高软件开发的能力。过程就是为获得某一结果而进行的一系列活动、变化或操作。戴明认为为了保持竞争力,提高质量和生产率,则需要集中于生产产品和提供服务的过程来提高质量和生产率。生产产品和提供服务活动是一系列相互联系,不可分割的过程集合,需要充分地对这些过程提供支持,并通过改进过程来提高过程性能。戴明的循环体现了过程思考的方法,通过计划、执行、检查和改进来不断地提高过程的能力。瓾紫冉ü趟伎嫉姆椒扇氲饺砑7⒅校谒瓿霭娴摹豆指导软件过程持续改进。在其之后,出现了很多的软件过程改进的方法和标准,如取U庑┓椒ê捅曜都集中于改进软件过程来提高软件开发的质量和生产率。,,软件能力成熟度模型虸/】