人们社会生活离不开交往。在交往中最先遇到和首先要解决
的是通讯工具——语言文字问题,计算机问世以后,同样是语言
问题。人要和计算机打交道,需要程序设计语言,这种语言不仅应
让计算机理解,而且还应让别人看懂,使其成为人际交往的工具。
程序设计语言的标准化最早提到日程上来。60年代程序设计语言
蓬勃发展,出现了名目繁多的语言,这对于推动计算机语言的发
展无疑有着重要作用。但同时也带来许多麻烦。即使同一种语言,
由于在不同型号的计算机上实现时,作了不同程度的修改和变
动,形成了这一语言的种种“方言”,为编写出程序的交流设置了障
碍。制定标准化程序设计语言,为某一程序设计语言规定若干个标
准子集,对于语言的实现者和用户都带来了很大方便。
随着软件工程学科的发展,人们对计算机软件的认识逐渐深
入。软件工作的范围从只是使用程序设计语言编写程序,扩展到
整个软件生存期。诸如,软件概念的形成、需求分析、设计、实现、测
试、制造、安装和检验、运行和维护直到软件引退(为新的软件所代
替)。同时还有许多技术管理工作(如过程管理、产品管理、资源管
理)以及确认与验证工作(如评审与审计、产品分析、测试等)常常
是跨越软件生存期各个阶段的专门工作。所有这些方面都应逐步
建立起标准或规范来。
另一方面,软件工程标准的类型也是多方面的。它可能包括
过程标准(如方法、技术、度量等)、产品标准(如需求、设计、部件、
描述、计划、报告等)、专业标准(如职别、道德准则、认证、特许、课
程等)以及记法标准(如术语、表示法、语言等)。
表9.1 (a)软件工程标准分类
|
|
|
软
件 生 存 期 |
|
|
|
概念 |
需求 |
设计 |
实现 |
测试 |
制造 |
安装与检验 |
运行与维护 |
引退 |
标
准
类
型
|
过
程
|
方法 |
|
|
|
|
|
|
|
|
|
技术 |
|
|
|
|
|
|
|
|
|
度量 |
|
|
|
|
|
|
|
|
|
产
品
|
需求 |
|
|
|
|
|
|
|
|
|
设计 |
|
|
|
|
|
|
|
|
|
部件 |
|
|
|
|
|
|
|
|
|
描述 |
|
|
|
|
|
|
|
|
|
计划 |
|
|
|
|
|
|
|
|
|
报告 |
|
|
|
|
|
|
|
|
|
专
业
|
职别 |
|
|
|
|
|
|
|
|
|
道德准则 |
|
|
|
|
|
|
|
|
|
认证 |
|
|
|
|
|
|
|
|
|
特许 |
|
|
|
|
|
|
|
|
|
课程 |
|
|
|
|
|
|
|
|
|
记
法
|
术语 |
|
|
|
|
|
|
|
|
|
表示法 |
|
|
ISO5807 |
|
|
|
|
|
|
语言 |
|
|
|
|
|
|
|
|
|
在全面考虑以上两个方面的情况下,软件工程的标准可用一
张二维的表格来表示。表9.1(a)和(b)给出了这个二维表的大致
格式。(b)表是(a)表的继续。表中填入了三个标准的例子(请注意
它们在表中所处的位置:
①FIPSl05是美国国家标准局发布的《软件文档管理指南》
(National Bureau OfStandards,Guideline for Software Documentation
Management,FIPS PUB 105,June 1984)
表9.1 (b)软件工程标准分类
|
|
|
技术管理 |
确认与验证 |
|
|
|
过程管理 |
产品管理 |
资源管理 |
评审与审计 |
产品分析 |
测试 |
标
准
类
型
|
过
程
|
方法 |
|
|
|
NSAC-39 |
NSAC-39 |
NSAC-39 |
技术 |
FIPS
105 |
|
|
|
|
|
度量 |
|
|
|
|
|
|
产
品
|
需求 |
|
|
|
|
|
|
设计 |
|
|
|
|
|
|
部件 |
|
|
|
|
|
|
描述 |
|
|
|
|
|
|
计划 |
|
|
|
|
|
|
报告 |
|
|
|
|
|
|
专
业
|
职别 |
|
|
|
|
|
|
道德准则 |
|
|
|
|
|
|
认证 |
|
|
|
|
|
|
特许 |
|
|
|
|
|
|
课程 |
|
|
|
|
|
|
记
法
|
术语 |
|
|
|
|
|
|
表示法 |
|
|
|
|
|
|
语言 |
|
|
|
|
|
|
②NSAC—39是美国核子安全分析中心发布的《安全参数显示
系统的验证与确认》(Nuclear Safety Analysis Center,Verification
and Validation for Safety Parameter Display Systems,NSAC—39,De—
cemberl981)
③ISO 5807是国际标准化组织公布(现已成为我国国家标
准)的《信息处理——数据流程图、程序流程图、系统流程图、程序
网络图和系统资源图的文件编制符号及约定》(本书第四章4.1节
讨论过的标准程序流程图正是以此为依据)。
这个表不仅告诉了我们软件工程标准的范围和标准如何分
类,而且对标准的开发具有指导作用。已经制定的标准都可在表中
找到相应的位置,而且它可启发我们去制定新的标准。
|