四川蜀通信息科技有限公司,国家高新技术企业,智慧城市公共安全综合集成商

栏目分类

软件研发

周期和阶段

从管理的角度,即从业务和经济的角度来看,软件的生命周期包括四个主要阶段 [1]  :
  • 起始阶段(Inception)-- 有一个好的想法:具体构想出终于产品的设想和它的业务案例,确定项目的范围 。
  • 细化阶段(Elaboration)--计划必要的活动和所需资源,具体确定功能并设计构架 。
  • 构建阶段(Construction)-- 构建产品, 发展最初的设想、构架和计划,直到一个能够交付给用户的产品(完毕后的设想)完毕。
  • 移交阶段(Transition)-- 将产品移交用户使用,包含:制造、交付、培训、支持、维护,直到用户惬意。
完毕这4个阶段称为一个开发周期,它产生的软件称作第一代(generation)。 除非产品的生命结束, 一个现有产品能够通过反复下一个同样的起始、细化、构建和移交四阶段,各个阶段的侧重点与第一次不同,从而演进为下一代产品。 这个时期我们称之为演进(evolution)。最后伴随着产品经过几个周期的演进,新一代产品也不断被制造出来。比如,演进周期的启动可能由下面这几项触发:用户建议增强功能、用户环境的改变、重要技术的变更,以及应对竞争的需要。
实际中,周期之间会有轻微重叠:起始阶段和细化阶段可能会在上一个周期的移交阶段未结束时就开始了。

迭代

从技术的角度来 看,软件开发能够视为一连串的迭代过程,通过这些迭代被开发的软件得以增量演进。 每次迭代都以一个可运行的产品的公布而结束, 该产品可能是完整版本号的一个子集,但从project的或用户的角度来看是实用的。 每次公布都伴随一些支持性工件:版本号描写叙述、用户文档和计划等。
一次迭代包含下面活动: 计划、分析、设计、实施和测试。 依据迭代在开发周期中所处位置的不同,这些活动分别占不同的比例。
管理角度和技术角度之间是协调的, 并且各个阶段的结束还和各次迭代的结束保持同步。换句话说,每一个阶段能够分为一次或多次迭代过程。