b389f267c77b5ec3d5f1a5e8aa6e84fe.ppt
- Количество слайдов: 35
你思考过吗? n程序设计语言的标准化: Ø为某一程序设计语言规定若干个标准子集, 对于语言的实现者和用户都带来了很大方便。 n软件过程的标准化: Ø软件生存期各个阶段的 作建立标准或规范 n软件危机的出路在于: Ø软件开发的 程化和标准化 n俗话说: 没有规矩, 不成方圆
• 软件危机: 大型软件开发成本高;开发过程不易 控制;软件开发 作量估计困难;软 件质量低;软件项目失败率高,错误 率高;无法判断大型系统能否正常 作;软件维护任务重等。 2
1) IBM公司的 OS/360,共约 100万条指令,花费了5000个人 年;经费达数亿美圆,而结果却令人沮丧,错误多达 2000个以 上,系统根本无法正常运行。 OS/360系统的负责人Brooks这样 描述开发过程的困难和混乱:“…像巨兽在泥潭中作垂死挣扎, 挣扎得越猛,泥浆就沾得越多,最后没有一个野兽能够逃脱淹 没在泥潭中的命运。…” 1963年美国飞往火星的火箭爆炸,造成 1000万美元 的损失。原因是FORTRAN程序: DO 5 I=1,3 2) 误写为:DO 5 I=1. 3 3) 1967年 苏 联 “联 盟 一 号 ”载 人 宇 宙 飞 船 在 返 航 时 , 由 于 软 件 忽 略 一 个小数点,在进入大气层时因打不开降落伞而烧毁。 3
第二章 软件 程标准化和软件文档标准 2. 1 软件 程标准化 1. 什么是“标准”? 1983年,我国颁布的国家标准(GB 3935. 1 -83)对“标准”的定义是:“ 标准是对重复性事物和概念所做的统一规定。它以科学、技术、实践经验 和综合成果为基础,经有关方面协商一致,由主管机构批准,以特定形式 发布,作为共同遵守的准则和依据”。 1983年,国际标准化组织发布的ISO第二号指南(第四版)对“标准”的 重新定义是:“由有关各方根据科学技术成就与先进经验,共同合作起草, 一致或基本一致同意的技术规范或其它公开文件,其目的在于促进最佳的 公众利益,并由标准化团体批准”。 2000年发布的GB/T 1. 1 -2000“标准化 作导则”中,将“标准”定义 为:“为在一定范围内获得最佳秩序,对活动或其结果规定共同的和重复 的规则、导则或特性文件。该文件经协商一致制定并经一个公认机构的批 准。标准应以科学、技术和经验的综合成果为基础,以促进最佳社会效益 为目的。” 简单地说: 标准就是完成一项 作必须遵循的统一的模板和技术指标
2. 软件 程标准化 随着计算机科学技术的迅速发展和计算机应用领域的不断 扩大,如何高效开发软件产品,提高软件质量,越来越受到人 们的重视。同时,软件的规模和复杂度在持续的增加,人们对 软件产品开发过程系统化、规范化和标准化的要求也越来越严格。 因此,软件 程标准化、软件文档规范化,已经成为软件 领域继软件 程学后,影响软件行业发展的又一个重要因素, 受到软件企业的高度重视。而所有这些方面建立的标准或规范, 即是软件 程标准化。 到 1999年底,ISO/JTC 1已制定出近 40项软件 程国际标准。 我国自 1983年起至今,也已陆续制定、发布了20余项软件 程 国家标准。
3. 软件 程标准化的意义 软件企业实施软件 程标准化后的益处,主要表现在以下几个方面: 1. 提高软件的可靠性、可维护性和可移植性; 2. 提高软件的生产率和软件人员的技术水平; 3. 提高软件人员之间的通信效率,减少差错和误解; 4. 有利于软件管理; 5. 有利于降低软件产品的成本和运行维护成本; 6. 有利于缩短软件开发周期。 在使用 程化的原理和方法来指导软件的开发和维护时,必须充分注意 软件文档的编制和管理。 4. 软件 程标准化的类型 参照其它 程领域对 程标准划分的方法,软件 程标准主要有两种划分 方法: 按标准的类型划分和按标准的范围划分。
(1) 按标准的类型划分 主要有过程标准、产品标准、行业标准、记法标准等。 过程标准与开发一个产品或从事一项服务的一系列活动或操作有关。过程标准 使用一组方法、 具和技术,给出“谁来做”、“做什么”、“如何做”、“何时做 ”、“何地做”及在软件 程活动中进行的不同层次 作的过程模型。 产品标准则涉及软件 程事务的格式和内容,如需求、设计、计划等。软件开 发和维护活动文档化的结果就是软件产品,软件文档是软件 程活动进一步开展的基 础。 软件开发作为一种行业,其行业标准涉及软件 程的所有方面,如执业认证、 职业培训、产品许可等。行业标准可以等同于行业行为规范。 记法标准规定了在软件 程行业范围内,以唯一的方式进行交流的方法,如术 语、表示法、语言等。它其实是一种语境规范。 (2) 按标准的范围划分 主要是根据软件的任务功能和软件生存期进行比较、判定、评价和确定软件 程标准的范围和内容。任务功能可以表示软件 程过程,可以划分为产品 程功能、 验证与确认功能以及技术管理功能 3个部分。 产品 程功能包括定义、生产和支持最终产品所必须的过程。验证和确认功能是 检查产品质量的活动。技术管理功能是构造和控制产品 程的过程。 这 3个部分并不集中在单个的软件生存周期里,而是并行进行的生产、检查和控
根据以上两种分类方法,软件 程标准可用一张二维表格来表示。 标准范围 标准类型 软 件 生 存 期 概念 需求 设计 实现 测试 制造 安装与 检验 运行/ 维护 引退 方法 过 程 技术 度量 需求 GB/T 9385 -1988 设计 产 品 部件 描述 计划 报告 职业 道德准则 行 业 认证 特许 课程 术语 记 法 表示法 语言 GB/T 1526 -1989 8
标准范围 标准类型 方法 过 程 过程管理 产品管理 资源管理 评审与审计 产品分析 测试 GB/T 8566 -1995 技术 度量 需求 设计 产 品 部件 描述 计划 报告 职业 道德准则 行 业 认证 特许 课程 术语 记 法 表示法 语言 9
上述两表给出了二维表的大致格式。其中,给出了GB/T 93851988、GB/T 1526 -1989、GB/T 8566 -1995这 3个标准的例子,用于说 明各个标准的类型及其作用。 1. GB/T 9385 -1988是原电子 业部批准的《计算机软件需求说 明编制指南》,用于指导软件需求规格说明书的编写。 2. GB/T 1526 -1989是国家标准总局批准的信息处理——数据流 图、程序流程图、系统结构图、程序网络图、系统资源图的文件编制 符号及约定。 3. GB/T 8566 -1995是国家标准总局批准的信息技术——软件生 存期过程标准,它规定了在获取、供应、开发、操作、维护软件时, 要实施的过程、活动和任务。目的是为用户提供一个公共的框架,使 软件从业人员可以使用“相同的语言”创作和管理软件。 从表中可以看到软件 程标准的范围和标准如何分类,因此对相 关标准的编制、开发具有指导作用,而已经制定的标准也都可以在表 中找到相应的位置。所以,该表还可以启发制定新的标准。
2. 2 软件 程标准编制的层次 根据软件 程标准制定的机构和标准适用的范围,可分为 5个层次:国 际标准、国家标准、行业标准、企业(机构)标准、项目(课题)标准。 1. 国际标准:由国际联合机构制定和公布的标准,供各国参考。 如ISO——国际标准化组织。 2. 国家标准:由政府或国家级的机构制定或批准,适用于全国范围。 如GB——中国国标、ANSI_美国国家标准协会、BS——英国国家标准、 JIS——日本 业标准。 3. 行业标准:由行业机构、学术团体或国防等机构制定,适用于某个业务 领域。 如IEEE——美国电气和电子 程师学会、GJB——中国国家军用标准。 4. 企业规范:企业因软件 程 作的需要制定的适用于本企业的规范。 如IBM通用产品部于1984年制定的《程序设计开发指南》。 5. 项目规范:由某一科研生产项目组织制定,仅为该项目任务服务的软件 程规范。 如CIMS——计算机集成制造系统——软件 程规范。 11
2. 3 中国的软件标准 1983年起,我国陆续制定和发布了20余项软件 程国家标 准。这些标准可以分为以下四类: 1. 基础标准:规定了信息加 处理和软件 程领域的术语、符 号、表示、构造、分类级约定; 2. 开发标准:规定了软件生存期过程、软件支持环境、软件记 录处理流程、软件维护等的 作规范; 3. 文档标准:规定了软件产品、需求、测试、管理等文档的编 制规范; 4. 管理标准:规定了软件配置管理计划、质量保证计划、产品 质量特性、软件可靠性和可维护性管理等的规范和 作要素。 下表列出了我国部分软件 程标准的名称及其标准号:
类型 标准名称 标准号 软件 程术语 GB/T 11457 -1989 信息处理——数据流程、程序流程图、系统结构图、 程序网络图、系统资源图的文件编制符号及约定 GB/T 1526 -1989 软件 程标准分类法 GB/T 15538 -1995 信息处理——程序构造及其表示法的约定 GB/T 13502 -1992 信息处理——单命中判定表规范 GB/T 15535 -1995(ISO 5806) 信息处理系统——计算机系统配置图符号及其约定 GB/T 14085 -1993(ISO 8790) 开 发 标 准 信息技术——软件生存期过程 GB/T 8566 -1995 软件支持环境 GB/T 15853 -1995 信息处理——按记录组处理顺序文卷的程序流程 GB/T 15697 -1995(ISO 6593) 软件维护指南 GB/T 14079 -1993 文 档 标 准 计算机软件产品开发文档编制指南 GB/T 8567 -1988 计算机软件需求说明编制指南 GB/T 9385 -1988 计算机软件测试文档编制规范 GB/T 9386 -1988 软件文档管理指南 GB/T 16680 -1996 管 理 标 准 计算机软件配置管理计划规范 GB/T 12505 -1990 信息技术——软件产品评价质量特性及其使用指南 GB/T 16260 -1996 计算机软件质量保证计划规范 GB/T 12504 -1990 计算机软件可靠性和可维护性管理 GB/T 14394 -1993 基 础 标 准 13
2. 4 软件 程标准的制定与推行通常要经历一个环状生命周期,如下图所示。 从最初的制定一项标准的初步设想,经发起后,沿着环状生命期,顺时针经 历以下步骤: 发起 修订 建议 撤销 开发 审核 咨询 实施 培训 审批 公布
1. 建议——拟定初步的建议方案 2. 开发——制定标准的具体内容 3. 咨询——征求并吸收有关人员的意见 4. 审批——由管理部门决定能否推出 5. 公布——公布发布,使标准生效 6. 培训——为推行标准准备人员条件 7. 实施——投入使用,需经历相当期限 8. 审核——检验实施效果,决定修改或撤销 9. 修订——修改其中不适当的部分,形成标准的新版本,进入 新的周期 事实上,几乎所有的标准都有一个逐步的成熟,在环状生 命期上循环数次的经历,这就需要标准的制定者和使用者付出 大量的劳动,来对标准加以完善。
2. 5 软件 程标准在开发机构中的推行 组织开发和制定软件 程标准固然十分重要,但在软件开 发组织中推行这些标准就更为重要。特别是目前在中国许多软 件开发项目普遍忽视 程化的情况下,尤其需要重视软件 程 标准的推行问题。 造成软件 程标准在中国软件开发组织中推行困难的原因 主要是一些开发组织或软件 程师并不真正理解软件 程标准 化的意义。他们把贯彻标准看成是额外的负担,是为了应付管 理、应付评级…… 另一方面,确实也有一些软件 程标准并非真正适合开发 组织直接采用,也有些标准不能反映当前的软件技术实践。还 有些标准也可能被开发人员误认为是过时的,难于实施的。 但是,无论如何,软件 程标准化的方向是无可置疑的, 是必须坚决推行的,我们各个软件开发组织和软件人员都应当 努力克服困难,排除各种障碍,坚定不移的推动软件 程标准 化的更快发展。
2. 6 ISO 9000国际标准 ISO是一个组织的英语简称。其全称是 International Organization for Standardization , 翻译成中文就是“国际标准化组织”。 ISO 宣称它的宗旨是“在世界上促进标准化及 其相关活动的发展,以便于商品和服务的国际交换,在 智力、科学、技术和经济领域开展合作。” ISO 现有117个成员,包括 117个国家和地区。 ISO的最高权力机构是每年一次的“全体大会”,其日 常办事机构是中央秘书处,设在瑞士的日内瓦。中央秘 书处现有170名职员,由秘书长领导。 9000是编号. 17
2. 6 ISO 9000国际标准 – 国际认同原因: • 市场经济,特别是国际贸易的驱动 • 客观地对生产者(也称供方)提出了全面的质量管理要 求、质量管理办法,并且还规定了消费者(也称需方) 的管理职责 • 将符合ISO 9000标准的要求作为国际贸易活动中建 立互相信任关系的基石 • 取得ISO 9000质量标准认证被人们当做进入国际市 场的通行证。
2. 6 ISO 9000国际标准 1. ISO 9000标准概述 国际标准化组织在研究了英、法、德、荷、加、美质量管理标准的基础 上,于1987年 3月公布了ISO 9000质量管理和质量保证标准系列。 制定和公布这一国际标准的最初目的是为了满足国际贸易的需要。具体 的说,是为了消除因各国质量标准的差异而产生的贸易障碍。 ISO 9000系列标准对提供产品或服务的机构称为供方。标准规定了对供 方的各方面质量要求的质量管理办法,以图对购买方和消费者所要求的各种 质量条件都能得到满足。在国际贸易中,买方往往不仅要检验供方提供的产 品质量,还要了解产品制造过程中,质量管理和质量保证体系怎样。也就是 说,买方希望取得供方有能力生产出优质产品的证据,这就是所谓的“质量 体系认证”。 ISO 9000标准的制订和实施,反映了市场经济条件下,供需双方在交易 活动中的要求。它的出现,立即得到许多国家的积极响应,以至于形成一股 热潮。至 1997年底,全球已有100多个国家和地区积极推行ISO 9000质量认 证活动。 1998年 1月在广州,包括中、美、英、德、法等17国,在国际认可论坛 多边互认协议上签字。这使我国产品获得ISO 9000质量体系认证的企业,真 正拿到了进入国际市场的“通行证”。
2. ISO 9000标准的特点 ISO 9000是国际标准化组织建立以来制订和公布的几千个标准中,影响最深远和 普及最迅速的一个,其对各国经济生活所起的作用不可低估。我们在观察这一现象时, 注意到ISO 9000的以下特点: (1) 国际性。ISO 9000已成为各国对质量保证和质量管理制度的共同理解。 (2) 完整性。ISO 9000系列标准包含了术语、质量保证、质量管理到支持件技术标准 及实施指南等一整套共计 20个标准,形成了一个完整的体系结构。 (3) 兼容性。作为ISO 9000系列标准核心的三个质量保证标准是逐一包容的。即 9001 标准的内容最全面,9002标准排除了设计 作的质量要求,仅限于生产制造过程, 9003标准仅限于检验和试验 作的质量要求。可以说,依次适用范围渐窄。 (4) 主动性。选用和实施ISO 9000标准、建立质量体系的主体,是企业的主动行为。 (5) 可信性。ISO 9000的认证是授权认证机构对供方质量体系进行的独立、公正的活 动,因此,具有相当的说服力和可信度。 (6) 指导性。ISO 9000标准文本只是给出了质量管理和质量保证的原则,具体如何实 施,需要供方结合自身机构的实际情况,特别是供方企业文化,进行创造性的解决。 (7) 科学性。ISO 9000标准的背后是现代质量管理的科学原理。 (8) 实践性。具体表现在,标准文本不是空洞的条文,并基于大量的质量管理实践。 如标准可向前追溯,得知其源于英国国家标准和美国军用标准等。
ISO 9000系列标准适用领域 1) 硬件:具有特定形状的产品,如机械、电子 产品,包括计算机硬件。 2) 软件:通过媒体表达的信息所构成的智力产品。 包括计算机软件。 3) 流程性材料:将原料转化为某一特定状态的产 品。如,流体、粒状、线状等,通过瓶装、袋 装等或通过管道传输交付。 4) 服务:为满足客户需求的更为广泛的活动。
ISO 9000系列标准的内容 • ISO 9000 质量管理和质量保证标准──选择和 使用的导则 • ISO 9001 质量体系──设计/开发、生产、安 装和服务中的质量保证模式 • ISO 9002 质量体系──生产和安装中的质量保 证模式 • ISO 9003 质量体系──最终检验和测试中的质 量保证模式 • ISO 9004 质量管理和质量体系要素──导则
ISO 9000 -3 标准 • ISO 9000系列标准原本是为制造硬件产品 而制定的标准,不能直接用于软件制作。 • 曾试图将9001改写用于软件开发方面,但 效果不佳。 • 以ISO 9000系列标准的追加形式,另行制 定出ISO 9000 -3标准。 • ISO 9000 -3成为“使 9001适用于软件开发、 供应及维护”的“指南”。
制定与实施ISO 9000系列标准的主导思想 • (1) 强调质量并非在产品检验中得到,而是 形成于生产的全过程。 • (2) 为把握产品的质量, ISO 9000要求“必 须使影响产品质量的全部因素在生产全过 程中始终处于受控状态” • (3) ISO 9000标准要求证实:“企业具有持 续提供符合要求产品的能力”。 • (4) ISO 9000标准强调“质量管理必须坚持 进行质量改进”。
ISO 9000系列标准的内容
ISO 9000 -3与CMM比较 • Capability Maturity Model:能力成熟度模型, 针对软件的称为SW-CMM。 SW-CMM – 1986年 11月, CMU软件 程研究所SEI受美国国防部的 委托和资助,评估软件供应商能力并帮助其改善软件 质量 – 同样涉及质量和过程管理 – 明确强调持续的过程改进 • ISO 9000 -3 – 解决质量体系的最小保证 ####
什么是能力成熟度模型 (Capability Maturity Model)CMM是指“能力成熟 度模型”,是对于软件组织在定义、实施、度量、控制和改善其软件过 程的实践中各个发展阶段的描述。CMM的核心是把软件开发视为一个 过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其 更加科学化、标准化、使企业能够更好地实现商业目标。 CMM是一种用于评价软件承包能力并帮助其改善软件质量的方法, 侧重于软件开发过程的管理及 程能力的提高与评估。CMM分为五个 等级:一级为初始级,二级为可重复级,三级为已定义级,四级为已管 理级,五级为优化级。 27
• CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成。 CMMI是CMM模型的最新版本。早期的 CMMI(CMMI-SE/SW/IPPD)1. 02版本是 应用于软件业项目的管理方法,SEI在部分 国家和地区开始推广和试用。随着应用的 推广与模型本身的发展,演绎成为一种被 广泛应用的综合性模型。
与软件质量保证有关的主要标准 标 准名称 ISO 8402 说 明 规定质量(质量、质量体系或检验等)有关的22个术语。目前, ISO/TC 176正在进 行修订 ,预 计 术 语 将增至 67个,信息处 理术 语 的定义 引用自ISO 2382 -1 ISO DIS 9000 -4 适用于“可靠性管理”的标准。它将对软件可靠性管理产生影响。 (IEC 300 -1) 这 一标 准的内容与国际电 委员 会的IEC 300 -1相同 ISO/IEC 9126 对 ISO 9000 -3未具体示出的软 件“质 量特性”作出规 定的标 准。 具体规 定了功能性、可靠性、可使用性、效率、可维 护 性和可 移植性等6个主特性和21个二级 特性 ISO 13011 -1 对质 量体系核查 指南标 准中的“检查 步骤 ”作出规 定 软 件 开 发 全 过 作为 按双边 合同进 行软 件开发 时 规 定从合同到开发 及维 护 的“ 程的管理 作业项 目的意义 与位置”的标 准。ISO/IEC JTC 1正在审议 软 件配置管理 有关软 件“配置要素”的标 准,用于管理软 件的调 试 修改、多次 更改等业 务 。对 于生产 与维 护 效率的提高非常重要。ISO/TC 176和ISO/IEC JTC 1正在审议
3. ISO 9000标准的构成 ISO 9000系列标准共包括 5项标准: — ISO 9000-1: 1994年《质量管理和质量保证 第一部分:选择和使用指南》 — ISO 9001: 1994年《质量体系 设计、开发、生产、安装和服务的质量保证模式》 — ISO 9002: 1994年《质量体系 生产、安装和服务的质量保证模式》 — ISO 9003: 1994年《质量体系 最终检验和试验的质量保证模式》 — ISO 9004-1: 1994年《质量管理和质量体系要素 第一部分:指南》 ISO 9000系列保证的用途和分类: ISO 9000系列标准,根据其用途可将上述 5项标准分为 3类: (1) 指导选用“质量管理和质量保证标准”用的标准; (2) 质量保证标准; (3) 质量管理标准。
上述 3类标准的用途简要介绍如下: (1) ISO 9000 -1: 1994标准的用途: 该标准主要用途是供给供需双方选择质量保证和供给供方选择质量管理标准使用。 (2) ISO 9001~ISO 9003: 1994标准的用途: 该三项标准是一组质量保证标准。是在合同情况下,供购双方签订供货合同选择质 量保证标准,或供方申请体系认证选择质量保证模式时使用的标准。根据购方订购产品 结构的特点、设计和制造的复杂性、设计成熟的程度,以及产品安全性和经济性等选用 三项标准之一。 选用ISO 9001: 1994标准的条件是:产品结构复杂,设计和制造的复杂性较高,设计 成熟程度不够,产品具有安全性和经济性的要求。当选用此标准时,供方应向购方提供 产品设计、生产、安装和服务全过程的质量保证。 选用ISO 9002: 1994标准的条件是:设计复杂性较低,设计成熟程度较高,产品结构 不太复杂,制造复杂性较高,产品具有安全性和经济性的要求。当选用此标准时,供方 应向购方提供生产、安装和服务过程的质量保证。 选用ISO 9003: 1994标准的条件是:产品结构简单,设计和制造复杂性较低,设计成 熟程度较高,一般没有安全性和经济性的要求。当选用该标准时,供方应向购方提供产 品最终检验和试验的质量保证。 ISO 9001~ISO 9003: 1994三项质量保证标准,从性质看虽属推荐标准,但一旦决定 选用并写入合同条款时,则即具有法律效力,供方需强制执行。
4. 质量保证标准(ISO 9001~ 9003)之间及其与质量管理标准(ISO 9004 -1)的关系 (1) ISO 9001~ 9003质量保证标准之间的关系 ISO 9000-94系列标准中的质量保证标准ISO 9001~ 9003是一组三个不同的质量 体系的保证模式。它们各自独立,但又有内在的紧密关系。其中: ISO 9003是最终检验和试验质量保证模式,含 16项体系要素,是要求提供证据最 少的质量保证模式; ISO 9002是生产、安装、服务的质量保证模式,含 19项体系要素,且包含了ISO 9003的要素; ISO 9001是设计、生产、安装、服务的质量保证模式,含 20项体系要素,且包含 了ISO 9002的要素。 (2)质量保证标准(ISO 9001~ 9003)与质量管理标准(ISO 9004 -1)之间的关系 ISO 9004 -1是质量管理标准,其用途是指导企业推行质量管理,建立质量管理体 系,提高管理水平;而ISO 9001~ 9003是一组三个不同模式的质量保证标准。尽管它 们的性质和用途不同,但有内在联系: 如, ISO 9004 -1标准含 21项体系要素,且两类体系的要素基本相同或一致,只 要ISO 9004 -1体系中再增加“合同评审”和“购方提供产品的控制”(当需要时)两项 要素,则按ISO 9004 -1建立的质量管理体系,就可以达到ISO 9001~ 9003质量保证体 系运行的要求。 因此,企业的质量管理体系是企业产品质量保证体系的基础。
讨论题 1、什么是标准?软件 程标准化的概念是什 么? 2、为什么需要制定和执行软件 程标准? 3、 ISO 9000系列标准的内容 ? 1. 简单地说: 标准就是完成一项 作必须遵循的统一的模板和技术指标; 软件开发过程中建立的软件 程标准和软件文档规范
2、为什么需要制定和执行软件 程标准? • 可提高软件的可靠性、可维护性和可移植性; • 可提高软件人员的技术水平,减少差错和误解; • 可提高软件人员之间的通信效率,提高软件的生产 率; • 有利于软件管理;有利于降低软件产品的成本和运 行维护成本; • 有利于缩短软件开发周期。 34
3、 ISO 9000系列标准的内容 ? 35
b389f267c77b5ec3d5f1a5e8aa6e84fe.ppt