文档介绍:你思考过吗?软件危机的出路在于:软件开发的工程化和标准化程序设计语言的标准化:为某一程序设计语言规定若干个标准子集,对于语言的实现者和用户都带来了很大方便。软件过程的标准化:软件生存期各个阶段的工作建立标准或规范俗话说:没有规矩,不成方圆1软件危机: 大型软件开发成本高;开发过程不易控制;软件开发工作量估计困难;软件质量低;软件项目失败率高,错误率高;无法判断大型系统能否正常工作;软件维护任务重等。22)1963年美国飞往火星的火箭爆炸,造成1000万美元的损失。原因是FORTRAN程序:DO5I=1,3误写为:DO5I=)IBM公司的OS/360,共约100万条指令,花费了5000个人年;经费达数亿美圆,而结果却令人沮丧,错误多达2000个以上,系统根本无法正常运行。OS/360系统的负责人Brooks这样描述开发过程的困难和混乱:“…像巨兽在泥潭中作垂死挣扎,挣扎得越猛,泥浆就沾得越多,最后没有一个野兽能够逃脱淹没在泥潭中的命运。…”3)1967年苏联“联盟一号”载人宇宙飞船在返航时,由于软件忽略一个小数点,在进入大气层时因打不开降落伞而烧毁。“标准”?1983年,我国颁布的国家标准(-83)对“标准”的定义是:“标准是对重复性事物和概念所做的统一规定。它以科学、技术、实践经验和综合成果为基础,经有关方面协商一致,由主管机构批准,以特定形式发布,作为共同遵守的准则和依据”。1983年,国际标准化组织发布的ISO第二号指南(第四版)对“标准”的重新定义是:“由有关各方根据科学技术成就与先进经验,共同合作起草,一致或基本一致同意的技术规范或其它公开文件,其目的在于促进最佳的公众利益,并由标准化团体批准”。2000年发布的GB/-2000“标准化工作导则”中,将“标准”定义为:“为在一定范围内获得最佳秩序,对活动或其结果规定共同的和重复的规则、导则或特性文件。该文件经协商一致制定并经一个公认机构的批准。标准应以科学、技术和经验的综合成果为基础,以促进最佳社会效益为目的。”第二章软件工程标准化和软件文档标准简单地说:,如何高效开发软件产品,提高软件质量,越来越受到人们的重视。同时,软件的规模和复杂度在持续的增加,人们对软件产品开发过程系统化、规范化和标准化的要求也越来越严格。因此,软件工程标准化、软件文档规范化,已经成为软件领域继软件工程学后,影响软件行业发展的又一个重要因素,受到软件企业的高度重视。而所有这些方面建立的标准或规范,即是软件工程标准化。到1999年底,ISO/JTC1已制定出近40项软件工程国际标准。我国自1983年起至今,也已陆续制定、发布了20余项软件工程国家标准。,主要表现在以下几个方面:、可维护性和可移植性;;,减少差错和误解;;;。在使用工程化的原理和方法来指导软件的开发和维护时,必须充分注意软件文档的编制和管理。,软件工程标准主要有两种划分方法:按标准的类型划分和按标准的范围划分。6(1)按标准的类型划分主要有过程标准、产品标准、行业标准、记法标准等。过程标准与开发一个产品或从事一项服务的一系列活动或操作有关。过程标准使用一组方法、工具和技术,给出“谁来做”、“做什么”、“如何做”、“何时做”、“何地做”及在软件工程活动中进行的不同层次工作的过程模型。产品标准则涉及软件工程事务的格式和内容,如需求、设计、计划等。软件开发和维护活动文档化的结果就是软件产品,软件文档是软件工程活动进一步开展的基础。软件开发作为一种行业,其行业标准涉及软件工程的所有方面,如执业认证、职业培训、产品许可等。行业标准可以等同于行业行为规范。记法标准规定了在软件工程行业范围内,以唯一的方式进行交流的方法,如术语、表示法、语言等。它其实是一种语境规范。(2)按标准的范围划分主要是根据软件的任务功能和软件生存期进行比较、判定、评价和确定软件工程标准的范围和内容。任务功能可以表示软件工程过程,可以划分为产品工程功能、验证与确认功能以及技术管理功能3个部分。产品工程功能包括定义、生产和支持最终产品所必须的过程。验证和确认功能是检查产品质量的活动。技术管理功能是构造和控制产品工程的过程。这3个部分并不集中在单个的软件生存周期里,而是并行进行的生产、检查和控制活动。7