《软件工程标准化与文档.ppt》由会员分享,可在线阅读,更多相关《软件工程标准化与文档.ppt(38页珍藏版)》请在金锄头文库上搜索。
1、软件工程标准与软件文档o软件工程标准o软件工程标准的层次o中国的软件标准o软件文档的作用与分类o软件文档的质量要求 1 什么是软件工程标准oo软件危机的出路在于软件开发的软件危机的出路在于软件开发的工程化工程化和和标标准化准化。oo程序设计语言的标准化程序设计语言的标准化:为某一程序设计语:为某一程序设计语言规定若干个标准子集,对于语言的实现者言规定若干个标准子集,对于语言的实现者和用户都带来了很大方便。和用户都带来了很大方便。oo软件过程的标准化软件过程的标准化:软件生存期各个阶段的:软件生存期各个阶段的工作建立标准或规范工作建立标准或规范2软件工程标准的类型oo国家标准国家标准GBT 15
2、5381995软件工程标软件工程标准分类法准分类法给出软件工程标准的分类。给出软件工程标准的分类。oo涉及涉及过程管理过程管理、产品管理产品管理、资源管理资源管理,以及,以及确认与验证确认与验证3软件工程标准的类型(续)oo过程标准过程标准 方法、技术、度量方法、技术、度量oo产品标准产品标准 需求、设计、部件、描述、计划、报告需求、设计、部件、描述、计划、报告oo专业标准专业标准 职业、道德准则、认证、特许、课程职业、道德准则、认证、特许、课程oo记法标准记法标准 术语、表示法、语言术语、表示法、语言4oo软件工程标准的清单可用软件工程标准的清单可用二维表二维表表示。表示。(P2 (P2 表
3、表1.1,1.2)1.1,1.2)oo表中填入的标准表明了表中填入的标准表明了软件工程标准的工作软件工程标准的工作范围范围和和如何对标准分类如何对标准分类。oo已经制定的标准都可在表中找到相应的位置,已经制定的标准都可在表中找到相应的位置,而且它可启发人们去制定新的标准。而且它可启发人们去制定新的标准。5软件工程标准化的作用oo可提高软件的可提高软件的可提高软件的可提高软件的可靠性可靠性可靠性可靠性、可维护性可维护性可维护性可维护性和和和和可移植性可移植性可移植性可移植性;oo可提高软件人员的可提高软件人员的可提高软件人员的可提高软件人员的技术水平技术水平技术水平技术水平,减少差错和误解;,减
4、少差错和误解;,减少差错和误解;,减少差错和误解;oo可提高软件人员之间的可提高软件人员之间的可提高软件人员之间的可提高软件人员之间的通信效率通信效率通信效率通信效率,提高软件的,提高软件的,提高软件的,提高软件的生产率生产率生产率生产率;oo有利于软件管理;有利于有利于软件管理;有利于有利于软件管理;有利于有利于软件管理;有利于降低软件产品的成本降低软件产品的成本降低软件产品的成本降低软件产品的成本和和和和运行维运行维运行维运行维护成本护成本护成本护成本;oo有利于有利于有利于有利于缩短软件开发周期缩短软件开发周期缩短软件开发周期缩短软件开发周期。6软件工程标准的层次(1) 国际标准国际标准
5、 由国际联合机构制定和公布,提供各国参考由国际联合机构制定和公布,提供各国参考的标准。的标准。n n 国际标准化组织国际标准化组织国际标准化组织国际标准化组织 ISOISO ( (International International Standards OrganizationStandards Organization) )ooISOISO建立了建立了建立了建立了“ “计算机与信息处理技术委员会计算机与信息处理技术委员会计算机与信息处理技术委员会计算机与信息处理技术委员会” ”, , 简称简称简称简称ISOISOTC97TC97,专门负责与计算机有关的标,专门负责与计算机有关的标,专门负责
6、与计算机有关的标,专门负责与计算机有关的标准化工作。准化工作。准化工作。准化工作。如:如: ISO 8631ISO 863186 Information 86 Information processing_programprocessing_program constructs and conventions for their representationconstructs and conventions for their representation7(2) (2) 国家标准国家标准国家标准国家标准由政府或国家级的机构制定或批准,适用于全国范围的标准。由政府或国家级的机构制定或批准,适
7、用于全国范围的标准。由政府或国家级的机构制定或批准,适用于全国范围的标准。由政府或国家级的机构制定或批准,适用于全国范围的标准。n n GB GB 中华人民共和国国家技术监督局中华人民共和国国家技术监督局中华人民共和国国家技术监督局中华人民共和国国家技术监督局公布实施的公布实施的公布实施的公布实施的标准,简称标准,简称标准,简称标准,简称“ “国标国标国标国标” ”。n n ANSI ANSI (American National Standards Institute)(American National Standards Institute) n nFIPS FIPS ( (NBSNBS
8、) )Federal Information ProcessingFederal Information Processing Standards (National Bureau of Standards)Standards (National Bureau of Standards)n n BS BS (British Standard)(British Standard) 英国国家标准。英国国家标准。英国国家标准。英国国家标准。n n DIN DIN ( (DeutschesDeutsches InstitutInstitut frfr Nor- Nor- mungmung ) ) 德国
9、标准德国标准德国标准德国标准协会协会协会协会n n JIS JIS (Japanese Industrial Standard)(Japanese Industrial Standard)日本工业标准日本工业标准日本工业标准日本工业标准8(3) 行业标准行业标准 由行业机构、学术团体或国防机构制定,适由行业机构、学术团体或国防机构制定,适用于某个业务领域的标准。用于某个业务领域的标准。n n IEEE IEEE ( ( Institute of Electrical and Institute of Electrical and Electronics Engineers Electronic
10、s Engineers ) )n n 软件标准分技术委员会软件标准分技术委员会软件标准分技术委员会软件标准分技术委员会( (SESSSESS) ) n n如:如:如:如:ANSIANSIIEEE IEEE StrStr 828 82819831983软件配置管理计软件配置管理计软件配置管理计软件配置管理计划标准划标准划标准划标准。n nGJB中华人民共和国国家军用标准中华人民共和国国家军用标准n nGJB 437GJB 4378888军用软件开发规范军用软件开发规范军用软件开发规范军用软件开发规范9ooDOD_STD ( Department Of Defense _STanDards)美国国
11、防部标准美国国防部标准n nDOD-STD-2167ADOD-STD-2167A防务系统软件开发防务系统软件开发 ooMIL_S ( MILitary_Standard)美国军用标准美国军用标准n nMIL-STD-498MIL-STD-498软件开发和文档软件开发和文档 10(4) 企业规范企业规范 一些大型企业或公司,由于软件工程工作的一些大型企业或公司,由于软件工程工作的需要,制定适用于本部门的规范。需要,制定适用于本部门的规范。n n 如,如,如,如,IBMIBM通用产品部通用产品部通用产品部通用产品部19841984年制定的年制定的年制定的年制定的程序设程序设程序设程序设计开发指南计
12、开发指南计开发指南计开发指南供公司内部使用。供公司内部使用。供公司内部使用。供公司内部使用。(5) 项目规范项目规范 由某一科研生产项目组织制定,为该项任务由某一科研生产项目组织制定,为该项任务专用的软件工程规范。专用的软件工程规范。11中国的软件标准o从1983年起开始制定和发布o分类(P7 表1.3)n n基础标准基础标准n n开发标准开发标准n n文档标准文档标准n n管理标准管理标准12什么是软件文档?o表示对活动、需求、过程或结果活动、需求、过程或结果进行描述、描述、定义、规定、报告或认证定义、规定、报告或认证的任何书面或图示的信息o和计算机程序共同构成了特定软件o没有文档的软件不能
13、称为软件20为什么需要软件文档?o软件文档的桥梁作用21为什么需要软件文档?(续)o项目管理的依据o技术交流的语言o保证项目质量o培训与维护的资料o软件维护支持o记载软件历史的语言22有哪些软件文档?o软件文档的分类23谁使用哪类软件文档?o软件文档与使用对象用用户户用用户户手册手册操作手册操作手册开开发发人人员员可行性研究可行性研究报报告告概要概要设计说设计说明明书书项项目开目开发计发计划划详细设计说详细设计说明明书书软软件需求件需求说说明明书书数据数据库设计说库设计说明明书书数据要求数据要求说说明明书书测试计测试计划划测试测试分析分析报报告告维护维护人人员员(各(各类类)设计说设计说明明书
14、书测试测试分析分析报报告告模模块块开开发发卷宗卷宗管理人管理人员员可行性研究可行性研究报报告告项项目开目开发计发计划划模模块块开开发发卷宗卷宗开开发进发进度月度月报报项项目开目开发总结报发总结报告告24什么时候需要哪类软件文档?可行性研可行性研究与计划究与计划需求分需求分析析软件设计软件设计编码与实现编码与实现集成与测试集成与测试运行与维护运行与维护可行性报告可行性报告项目开发计划项目开发计划软件需求说明书软件需求说明书数据要求说明书数据要求说明书测试计划测试计划概要设计说明书概要设计说明书详细设计说明书详细设计说明书数据库设计说明书数据库设计说明书模块开发卷宗模块开发卷宗用户手册用户手册操作
15、手册操作手册测试分析报告测试分析报告开发进度月报开发进度月报项目开发总结项目开发总结软件生存周期各阶段的文档编制25文档所回答的问题?项目开目开发总结开开发进度月度月报测试分析分析报告告操作手册操作手册用用户手册手册模模块开开发卷宗卷宗数据数据库设计说明明书详细设计说明明书概要概要设计说明明书测试计划划数据要求数据要求说明明书软件需求件需求说明明书项目开目开发计划划可行性研究可行性研究报告告何何处做做(Where)何何时做做(When)谁来做来做(Who)怎么做怎么做(How)做什么做什么(What)为什么什么(Why)阶段段文档文档26对文档编制的质量要求oo如果不重视文档编写工作,或是对文
16、档编写工作的如果不重视文档编写工作,或是对文档编写工作的如果不重视文档编写工作,或是对文档编写工作的如果不重视文档编写工作,或是对文档编写工作的安排不当,就不可能得到高质量的文档。安排不当,就不可能得到高质量的文档。安排不当,就不可能得到高质量的文档。安排不当,就不可能得到高质量的文档。oo质量差的文档质量差的文档质量差的文档质量差的文档n n 使读者难于理解使读者难于理解使读者难于理解使读者难于理解,给使用者造成许多不便给使用者造成许多不便给使用者造成许多不便给使用者造成许多不便n n 会削弱对软件的管理会削弱对软件的管理会削弱对软件的管理会削弱对软件的管理(难以确认和评价开发工作(难以确认
17、和评价开发工作(难以确认和评价开发工作(难以确认和评价开发工作的进展情况的进展情况的进展情况的进展情况) ),提高软件成本提高软件成本提高软件成本提高软件成本( (一些工作可能被迫一些工作可能被迫一些工作可能被迫一些工作可能被迫返工返工返工返工) )n n 造成造成造成造成误操作误操作误操作误操作27对编制高质量文档的要求(1) 针对性针对性n n 文档编制以前文档编制以前文档编制以前文档编制以前应分清读者对象应分清读者对象应分清读者对象应分清读者对象。按不同的类型、。按不同的类型、。按不同的类型、。按不同的类型、不同层次的读者,决定怎样适应他们的需要。不同层次的读者,决定怎样适应他们的需要。
18、不同层次的读者,决定怎样适应他们的需要。不同层次的读者,决定怎样适应他们的需要。n n 管理文档主要面向管理人员管理文档主要面向管理人员管理文档主要面向管理人员管理文档主要面向管理人员n n 用户文档主要面向用户用户文档主要面向用户用户文档主要面向用户用户文档主要面向用户n n 这两类文档不应像开发文档这两类文档不应像开发文档这两类文档不应像开发文档这两类文档不应像开发文档( (面向开发人员面向开发人员面向开发人员面向开发人员) )那样那样那样那样过多使用软件的专用术语。过多使用软件的专用术语。过多使用软件的专用术语。过多使用软件的专用术语。28(2) 精确性精确性 n n 文档的行文应当文档
19、的行文应当文档的行文应当文档的行文应当十分确切十分确切十分确切十分确切,不能出现多义性的描不能出现多义性的描不能出现多义性的描不能出现多义性的描述述述述。同一课题几个文档的内容应当是协调一致,。同一课题几个文档的内容应当是协调一致,。同一课题几个文档的内容应当是协调一致,。同一课题几个文档的内容应当是协调一致,没有矛盾的。没有矛盾的。没有矛盾的。没有矛盾的。(3) 清晰性清晰性n n 文档编写应文档编写应文档编写应文档编写应力求简明力求简明力求简明力求简明,如有可能,配以适当的图,如有可能,配以适当的图,如有可能,配以适当的图,如有可能,配以适当的图表,以增强其清晰性。表,以增强其清晰性。表,
20、以增强其清晰性。表,以增强其清晰性。29(4) 完整性完整性n n 任何一个文档都应当是任何一个文档都应当是任何一个文档都应当是任何一个文档都应当是完整的完整的完整的完整的、独立的独立的独立的独立的,它应,它应,它应,它应自自自自成体系成体系成体系成体系。n n 例如,例如,例如,例如,前言部分应做一般性介绍,正文给出中心前言部分应做一般性介绍,正文给出中心前言部分应做一般性介绍,正文给出中心前言部分应做一般性介绍,正文给出中心内容,必要时还有附录,列出参考资料等。内容,必要时还有附录,列出参考资料等。内容,必要时还有附录,列出参考资料等。内容,必要时还有附录,列出参考资料等。n n 同一课题
21、的几个文档之间可能有些部分内容相同,同一课题的几个文档之间可能有些部分内容相同,同一课题的几个文档之间可能有些部分内容相同,同一课题的几个文档之间可能有些部分内容相同,这种重复是必要的。这种重复是必要的。这种重复是必要的。这种重复是必要的。n n 不要在文档中出现转引其它文档内容的情况不要在文档中出现转引其它文档内容的情况不要在文档中出现转引其它文档内容的情况不要在文档中出现转引其它文档内容的情况。如,如,如,如,一些段落没有具体描述,用一些段落没有具体描述,用一些段落没有具体描述,用一些段落没有具体描述,用“ “见见见见文档文档文档文档节节节节” ”的的的的方式方式方式方式. .30(5)
22、灵活性灵活性各个不同软件项目,其规模和复杂程度有着许多实各个不同软件项目,其规模和复杂程度有着许多实各个不同软件项目,其规模和复杂程度有着许多实各个不同软件项目,其规模和复杂程度有着许多实际差别,不能一律看待。际差别,不能一律看待。际差别,不能一律看待。际差别,不能一律看待。oo应根据具体的软件开发项目,决定编制的文档种类。应根据具体的软件开发项目,决定编制的文档种类。应根据具体的软件开发项目,决定编制的文档种类。应根据具体的软件开发项目,决定编制的文档种类。n n 软件开发的管理部门应该软件开发的管理部门应该软件开发的管理部门应该软件开发的管理部门应该根据本单位承担的应用根据本单位承担的应用
23、根据本单位承担的应用根据本单位承担的应用软件的专业领域和本单位的管理能力软件的专业领域和本单位的管理能力软件的专业领域和本单位的管理能力软件的专业领域和本单位的管理能力,制定一个制定一个制定一个制定一个对文档编制要求的实施规定对文档编制要求的实施规定对文档编制要求的实施规定对文档编制要求的实施规定。31n n 对于一个具体的应用软件项目,项目负责人应根对于一个具体的应用软件项目,项目负责人应根对于一个具体的应用软件项目,项目负责人应根对于一个具体的应用软件项目,项目负责人应根据上述实施规定,确定一个文档编制计划。其中据上述实施规定,确定一个文档编制计划。其中据上述实施规定,确定一个文档编制计划
24、。其中据上述实施规定,确定一个文档编制计划。其中包括:包括:包括:包括:oo 编制哪几种文档,详细程度如何编制哪几种文档,详细程度如何编制哪几种文档,详细程度如何编制哪几种文档,详细程度如何n n决定方式可借鉴国外决定方式可借鉴国外决定方式可借鉴国外决定方式可借鉴国外P69 P69 (求和法和规模法)(求和法和规模法)(求和法和规模法)(求和法和规模法)oo 各文档的编制负责人和进度要求各文档的编制负责人和进度要求各文档的编制负责人和进度要求各文档的编制负责人和进度要求oo 审查审查审查审查/ /批准负责人和时间进度安排批准负责人和时间进度安排批准负责人和时间进度安排批准负责人和时间进度安排o
25、o 在开发时期内各文档的维护、修改和管理的在开发时期内各文档的维护、修改和管理的在开发时期内各文档的维护、修改和管理的在开发时期内各文档的维护、修改和管理的负责人,以及批准手续负责人,以及批准手续负责人,以及批准手续负责人,以及批准手续n n 有关的开发人员必须严格执行这个文档编制计划。有关的开发人员必须严格执行这个文档编制计划。有关的开发人员必须严格执行这个文档编制计划。有关的开发人员必须严格执行这个文档编制计划。32oo当所开发的软件系统非常大时,一种文档可以分成当所开发的软件系统非常大时,一种文档可以分成当所开发的软件系统非常大时,一种文档可以分成当所开发的软件系统非常大时,一种文档可以
26、分成几卷编写。几卷编写。几卷编写。几卷编写。例如,例如,例如,例如,n 项目开发计划项目开发计划项目开发计划项目开发计划可分写为:可分写为:可分写为:可分写为:oo 质量保证计划质量保证计划质量保证计划质量保证计划oo 配置管理计划配置管理计划配置管理计划配置管理计划oo 用户培训计划用户培训计划用户培训计划用户培训计划oo 安装实施计划等安装实施计划等安装实施计划等安装实施计划等。n 系统设计说明书系统设计说明书系统设计说明书系统设计说明书可分写为:可分写为:可分写为:可分写为:oo 系统设计说明书系统设计说明书系统设计说明书系统设计说明书oo 子系统设计说明书。子系统设计说明书。子系统设计
27、说明书。子系统设计说明书。 33n 程序设计说明书程序设计说明书程序设计说明书程序设计说明书可分写为:可分写为:可分写为:可分写为:oo 程序设计说明书程序设计说明书程序设计说明书程序设计说明书oo 接口设计说明书接口设计说明书接口设计说明书接口设计说明书oo 版本说明。版本说明。版本说明。版本说明。n 操作手册操作手册操作手册操作手册可分写为:可分写为:可分写为:可分写为:oo 操作手册操作手册操作手册操作手册oo 安装实施过程。安装实施过程。安装实施过程。安装实施过程。n 测试计划测试计划测试计划测试计划可分写为:可分写为:可分写为:可分写为: oo 测试计划测试计划测试计划测试计划34o
28、o 测试设计说明测试设计说明测试设计说明测试设计说明oo 测试规程测试规程测试规程测试规程oo 测试用例。测试用例。测试用例。测试用例。n 测试分析报告测试分析报告测试分析报告测试分析报告可分写为:可分写为:可分写为:可分写为:oo 综合测试报告综合测试报告综合测试报告综合测试报告oo 验收测试报告。验收测试报告。验收测试报告。验收测试报告。n n 项目开发总结报告项目开发总结报告项目开发总结报告项目开发总结报告也可分写成:也可分写成:也可分写成:也可分写成:oo 项目开发总结报告项目开发总结报告项目开发总结报告项目开发总结报告oo 资源环境统计。资源环境统计。资源环境统计。资源环境统计。35
29、oo应根据应根据应根据应根据任务的规模任务的规模任务的规模任务的规模、复杂性复杂性复杂性复杂性、项目负责人对该软件项目负责人对该软件项目负责人对该软件项目负责人对该软件的开发过程及运行环境所需详细程度的判断的开发过程及运行环境所需详细程度的判断的开发过程及运行环境所需详细程度的判断的开发过程及运行环境所需详细程度的判断,确定确定确定确定文档的详细程度文档的详细程度文档的详细程度文档的详细程度。oo对国标对国标对国标对国标GB8567-2006GB8567-2006计算机软件文档编制规范计算机软件文档编制规范计算机软件文档编制规范计算机软件文档编制规范所建议的所有条款都所建议的所有条款都所建议的
30、所有条款都所建议的所有条款都n n 可以扩展可以扩展可以扩展可以扩展,进一步细分,以适应需要;,进一步细分,以适应需要;,进一步细分,以适应需要;,进一步细分,以适应需要;n n 如果条款中有些细节并非必需,如果条款中有些细节并非必需,如果条款中有些细节并非必需,如果条款中有些细节并非必需,也可以根据实际也可以根据实际也可以根据实际也可以根据实际情况压缩合并情况压缩合并情况压缩合并情况压缩合并。36oo程序的设计表现形式程序的设计表现形式程序的设计表现形式程序的设计表现形式,可以使用,可以使用,可以使用,可以使用程序流程图程序流程图程序流程图程序流程图、判定判定判定判定表表表表、程序描述语言程
31、序描述语言程序描述语言程序描述语言( (PDLPDL) )、或或或或问题分析图问题分析图问题分析图问题分析图( (PADPAD) )等。等。等。等。oo对于对于对于对于文档的表现形式文档的表现形式文档的表现形式文档的表现形式,没有规定或限制。可以使用,没有规定或限制。可以使用,没有规定或限制。可以使用,没有规定或限制。可以使用自然语言自然语言自然语言自然语言、也可以使用、也可以使用、也可以使用、也可以使用形式化的语言形式化的语言形式化的语言形式化的语言或或或或半形式化的半形式化的半形式化的半形式化的语言语言语言语言。oo当国标当国标当国标当国标计算机软件文档编制规范计算机软件文档编制规范计算机
32、软件文档编制规范计算机软件文档编制规范中规定的文档中规定的文档中规定的文档中规定的文档种类不能满足某些应用部门的特殊需要时,种类不能满足某些应用部门的特殊需要时,种类不能满足某些应用部门的特殊需要时,种类不能满足某些应用部门的特殊需要时,可以建可以建可以建可以建立一些特殊的文档种类要求立一些特殊的文档种类要求立一些特殊的文档种类要求立一些特殊的文档种类要求,这些要求可以包含,这些要求可以包含,这些要求可以包含,这些要求可以包含在在在在本单位的文档编制实施规定本单位的文档编制实施规定本单位的文档编制实施规定本单位的文档编制实施规定中。中。中。中。37oo为使软件文档能为使软件文档能为使软件文档能
33、为使软件文档能n n 起到多种桥梁的作用起到多种桥梁的作用起到多种桥梁的作用起到多种桥梁的作用n n 有助于程序员编制程序有助于程序员编制程序有助于程序员编制程序有助于程序员编制程序n n 有助于管理人员监督和管理软件的开发有助于管理人员监督和管理软件的开发有助于管理人员监督和管理软件的开发有助于管理人员监督和管理软件的开发n n 有助于用户了解软件的工作和应做的操作,有助于用户了解软件的工作和应做的操作,有助于用户了解软件的工作和应做的操作,有助于用户了解软件的工作和应做的操作,n n 有助于维护人员进行有效的修改和扩充有助于维护人员进行有效的修改和扩充有助于维护人员进行有效的修改和扩充有助于维护人员进行有效的修改和扩充oo文档的编制必须保证一定的质量。文档的编制必须保证一定的质量。文档的编制必须保证一定的质量。文档的编制必须保证一定的质量。38