杜楠(中国空间技术研究院总体部)
软件工程标准化浅析
杜楠(中国空间技术研究院总体部)
分析标准在软件工程中的重要性,调研国内外现有的软件工程标准化情况,总结国际标准化组织(ISO)、电气和电子工程师协会(IEEE)和国内在软件工程方面的标准体系。结合我国软件工程现状,探讨我国在软件工程标准体系及标准方面需要进一步加强的工作。
软件工程标准化
现代社会,随着计算机、智能手机以及其他智能电子产品的普及和计算机技术与信息技术的成熟,各类软件进入了开发与应用高峰,渗入到这些电子产品以及社会各个行业和人们日常生活的方方面面。
软件工程是一门涉及到程序设计语言、数据库、软件开发、操作系统、设计模式等多个方面的研究。用软件工程化构建与维护实用而有效的高质量软件设计学科。随着软件程序发展,其开发与管理过程也在不断变迁,因而出现软件工程标准化的概念,其宗旨是通过规范软件的设计、开发、生产和维护等各个环节以提高产品的质量和生产效率以及企业竞争力,并促进整个行业的健康有序发展。
软件工程标准化指软件产品及过程的标准化。随着人们对软件的认识逐渐深入,软件工作的范围从只是使用程序设计语言编写程序,扩展到整个软件生存周期。从软件的任务提出、需求分析、设计、实现、测试、安装和运行维护,同时还有很多技术管理工作(如过程管理、产品管理、资源管理)以及确认与验证往往是跨越软件生存周期各个阶段的专门工作。所有这些方面都应逐步建立起标准或规范。
2.1国际标准
由国际联合机构制定和公布,提供各国参考的标准。如ISO (International Standards Organization )——国际标准化组织。这一国际机构有着广泛的代表性和权威性,它所公布的标准也有较大的影响。20世纪60年代初,该机构建立了“计算机与信息处理技术委员会”,简称ISO/TC 97,专门负责与计算机有关的标准化工作。
ISO/TC97先后发布了超过70项各种类型的软件工程标准,其中包括通用类型、过程类型、产品类型、操作工具类型、技术类型、资源类型和数据资料类型的标准等[1]。其标准体系如图1所示。
2.2美国标准
IEEE是美国电气与电子工程师协会,是较早研究软件工程标准的组织机构[2],其制定的一些标准直接被定为美国国家软件工程标准。许多国家在制定软件标准的过程中是以IEEE软件工程标准为基础。美国IEEE自设立以来不断推动着电工技术理论方面的发展和完善,也使得电工技术得到更为广泛的应用[3]。IEEE软件工程知识体系框架见图2。
图1 国际标准化组织软件工程标准体系
图2 IEEE软件工程知识体系
美国IBM公司通用产品部(General Products Division)1984年制定了《程序设计开发指南》,仅供该公司内部使用。
2.3中国标准
我国从1984年开始,以ISO和IEEE标准为基础制定了30多项国家标准,并逐步形成了我国软件工程标准化体系[4]。我国软件工程标准体系见图3。
图3 我国软件工程标准体系
中华人民共和国国家技术监督局是我国的最高标准化机构,它所公布实施的标准简称为“国标”。现已批准了GB/T 11457《软件工程术语》、 SJ/T 11234《软件过程能力评估模型 》等若干个软件工程标准。
GJB是中华人民共和国国家军用标准代号。这是由中国国防科学技术工业委员会批准,适合于国防部门和军队使用的标准。如:GJB 438B《军用软件开发文档通用要求》、GJB 5000A《军用软件能力成熟度模型》等。
近年来,我国许多经济部门(如对外经济贸易部、航天科技集团公司、石油化学工业总公司等)都开展了软件标准化工作。
从目前我国标准的制定情况来看,通过引入国际标准,基本形成了一个较为完善的标准化体系[5]。但从规范软件工程过程相关工作的角度出发,尚需进一步完善。
1)加强对国际标准的引入和学习。国内标准与国际标准存在3~5年的距离,而且由于受到语言习惯的限制,引入的标准在学习和应用的过程中往往存在应用上的问题。应积极引进国际标准,及时与国际同步。针对国内外标准在描述方面的差异,及时推出解读性的针对性规范,结合国内软件行业实际状况,尤其是国内软件企业的实际管理模式,推动国内软件行业对国际标准的理解、认识。
2)加强国内行业标准化研究。国内软件行业标准化方面的组织、研究力度仍需加强,我国目前只是处于被动接受国际标准的状态,应结合国情,推出自己的软件工程标准,在软件工程标准化的进程中找到自己的位置,领先在前。
结合我国软件工程管理的实际情况,研究总结ISO和IEEE在软件工程行业的标准化体系。针对我国软件工程标准化存在的问题,应及时引进国际软件工程标准,结合我国软件工程管理的实情,推广优化我国软件工程标准化的工作,制定出与我国软件工程管理相适应的标准,推动我国软件行业的可持续发展。
[1] 宝艾,刘正高.我国软件工程标准化的发展现状分析[J]. 软件工程与标准化, 2012(05).
[2] 刘正高. IEEE软件工程标准综述[J]. 世界标准化与质量管理,1999(1).
[3] 冯惠,李米娜. 刍议软件工程标准化发展现状与分析[J].世界标准化与质量管理,2010(11).
[4] 黄荣峰,周元宇. 刍议中国软件工程标准化发展现状与分析[J].软件工程与标准化,2013(05).
[5] 吴志刚.我国信息化标准体系建设的思考[J]. 软件工程与标准化,2005(8).
Analysis of Software Engineering Standardization
Du Nan ( China Academy of Space Technology )
In this paper, the software standard of ISO and IEEE were analysed for the importance of software engineering standardization. The status and main task in the future of software engineering Standardization in China were mainly discussed.
software engineering, standardization