• 1.摘要
  • 2.基本信息
  • 3.简介
  • 4.作用
  • 5.条件
  • 6.成熟等级
  • 6.1.初始级
  • 6.2.可重复级
  • 6.3.定义级
  • 6.4.定量管理级
  • 6.5.优化级
  • 7.关键过程
  • 8.配置管理

软件过程

软件过程为一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等范畴。

基本信息

  • 中文名

    软件过程

  • 外文名

    Software Process

简介

软件过程(Software Process)是指一套关于项目的阶段、状态、方法、技术和开发、维护软件的人员以及相关Artifacts(计划、文档、模型、编码、测试、手册等)组成。目前有三种方法:UP(the unified process),The OPEN Process,OOSP(TheObject-Oriented Software Process)。软件过程(Software Procedure)是指软件生存周期所涉及的一系列相关过程。过程是活动的集合;活动是任务的集合;任务要起着把输入进行加工然后输出的作用。活动的执行可以是顺序的、重复的、并行的、嵌套的或者是有条件地引发的。

软件过程可概括为三类:基本过程类、支持过程类和组织过程类。基本过程类包括获取过程、供应过程、开发过程、运作过程,维护过程和管理过程。支持过程类包括文档过程、配置管理过程、质量保证过程、验证过程、确认过程、联合评审过程、审计过程以及问题解决过程。组织过程类包括基础设施过程、改进过程以及培训过程。

软件过程主要针对软件生产和管理进行研究。为了获得满足工程目标的软件,不仅涉及工程开发,而且还涉及工程支持和工程管理。对于一个特定的项目,可以通过剪裁过程定义所需的活动和任务,并可使活动并发执行。与软件有关的单位,根据需要和目标,可采用不同的过程、活动和任务。

软件过程是指软件整个生命周期,从需求获取,需求分析,设计,实现,测试,发布和维护一个过程模型。一个软件过程定义了软件开发中采用的方法,但软件过程还包含该过程中应用的技术——技术方法和自动化工具。过程定义一个框架,为有效交付软件工程技术,这个框架必须创建。软件过程构成了软件项目管理控制的基础,并且创建了一个环境以便于技术方法的采用、工作产品(模型、文档、报告、表格等)的产生、里程碑的创建、质量的保证、正常变更的正确管理。

作用

有效的软件过程可以提高组织的生产能力:

■理解软件开发的基本原则,可以帮我们做出明智的决定;

■可以标准化你的工作,提高软件的可重用性和Team间的协作;

■我们所采用的这种机制本身是不断提高的,我们可以跟上潮流,使自己不断接收新的、最好的软件开发经验;

有效的软件过程可以改善我们对软件的维护:

■有效地定义如何管理需求变更,在未来的版本中恰当分配变更部分,使之平滑过渡;

■首先在具体操作和相关支持中定义如何平滑地改造软件,并且这种具体操作和支持是可实施的;不可实施的软件过程将很快被束之高阁;

为什么要采用软件过程?归根结底,形势所逼!

条件

CMM(Capability Maturity Modeling)作出了明确的定义(由TheSoftware EngineeringInstitute提出 ,国内我就知道用友在实施中)

成熟等级

初始级

在初始级,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。处于这一等级的企业,成功与否在很大程度上决定于有杰出的项目经理与经验丰富的开发团队。因此,能否雇请到及保有能干的员工成了关键问题。项目成功与否非常不确定。虽然产品一般来说是可用的,但是往往有超经费与不能按期完成的问题。