CMMI指导下信息系统需求变更度量框架的构建与应用

2011-04-18 02:59□李
区域经济评论 2011年8期
关键词:度量信息系统框架

□李 萍

(1.上海理工大学管理学院,上海 200093;2.盐城工学院经济与管理学院,盐城 224051)

随着社会信息化进程的加剧,面对日益激烈的市场竞争,企业信息化已经成为促进企业高速发展的催化剂。企业信息化是在优化企业现有流程的基础之上实施的,其核心就是信息系统[1]。信息系统在企业中的使用越来越广泛,用户对信息系统的要求也越来越高,这使得信息系统的开发成为了一项挑战性的工作。需求开发是信息系统开发过程中的关键性一步,而需求管理是提高信息系统开发质量的重要环节。需求是信息系统开发的依据,在信息系统开发过程中,最理想的状况是开发人员在需求获取阶段一下子就能够发现并确定所有的需求。但是由于多方面的原因,在实际开发过程中需求是经常变化的,并且这种变更将贯穿于信息系统开发的整个生命周期中。信息系统项目开发的实践证明,需求变更的管理不善往往会导致信息系统开发项目的失控,从而使得整个项目开发进度滞缓、成本突增,甚至失败。因此,为了保证系统开发的进度、成本和质量,如何对需求变更加以有效的管理,便成为信息系统开发中一个迫切需要解决的问题。

H.詹姆斯·哈林顿曾经说过:“量化管理是第一步,它导致控制,并最终实现改进。如果你不能量化某些事情,你就不能理解它;如果你不能理解它,你就不能控制它;如果你不能控制它,你就不能改进它。”简单来说,不能度量,就无法控制,也就无法管理,度量是管理的基础。对于一般的项目开发来说,如果不能度量,就难以把握现状,难以预测趋势,难以真正加以控制和管理,也就难以保证项目的开发质量。因此,在信息系统开发过程中,为了能够有效地管理和控制需求变更,我们考虑将度量的方法引入需求变更管理中,并试图就此构建一个切实可行的信息系统需求变更度量框架。

一、框架指导方法:用CMMI指导需求变更度量

为了确保所构建的信息系统需求变更度量框架的合理性,我们迫切地需要一种科学的方法来指导它。目前业界比较流行的指导方法有ISO9000,全面质量管理(TQM)、六西格玛(6sigama)和CMMI等。ISO9000、TQM以及6sigama虽然致力于质量改进,强调需求管理,但流程繁复,相比来说CMMI的操作性较强,启动更容易,参与性更强。CMMI(Capability Maturity Model Integration)即能力成熟度集成模型,是由美国卡内基·梅隆大学的软件工程研究所(SEI)在美国国防部的资助下所创立的。CMMI是组织进行软件过程改善和软件评估的一个有效的指导框架,其目的是提高产品和服务的开发、获取和维护能力。

对需求管理的指导——CMMI定义了5个组织成熟度级别,包含25个过程域(PA,Process Area),这些过程域涵盖了信息系统生命周期的各个领域。需求管理属于成熟度2级(受管理级)的过程域,需求变更管理是过程域中一个特定实践,CMMI对需求变更管理提出了明确的指导。CMMI指出,在项目生命周期中,需求在不断变化,对需求变更要进行控制,具体工作包括获取需求变更,跟踪易变的需求,记录需求变更及维护其变更历史和评价需求变更的影响等。

对度量的指导——CMMI模型中有独立的度量与分析过程域,主要包含度量和分析两部分内容,如图1所示。度量是为获得过程或产品的表征数据;分析是对数据进行分析,发现不一致、发现趋势和发现问题。此过程域定义严格,流程清楚,目标明确,可以用它来指导软件过程中的度量活动[2]。此外,值得一提的是,该过程域与需求管理过程域是相关的,由此将CMMI作为信息系统需求变更度量的指导方法,是比较合适的。

图1CMMI的度量和分析过程域

二、框架构建:基于CMMI的信息系统需求变更度量框架

在CMMI模型的指导下,我们可以构建出信息系统需求变更度量框架,如图2所示。该框架主要有四部分构成:计划度量、执行度量、度量分析和度量评估。值得一提的是,从计划度量到度量评估,每一次度量活动,将会继续影响下一次度量活动,因此整个度量过程是循环迭代的。此外,CMMI模型在指导实际度量工作中也存在着缺陷,它指出了度量的一般流程,但对于其各具体度量活动,比如度量目标的确定、度量元的设计、度量数据的收集以及度量分析等活动的展开方法并未明确说明,对于这些不足,本文所提出的需求变更度量框架将予以补充。

图2 基于CMMI的需求变更度量框架

(一)计划度量

信息系统需求变更度量的进行应该是从计划度量工作开始的。计划度量,根据CMMI模型,具体又可以分为三个阶段:

1.确定度量目标

度量目标确定是信息系统需求变更度量的首要任务,只有在目标确定之后,才能由此定义度量及进行后续工作。那如何合理制定度量目标呢?度量目标是对信息需要的细化,是信息需要的作用体现,因此,获取组织的信息需要是度量目标制定的关键。目前信息需要的获取方法最常用的有问卷调查法、头脑风暴法、访谈法以及历史数据分析法等。信息需要获取后,并不是所有的信息需要都要满足。实际操作时,还需要考虑资源的获取能力、信息收集的成本以及技术的可行性等来确定哪些信息需要是可以满足的。信息需要进一步确认之后,就可以确定度量目标了。在信息系统开发过程中,为了提高系统开发质量,可通过上述方法获取信息需要以确定度量目标。比如,开发人员的信息需要可能是“了解信息系统项目开发过程中的需求变化情况”,根据该信息需要确定其度量目标可能是信息系统的“需求变更水平”等,具体见表1。

2.设计度量元

度量目标确定之后,就可以设计相关的度量元了。针对“如何确定度量元”这一问题,笔者参阅了大量文献,现有研究中用得比较多的方法是GQM或其改进方法GQ(I)M,在本文中我们主要借鉴GQM的思想。GQM法的基本思想是:首先确定一组目标(goal);其次针对各个目标,提出可能会遇到的问题(question),来定义这个目标;最后,针对每一个问题再给出一组测量方法,并用这一组测量方法测量出来的度量元(metric)就是对这个问题的回答[3]。笔者基于GQM思想,在已有研究成果的基础上,设计度量元如表1所示。

表1 信息系统需求变更度量元设计

3.规定度量规程

根据CMMI模型中的度量和分析过程域,度量规程主要包括两部分:一是数据收集及存储规程的规定,二是分析过程的规定。数据收集及存储规程主要是确定度量数据的来源和度量数据的值,建立数据收集机制,审查和修改数据收集和存储规程,必要时可允许修改度量值和度量目标。分析规程主要是包括对将要进行的分析和将要制备的报告做出规定并安排优先顺序,选择适当的数据分析方法和工具,为数据分析和通报分析结果制定管理规程,审查分析和报告的内容范围和格式的建议,必要时可允许修改度量值和度量目标,规定用以评价分析结果可利用性以及度量和分析活动执行情况的准则[4]。

(二)执行度量

计划度量工作完毕后,就可以开始执行度量了。执行度量涉及度量数据的收集、数据的验证以及数据的存储。

1.收集度量数据

度量数据的来源主要有两个方面,一是历史数据,用来预测和计划项目;二是实际数据,随着项目的进展而及时进行数据采集。管理需求变更是CMMI的需求管理过程域中的一个特定实践。每次变更发生时,必须及时收集相关度量数据。数据收集的内容主要包括:度量记录员;进行度量的时间;度量数据的值、类型和格式;可接受的值或值的范围等。

2.验证数据

数据进入存储之前必须经过检验,因为不可靠的数据就会产生不可靠的结果。在定义或记录数据时总会发生错误和遗漏,最好的补救措施就是:在尽可能靠近数据源的位置进行数据的完整性检查,以尽早识别错误、确定遗漏数据的来源。

3.存储数据

将项目的历史信息或研究结果存储在历史数据库里,便于基线度量和目标管理。对于信息系统开发组织来说,建立度量库是非常重要的。信息系统开发中变更得到确认后,其变更信息,如变更时间、类型以及原因等,都会存储在度量库里,为当前或以后项目提供决策。

(三)度量分析

度量分析是将当前收集到的数据以及储存的历史数据,进行汇总分析后,与既定的目标进行跟踪比较,得出相应的结论,用以指导信息系统项目开发。目前,学术界对于需求变更度量的分析讨论大都停留在简单观察分析和稳定性分析这两个层面上。简单观察分析主要是对数据进行整理,依托于各类数据分析软件,如Excel、Spss及Matlab等,实施并绘制成各类图形,如饼图、条形图、直方图、折线图、散点图、帕累托图,通过这些图形观察出直观的结论。例如,张献国等(2006)[5]通过统计分析方法,对需求变更、需求分布和需求状态等数据进行排序、分类等,绘制成图形,及时了解信息系统项目需求的稳定性、需求变更的原因、需求及其变更的分布情况。简单观察分析所得结果虽然直观,但其使用对分析者提出了较高的要求。它需要分析者具有比较丰富的工程经验,能够对数据比较敏感,善于从不同的视角发现问题。而稳定性分析主要是基于过程稳定性的原理,通过对一定量的数据进行过程稳定性的判断分析,来发现特殊偏差,排除异常点,由此提出改进建议。例如,王青等(2003)[6]以统计过程控制原理对软件项目的需求变化进行统计控制,并对异常波动进行度量分析。统计过程控制是比较成熟的质量管理手段,但也有它的缺陷,如对于两个项目组之间是否真正具有可比性不好判断。此外,上述两种分析方式成立的前提是假设各个需求变更相互独立的,但实际信息系统开发过程中,它们之间往往是相互影响的,如某一个需求变更往往会影响其他需求。因此,对于信息系统需求变更度量有必要进行相关性分析,如考虑需求变更影响。这也是后期要开展的研究工作。

(四)度量评估

度量评估应包括四个方面的内容,具体包括:(1)评估度量元,判断度量元是否满足项目的信息需要;(2)评估度量过程,检验度量过程的效率,如度量能力等;(3)评估结果,识别在度量产品和过程评估中发现的经验教训,用于项目改进;(4)识别和实施改进活动,根据评估结果,应用于当前的项目中,也可用于未来的项目改进中。

除此之外,采用合适的评估方法也是非常重要的。SCAMPI已经成为目前软件行业较为流行的度量评估方法。SCAMPI是基于标准CMMI评估方法的过程改进,它可以通过量化的方式找出公司软件开发过程中的优势与不足,准确评估其软件开发能力,从而确定软件开发成熟级别。

三、框架应用分析

CMMI是一种行之有效的、能够提高软件开发质量的方法。将CMMI模型应用于信息需求变更度量框架的构建,有助于信息系统需求变更管理的规范化。基于CMMI的信息系统需求变更管理度量框架的构建对信息系统需求变更管理有一定的指导意义和理论价值,但是在实际工作中,对其应用的条件也是有要求的。这就要求信息系统开发组织能够结合自身情况,努力创造条件,在信息系统项目开发进行中注意做好相关方面的工作。

(一)健全度量指标体系

决策的质量依赖于信息的质量,信息的质量依赖于精准的度量,而精准的度量当然与健全有效的指标体系是分不开的。一个设计科学的指标体系可以描述现象的全貌和发展的全过程,并说明研究对象各个方面相互依存和相互制约的关系。因此,为了提高信息系统的开发质量,保证度量的准确性,信息系统开发组织可结合历史经验,根据项目的实际情况,建立一套健全有效的度量指标体系。健全有效的指标体系必须满足:指标要素齐全适当,主辅指标功能匹配以及满足多方信息需要。这也可以成为信息系统开发组织构建度量指标体系的依据。

(二)控制活动

如前所述,信息系统需求变更度量框架中的各度量活动不是独立的,从计划度量到度量评估,每一次度量活动,都会继续影响下一次度量活动,整个度量过程是循环迭代的。因此,为了保证其效率,对于框架中的度量活动的协调和控制是很有必要的。具体可以从三个方面来加强度量活动的控制:一是整合已有资源;二是对各环节实行必要的监控,并有可靠的反馈机制;三是建立后续跟踪改进机制,确保控制活动有效实施。

(三)有效的信息沟通

信息系统的需求开发需要各类人员的参与,如有专家、系统投资人、用户、系统分析人员、系统开发人员,这些人以不同的角度和不同的知识背景,来获得信息系统的需求,可能得到的结果有差异。这在一定程度上会影响到信息系统的需求变更管理。针对这一情况,构建有效的信息传递模式对于信息系统的需求开发是非常重要的。在对信息系统需求变更度量中,应对各方信息进行充分整合,确保信息能得到有效沟通,即在主体中向下、平行和向上流动。

[1]张素芳,刘建准,徐刘靖.企业信息系统需求分析中的用户参与有效性研究[J].情报杂志,2008,(12):115-116.

[2]万邦睿,丁晓明.基于CMMI的软件测试过程度量研究[J].计算机工程与设计,2007,(11):2530-2531.

[3]陈革,刘建丽.GQM软件度量方法在需求分析阶段的应用[J].北京工业大学学报,1999,4(25):102-103.

[4]乐建兵,杨建梅,赵海霞.软件开发中的度量技术应用[J].科技管理研究,2006,(1):208-209.

[5]张献国,刘铁英,徐智文.信息系统需求变更统计分析度量方法[J].内蒙古大学学报(自然科学版),2006,37(1):89-92.

[6]王青,李明树.基于SPC的软件需求度量方法[J].计算机学报,2003,26(10):1312-1315.

猜你喜欢
度量信息系统框架
鲍文慧《度量空间之一》
企业信息系统安全防护
模糊度量空间的强嵌入
框架
广义框架的不相交性
迷向表示分为6个不可约直和的旗流形上不变爱因斯坦度量
基于区块链的通航维护信息系统研究
信息系统审计中计算机审计的应用
基于SG-I6000的信息系统运检自动化诊断实践
地质异常的奇异性度量与隐伏源致矿异常识别