配置管理实施软件质量管理的关键(精)
![配置管理实施软件质量管理的关键(精)](https://img.360docs.net/img94/1hbfngopnj2yaz563c2r4zlmbsz36f42-41.webp)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
配置管理——实施软件质量管理的关键
质量,一直是企业生存的根本。软件作为一种高智力的创造活动,既具有制造业的一般特性,同时又由于其知识性强、创造性大,而具有一般制造业所没有的特点。所以软件质量管理既要秉承制造业质量管理的一般原则和思想,又要针对软件的特点,而具有自身的规范。制定出标准、有效、可操作性强的软件质量管理规范,对于实行软件产业化,提高生产效率,增强竞争力具有重要意义。
近年来,国际上软件业按照ISO 9000体系框架和要素的要求,紧密结合软件的特点,制定出在软件设计、开发、供应、维护等各个方面的国际标准,来提高软件开发管理水平, 控制产品质量。各国企业把ISO 9000质量体系认证作为加强质量管理、提高企业竞争力的一张王牌。每个通过质量认证的企业都取得了意想不到的效果,产生了巨大的社会效益和经济效益。
ISO900族标准的基本思想就在于一个组织要确定其质量目标,并按照其确定的质量目标建立并有效实施质量体系,确保影响产品质量的技术、管理和人的因素处于受控状态,所有的控制应针对减少和消除不合格,尤其是预防不合格,并建立和完善持续的质量改进机制。它由一系列规则和协议组成,由专门的组织机构以一系列的管理制度和工具来保证贯彻实施。
根据《质量管理和质量保证标准第三部分:GB/T 19001-ISO 9001在软件开发、供应和维护中的使用指南》中规定,质量体系包括一系列的支持活动要素,同时这些支持活动也为质量体系的实施提供保证。
配置管理的作用
在质量体系的诸多支持活动中,配置管理处在支持活动的中心位置,它有机地把其它支持活动结合起来,形成一个整体,相互促进,相互影响,有力地保证了质量体系的实施。
随着计算机应用的深入,软件项目的需求日益复杂及变更频繁,传统的一、二个人搞定一个项目的情况越来越少,稍大一点的项目已经不再是靠某个"高手"从头到尾包办。从整个公司的发展战略来说,如何在技术日新月异、人员流动频繁的情况下,建立本公司的知识库及经验库,把个人的知识及经验转变为公司的知识和经验,这对于提高工作效率,缩短产品周期,加强公司的竞争力具有至关重要的作用。采用科学的配置管理思想,辅之以先进的配置管理工具,这对国际知名软件大公司来说,已经是必不可少的手段。
但同发达国家相比,我国的软件企业在开发管理上,过分依赖个人的作用,没有建立起协同作战的氛围,没有科学的软件配置管理流程;技术上只重视系统和数据库、开发工具的选择,而忽视配置管理工具的选择,导致即使有配置管理的规程,也由于可操作性差而搁浅。以上种种原因导致开发过程中普遍存在如下一些问题:
1、开发管理松散
部门主管无法确切得知项目的进展情况,项目经理也不知道各开发人员的具体工作,项目进展随意性很大,可"左"可"右"。"左"时按领导下达的"期限"进行,到期时,似乎一切已顺利完成,大家一阵胡弄,交差完成,反正领导看的是界面,至于里面是什么,留到施工时再说。施工时的工作因此变成了无法汇报、无法理清的无休止的维护。"右"时则项目工期无休止地延期。对我们软件工程来说,总的特点是先"左"后"右"。在领导面前表现"左",在用户面前表现"右"。
2、项目之间沟通不够
各个开发人员各自为政,编写的代码不仅风格各异,而且编码和设计脱节。本来开发中错误在所难免,但项目开发人员怕沟通,似乎那是针对自已的批斗会,互相推诿责任。开发大量重复,留下大量难维护的代码。
3、文档与程序严重脱节
软件产品是公司的宝贵财富,代码的重用率是相当高的,如何建好知识库,用好知识库对公司
优质高效开发产品,具有重大的影响。但开发人员的一句名口号是:"叫我干什么都可以,但别叫我看别人的程序"。当然,开发人员的工作态度要转变,但客观上有一个很重要的原因是:前人留下的程序既无像样的文档(即使留下了文档,其与源程序也严重脱节),开发风格又不统一,就像一堆垃圾,要开发人员到垃圾中去捡破烂,从这个角度上看,开发人员的要求是合理的。
4、测试工作不规范
传统的开发方式中,测试工作只是人们的一种主观愿望,根本无法提出具体的测试要求,加之
开发人员的遮丑,测试工作往往是走一走过场,测试结果既无法考核又无法量化,当然就无法对以
后的开发工作起指导作用。
5、施工周期过长,且开发人员必须亲临现场
传统的开发与施工是绝对统一的,别人无法接手也无意接手(因为这意味着看别人的程序)。由于应用软件的特点,各个不同的施工点有不同的要求,开发人员要手工地保持多份不同的拷贝,即
使是相同的问题,但由于在不同地方提出,由不同人解决,其做法也不同,程序的可维护性越来越差。久而久之,最后连自已都分不清楚了,代码的相互覆盖现象时有发生,且这苦水还无法倾诉,因为怕别人笑话,甚至别人问起,还得想法搪塞,可谓费尽苦心。
针对以上问题,国内很多软件企业已经逐渐认识到配置管理的重要性,在国外一些成熟的配置管理工具的辅助下,制定相应的配置管理策略,取得了很好的成效。
配置管理经验谈
围绕配置管理,世界一些致力于软件工程研究的公司在深入理解ISO 9000的基础上, 推出了各种符合ISO 9000配置管理标准的工具软件,如INTERSOLV公司的PVCS,Rational公司的Clear Case等。这些配置管理工具面向软件规范化、工程化、自动化的需要,帮助开发团队提高科学管理水平,从而提高工程效率,降低工程成本。现以PVCS为例,结合我们的实际经验,谈谈我们实施配置管理的益处:
1. 节约费用
(1) 缩短开发周期
利用PVCS的Version Manager对程序资源进行版本管理和跟踪,建立公司的代码知识库,保存开发过程中每一过程版本,这样大大提高了代码的重用率,还便于同时维护多个版本和进行新版本的开发,防止系统崩溃,最大限度地共享代码。同时项目管理人员可以通过Version Manager查看项目开发日志,测试人员可以根据开发日志和不同版本对软件进行测试,工程人员可以从Version Manager上得到不同的运行版本,并且Version Manager 可以安装在Web Server供外地施工人员存取最新版本,无需开发人员亲临现场。
利用Tracker组建开发团体之间的问题跟踪及消息通迅,通过其Notify模块与电子邮件结合起来大大加强了开发团体之间的沟通,Reporter模块可对发现的问题进行整理、以报表方式分类报出,作为开发的指导。
以上为PVCS的两个主要模块,科学地应用可以大大提高开发效率,避免了代码覆盖、沟通不够、开发无序的混乱局面,如果利用了公司原有的知识库,则更能提高工作效率,缩短开发周期。(2) 减少施工费用