第五讲:CMM关键过程域(上)本文关键字 转贴文档 广告 第五讲:CMM关键过程域(上) 沈阳东软软件股份有限公司
软件工程过程组 -------------------------------------------------------------------------------- 东软经过两年多的SW-CMM研究和实施,在软件过程管理方面取得了很大的成效,其中一个重要方面就是将软件过程制度化。从本期讲座开始,我们将着重介绍东软关于不同软件过程的实践经验。这些实践以SW-CMM理论为指导,经过试点项目的检验,已经在东软得到了推广。目前,东软已建立起包括项目管理、软件工程及组织管理等各方面内容的标准软件过程。 需求管理 保证软件产品满足客户需求是进行软件项目开发的主要任务。在项目初期及开发过程中,经常会碰到客户不明确的需求及频繁的需求变更,正确地对待并处理这种情况可以保证软件产品在预计的进度和成本范围内提交。需求管理过程的目标是管理和控制需求,维护软件计划、产品和活动与需求的一致性,并保证需求在软件项目中得到实现。 在东软的国际合作项目中,结合项目的特殊性,东软的需求管理过程主要包括需求确认、需求评审、需求跟踪和需求变更活动。 软件开发始于需求确认。需求管理过程要求指定明确的负责人负责与客户协商并确认需求。协商确认客户需求包括确认非技术需求、技术需求文档及编制需求跟踪矩阵: ●
非技术需求一般在协议、条件和合同条款中描述,包括提交产品、提交日期和里程碑等内容; ●
技术需求描述了系统的功能需求、性能需求、设计约束、编程语言和界面需求等多方面内容; ●
需求跟踪矩阵是在充分了解技术需求的基础上编制的,需求跟踪矩阵的建立使项目经理能够跟踪每一需求的实现状态。 在需求被纳入到软件项目之前,要求软件工程组评审需求。在东软,一般情况下客户会参与项目需求的评审。评审的对象是需求确认的结果,包括非技术需求文档、技术需求文档和需求跟踪矩阵。评审的主要目的在于: ●
确定分配需求用软件来实现是可行的、适当的; ●
需求被清晰、正确地描述; ●
需求是一致的、相互不矛盾的; ●
需求是可测试的。 评审的结束标志着与客户协商确认需求的结束。通过高级管理者批准的需求文档应置于软件基准库中进行配置管理和控制,同时已批准的需求作为软件项目策划的主要输入,要纳入到软件项目之中。 需求跟踪是需求管理的一项重要内容。需求跟踪的主要意义在于获得需求目前的实现状态,确保用户所有的需求都得到满足。可靠的跟踪能力信息可为用户在需求变更、系统维护、关键成员离开、系统再设计和类似系统设计等很多方面为组织提供参考和指导,并可以减少风险和提高项目成功的可能性。需求跟踪是一件很烦琐的事情,可以用很多工具实现,上面提到的“需求跟踪矩阵”就是一种简单的需求跟踪工具。 一般来讲,国际项目的客户比较成熟,但是在项目进行过程中依旧会经常发生变更。需求变更会引起计划及其他软件工作产品的变更。东软实施CMM的项目都是遵照组织规定的变更流程进行需求变更,并通过需求变更的影响分析,考虑风险、成本和进度等多方面因素,以确定需求变更的实施策略。需求变更的过程需要跟踪,同样,变更的需求也要进行跟踪。 软件配置管理 需求管理保证了生产的软件产品能满足客户的需求,而有效地控制软件产品是软件开发的另一个重要方面。软件配置管理的目的就是建立和维护在整个软件生存周期内软件产品的完整性。很早以前,东软的软件开发就有配置管理的概念,但发挥的作用不大。目前,基于CMM标准,东软的配置管理过程得到了规范,配置管理的概念贯穿于整个软件开发过程中。 配置管理活动主要包括标识软件工作产品、进行配置控制、记录配置状态和配置审计。 配置标识是配置管理的基础。对外交付的软件产品,指定的内部软件工作产品及指定的内部使用的支持工具都要进行配置标识。唯一的标识符给定了相应产品的基本配置管理信息。软件基准库是识别配置项和配置管理信息的存储环境。 配置控制是配置管理的核心工作。配置控制主要包括存取控制、版本控制、变更控制和产品发布4个方面: ●
存取控制设定了软件开发人员对软件基准库的存取权限,保证软件开发过程及软件产品的安全性; ●
版本控制作为配置管理的基本要求,使得组织在任何时刻都可获得配置项的任何一个版本; ●
变更控制为软件产品变更提供了一个明确的流程,要求任何进行配置管理的软件产品变更都要经过相应的授权与批准才能实施; ●
产品发布的控制保证了提交给客户的软件产品是完整的、正确的。 配置管理通过对配置状态的记录来协调对软件产品的控制。及时记录并通知配置管理状态信息可保证软件开发人员了解配置项的历史与当前状态,避免由于沟通不当而造成软件开发版本的混乱。很多配置管理工具都提供了自动记录配置状态的功能。 配置审计用来验证软件基准库中软件产品的一致性和完整性。功能审计和物理审计作为配置审计的两个方面分别审计检验软件基准库内容的一致性和完整性。一般情况下,产品发布之前,需要对软件基准库执行一次完全的配置审计过程,以保证产品发布的正确执行。 综上所述,软件配置管理活动贯穿整个软件生命周期,与开发活动紧密联系,其最终目标是实现软件产品的完整性、一致性和可控性,使得软件产品最大程度地满足客户需求。 软件质量保证 如何保证软件产品的高质量是软件生产的目标。软件质量保证过程作为一种第三方的、独立的审查活动贯穿于整个软件生产过程。软件质量保证的目的是为管理者提供软件产品生产过程及软件产品的可视性。东软在实施软件质量保证过程中的一个明显的效果就是促进了规范化过程的实施,保证了组织制定的软件过程得到项目人员的有效执行。 软件质量保证过程主要内容可概括为三方面: ●
首先,通过监控软件的开发过程来保证产品的质量; ●
其次,保证生产出的软件和软件开发过程符合相应的标准与规程; ●
最后,保证软件产品、软件过程中存在的不符合问题得到处理,必要时将问题反映给高级管理者。 结合这三项内容,软件质量保证过程主要有审计、评审和处理不符合问题等三项主要活动。 ●
审计包括对软件工作产品、软件工具和设备的审计。审计是为了评估软件工作产品及工具设备是否符合组织和项目的标准,鉴别偏差及疏漏以便跟踪评价。 ●
评审是指对软件过程的评审,其主要任务是保证组织定义的软件过程在项目中得到了遵循。审计和评审的结果记录在相应的报告中。 ●
对于审计和评审过程中发现的不符合问题,软件质量保证负责人要进行跟踪和处理。一般处理问题的原则是发现问题首先进行项目内部处理,内部不能解决的,依据管理层次层层提升,直至问题得到解决。 软件质量保证过程的核心在于验证产品和活动的符合性,而软件质量保证过程并不对软件产品的质量负责。
如果您希望与本文章的作者或其所在机构,进一步交流,请联系:畅享网 姜小姐 jill.jiang@amteam.org | 021-51096826-112 | 在线联系 |
|
|
|