电信行业供应商的优质(QuEST=Quality Excellence for Suppliers of Telecommunications)论坛1996年4月在美国由一群核心的电信服务提供商们(Bell Atlantic, BellSouth, Pacific Bell, and SBC)发起并于1997年10月成立。电信巨头公司贝尔西南通信公司(SBC)的集团服务和行政总裁Steve Welch在加拿大蒙特利尔召开的1999年QuEST论坛年度大会上发表演讲指出“电信全球化发展是驱使电信行业在整个供应链系统中发展一套统一的质量体系要求和衡量指标的驱动力。”QuEST成立后最主要的工作就是建立了TL9000(TL=Telecommunication Leadership)标准。QuEST论坛的成员分别起草了TL9000的概论,硬件、软件和服务要求,硬件、软件和服务测量。TL9000标准的2.5版与3.0版已先后发布。2001年3月,随着ISO 9000由1994版改为2000版,TL 9000标准也由2.5版改为目前的3.0版。 2003年10月份TL 9000衡量指标的要求版本升级到3.5版本。
TL 9000系列产品和支持如图1示。TL 9000质量管理体系要求手册(Quality Management System Requirements Handbook)与TL 9000质量管理体系衡量指标手册(Quality Management System Measurements Handbook)中要求来源如图2所示,TL 9000中的产品生命周期(Product Life Cycle)概念和要求主要是引用国际标准ISO/IEC12207:1995(信息技术-软件生命周期过程),这也是TL 9000的非常重要的特点。
2. 软件的生命周期(Life Cycle)概念起源和描述
软件的生命周期(Life Cycle)概念起源于20世纪70年代,它是实施软件工程的首要原则之一[3]。计算机软件是伴随计算机硬件技术的发展而迅猛发展起来的,由于软件的规模越来越大,越来越复杂,可靠性要求越来越高,一个大型项目往往需要很多人协同完成,所以在20世纪60年代末爆发了“软件危机”,主要表现为软件开发成本一再突破计划;进度一拖再拖;软件质量缺陷极多;软件维护性差;软件开发人员与客户没有沟通;软件开发管理混乱;软件生产满足不了要求。如1964年,IBM推出的耗资52.4亿美元的IBM S/360主机系统,虽然使IBM取得了巨大的成功,也使IBM承担了巨大的风险和巨额开支,其中软件部分OS/ 360耗资近1亿美元,用去5000多人年,拖延多年才交付[4][5]。 软件工程权威Barry W. Boehm等人综合TRW公司12年完成的5个指挥控制软件项目(总共用了15000人年)的经历,1983年提出确保软件质量和开发效率的“软件工程”7条原则,其中首要原则就是软件开发维护要严格按照产品的“生命周期”分阶段计划管理并认真实施。软件生命周期特别强调了系统全局观念,例如在20世纪90年代欧洲阿丽亚娜5运载火箭的501试验飞行失败原因分析中发现,系统软件定义存在缺陷一直到最终才暴露出来,具体原因是在总体设计阶段的总体技术要求中没有把阿丽亚娜5运载火箭的轨道数据作为一项功能要求包括在内。国际标准ISO/IEC12207:1995[6]中对产品生命周期的定义描述为:产品生命周期(Product Life Cycle)是指涉及产品的概念、定义、开发、生产、运行、维护、产品处置、生命的跨度的过程,活动和任务。
产品生命周期模型与软件开发方法学密切相关,例如目前广泛开采用的结构化的开发方法学常用的瀑布型。实际上目前主要的生命周期模型有:瀑布模型(Waterfall Model or V Model);增量模型;渐进模型;原形开发模型;螺旋模型(Spiral Model )。目前常见的瀑布模型Waterfall Model or V Model 如图4:按照产品研制过程将顺序地开展产品需求分析,设计,实现,测试,维护等各阶段的工作。每阶段只执行一次。当发现问题和错误时,也许为了修正错误,退至上面某一阶段重复进行部分工作。特点是:阶段顺序性和依赖性;推迟实现的观点;质量保证观点(文档完成和评审)。瀑布模型是最基本的过程模型。螺旋模型Spiral Model(图5)是考虑了目前的风险管理的思想发展起来的新方法,考虑到对于大型项目,开发一个原形往往达不到要求,以及以前的模型均忽略了重要的风险分析工作,结合瀑布模型和渐进模型的优点,Barry W. Boehm综合TRW公司的经历, 1988年提出了软件开发的螺旋模型。模型要考虑风险分析,如分清需求, 资源, 进度安排中不确定。对于产品生命周期模型的选择,一般应该遵循的准则是:模型符合产品的性质;满足进度要求;能控制并消除减小风险;模型与用户和开发人员的知识技能匹配;模型应该利于管理可控制。
引用文献
[1] www.questforum.org
[2] TL9000 Quality Management System Requirements Handbook. Release 3.0
[3] 航天型号软件研制过程,汤铭端,1999年4月,宇航出版社。
[4] 谁说大象不能跳舞,郭士纳,2003年1月,中信出版社。
[5] 人月神话,Frederick P. Brooks Jr。,2002年11月,清华大学出版社。
[6] ISO / IEC 12207 Information Technology Software Life Cycle Processes, Geneva Switzerland, International Organization for Standardization, February 1995. [7] TL9000 Quality Management System Measurements Handbook. Release 3.0
[8] Capability Maturity Model for Software, Version 1.1, February 1993, Mark C. Paulk, Bill Curtis, Mary Beth Chrissis, Charles V. Weber, Software Engineering Institute
[9] “国产手机缺少孤胆英雄”,郑茂柱,“IT时代周刊”,2004年11月,第068期,38页。
[10]“蚕食INTEL”,DAVID KIRKPATRICK,“财富”, 2005年1月,第73期,94页。
[11] “让三星品尝辉煌的三大法则”,靳生玺,“IT时代周刊”,2005年1月,第072期,46页。(end)