频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

提高软件过程改进的实际效果(1)

作者: 黎学文/胡海涛  出处:软件世界 2008-03-20 15:43    砖    好    评论   进入论坛
阅读提示:造成问题的症结主要是在流程的执行环节上,没有一个从上到下的自动化的流程执行体系,导致过程改进始终停留在书面文档上,没有真正落到实处。笔者就这个话题,结合所在公司几年来的实际经验,介绍如何利用软件工程工具来切实提高软件过程改进的实际效果。

很多正在实施软件过程改进的公司或许有这样一些困惑:他们实施过程改进有一段时间了,花费的时间和金钱也不少,但是却为何收效甚微?的确,不少公司花费了巨资请了CMMI的咨询机构对公司的软件开发过程体系进行咨询和培训,从无到有建立了软件过程改进小组(SEPG),制定了一套比较完善的流程框架体系,同时对研发人员进行过若干次培训。经历了这些努力后,期待着公司研发人员的行为比以前要规范,软件质量比以前要好,客户比以前更满意,但实际情况是这样的吗?答案往往不尽如人意。不少公司甚至出现没有预料到的负面现象:开发人员比以前更抵制流程,流程执行表面化,开发效率反而降低,产品质量没有明显的改善。因此,他们不禁要问,到底是什么出了问题?

笔者所在的公司同样遇到类似的问题,经过长期实践,我们终于发现,造成上述问题的症结主要是在流程的执行环节上,没有一个从上到下的自动化的流程执行体系,导致过程改进始终停留在书面文档上,没有真正落到实处。笔者就这个话题,结合所在公司几年来的实际经验,介绍如何利用软件工程工具来切实提高软件过程改进的实际效果。

发现短板

过程改进的实施是一个综合的系统工程,最终实施的效果取决于多方面的因素。卡内基-梅隆大学软件工程研究所(SEI)很早就描绘出了著名的“质量三角形”,形象地 说明了产品质量和生产率一般是由三个主要的因素决定:人、流程和技术/工具。如图1所示。

图1:质量三角形

其实这个图也可以用时下比较流行的“木桶”理论来进一步的解释,即过程改进的效果是由三块木板拼成的一个木桶,实施效果取决于构成整个木桶的最短的那块木板。我们需要找出其中到底是哪块木板最短。而在实际情况中,我们会发现,大部分公司往往重视的是“流程”和“人”这两块木板,在完善流程和大力培训人员的同时,忽略了“工具”的同步改进。“工具”便成为制约过程改进实施的短板。

以项目管理工具为核心

我们知道,大部分的公司或多或少都需要用到项目管理理论中涉及的一些知识体系,如项目计划、风险管理、人力资源管理、沟通管理等等。据我们观察,中小型企业在项目管理的活动中,在工具的运用上还是仅仅限于项目进度的管理,即只管理到计划本身,没有综合管理项目过程中的管理活动。其实流程改进的很多的活动,最终也是会体现在项目管理的活动中,如果忽略这些活动的管理,流程的贯彻和执行就会进入一个黑盒子状态,SEPG的人员不清楚制定的流程是否合理的运用,SQA的人员不清楚流程执行中的细节状态,找不出偏差和问题,公司领导也不知道质量问题的发生根源在哪里。针对项目管理在产品开发过程的重要性,我们考察了业界一些项目管理工具的优缺点后,发现很难有一个现成的工具产品符合我们对项目管理和流程管理有机结合的需求,于是笔者带领了一支有丰富开发经验的技术小组,开始了自行研制开发基于WEB的综合项目管理系统的工作,历时一年之后,我们的系统ProgramConsole开发完成。这个系统在公司推广后,收到很好的效果。ProgramConsole可以很方便的了解到目前全公司各部门正在执行的项目情况,包括计划进度、问题列表、风险列表、流程执行情况、人力资源使用情况和质量情况。同时,由于ProgramConsole设计之初就定位为综合项目管理信息门户,所以集成了即互相独立,又紧密关联的其他工具的内容。这些工具包括流程管理系统、文档管理系统、缺陷跟踪系统、需求管理系统和测试管理等。
以流程管理工具为引擎

流程(Process),即一系列有关联的、有顺序的活动的集合。流程是以前好的经验的总结,是不断重复以前正确做事的方法。更精炼的说,流程要告诉我们的是:正确的人,在正确的时间,做正确的事情,将会得到正确的结果。CMMI其实就是一个以流程改进为核心的一种软件企业能力提高的模型。因此流程改进在一定程度上成为过程改进的核心工作。

一般来说,流程体系可以用一个金字塔来描述,最上面一层是公司级政策性文件(Policy),中间是具体的开发流程,如软件开发流程、测试管理流程等。最下面的是一些更详细的指导文件,如检查表(Checklist)、模板(Template)等等,如图2所示。

图2:流程体系框架

正如前文所述,很多公司往往把注意力放在流程本身的完善上面,始终把制定书面流程作为工作重点,而忽视了流程如何更好的执行,更好的被贯彻到日常工作中。其实,对于大部分的研发人员,甚至包括领导层,都没有太多的时间去阅读繁杂的、枯燥的流程内容,无法记住流程中太多的规定,如果要靠个人的自觉性来保证流程的执行,其难度可想而知。

笔者所在部门也承担着流程制定和改进的重任,在意识到流程执行不力的真实原因后,决定引入流程自动化工具来保证流程的顺畅执行,让工具通过email的方式来提醒每个人在什么时候做什么事情。从而避免了大家因为不知道或者忘记了,导致流程没有被执行。

流程管理工具在业界有很多的选择,笔者所在部门经过全面考查,仔细分析各种流程工具的优缺点后,最终选择了美国Serena公司的TeamTrack工作流产品作为我们的流程管理工具。TeamTrack具有流程设计灵活,可视化显示流程执行状态,支持强大的二次开发等特点。有了流程管理工具后,我们把很多的书面流程都转化成了电子化的流程,这样就很方便的把需要多人、跨部门、有上下游协作的工作通过电子化的流程固化下来。大大降低了流程执行的难度,有效的提高了流程执行的效率,收到很好的效果。同时,由于TeamTrack可以很方便的和我们自主开发的综合项目管理系统ProgramConsole有机的结合,可以在ProgramConsole上面进行流程任务的计划、发起和查看状态。

举例来说,变更管理(Change Control)是过程改进中比较重要的环节,面对瞬息万变的市场需求和公司内部的变化,有效的变更管理可以防止变更在最后一分钟才通知到受影响的部门和个人,最大限度的降低变更带来的负面影响。而变更的种类很多,例如需求变更、计划变更、人员变更等等,所以针对不同的变更,有相应的虚拟组织—“变更管理委员会”(Change Control Board,CCB)来评估和批准变更。通过流程工具的实现,建立变更管理工作流,可以把变更发起、评估、批准、实施等变更生命周期有效的管理起来,自动让一个虚拟团队在一个集中的平台上协同工作,极大的提高了内部的沟通效率。

我们比喻流程管理工具为过程改进的引擎,它让过程改进的活动有序的转动起来。


共2页: 1 [2] 下一页
【内容导航】
专题
系统应用日志分析管理
网络管理系统如何支撑ITSM
网吧管理软件
Oracle较真SAP-商业管理软件之战一触即发
玩转Vista上的杀毒软件
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看70832次)
·UML类图详解 (查看64231次)
·UML统一建模语言 (查看34958次)
·C#技术开发指南 (查看33510次)
·C++是垃圾语言?! (查看31761次)
·Java编程开发手册 (1196个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (309个砖)
·.NET开发手册 (240个砖)
·PB开发教程 (223个砖)
·Java编程开发手册 (654个好)
·Java基础教程 (574个好)
·.NET开发手册 (271个好)
·PB开发教程 (212个好)
·Delphi开发技术手册 (190个好)
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。