软件工程基础:软件工程标准、开发方法_第1页
软件工程基础:软件工程标准、开发方法_第2页
软件工程基础:软件工程标准、开发方法_第3页
软件工程基础:软件工程标准、开发方法_第4页
软件工程基础:软件工程标准、开发方法_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.5软件工程标准

工程化的必然结果;标准化、规范化可以使各种工作有章可循;便于人员之间的信息交流。提高软件的生产效率和软件产品的质量1.5.1软件工程标准类型

软件工程标准类型是多方面的,如产品标准、过程标准、行业标准和记法标准等。

标准的范围和内容与软件工程有关方面的特性相关。

(GB/T15538-1995采用的分类法由标准划分、软件工程划分和这两种划分的表示关系组成,用二维表格来描述,标准划分确定了标准的作用,软件工程划分确定了与标准有关的软件工程方面的特性。------该表格描述了一组可能的标准)

GB/T15538-1995的标准划分

术语表示法语言标准划分过程标准方法技术度量需求设计部件描述计划报告认证职业许可课程产品标准行业标准记法标准GB/T15538-1995的软件工程划分

软件工程划分过程管理产品管理资源管理任务功能产品工程功能需求分析设计编码集成转换排错、调试产品支持软件维护概念阶段产品分析评审和审计测试需求阶段软件生存周期验证与确认功能技术管理功能设计阶段标准分类表软件生存周期

任务功能产品工程验证与确认技术管理需求过程方法8566产品行业记法术语11457标准1.5.2软件工程标准层次

根据软件工程标准制定的机构与适用范围的不同,软件工程标准可分为5个由大到小、由普通到特殊的层次。国际标准国家标准行业标准企业规范项目规范1.5.3软件工程国家标准

分类标准名称标准号(相应其它标准)基础标准软件工程术语GB/T11457-95信息处理、数据流程图、程序流程图、系统流程图、程序网络图和系统资源图的文件编制符号及约定GB1526-89(ISO5807-1985)软件工程标准分类法GB/T15538-1995信息处理、程序构造及其表示法的约定GB13502-92信息处理、单命中判定表规范GB/T15535-1995(ISO5806-1984)信息处理系统,计算机系统配置图符号及约定GB/T14085-93(ISO8790-1987)软件工程国家标准(续)开发标准信息技术、软件生存期过程GB/T8566-1995(代替GB8566-88)计算机软件单元测试GB/T15532-1995软件支持环境GB/T15853-1995信息处理、按记录组处理顺序文卷的程序流程GB/T15697-1995(ISO6593-1985)软件维护指南GB/T14079-93DOS中文信息处理系统接口规范GB/T15189-94软件工程国家标准(续)文档标准软件文档管理指南GB/T16680-1996(ISO/IECTR9294-1990)计算机软件产品开发文件编制指南GB8567-88计算机软件需求说明编制指南GB9385-88计算机软件测试文件编制规范GB936-88计算机软件配置管理计划规范GB/T12505-90软件工程国家标准(续)管理标准信息技术软件产品评价、质理特性及其使用指南GB/T16260-1996(ISO/IEC9126-1991)计算机软件质量保证计划规范GB/T12504-90计算机软件可靠性和可维护性管理GB/T14394-93计算机软件分类与代码GB/T13702-92信息技术、软件包、质量要求和测试GB/T17544-1998(ISO/IEC12119-1994)工业控制用软件评定准则GB/T13423-921.6软件开发方法

所谓软件开发方法就是使用定义好的技术及表示符号来组织软件生产过程的方法。

一般说来软件开发方法必须在以下三个方面作出规定:

①开发步骤(包括每步相应的技术和符号);②软件文档格式;③开发方案评价标准。

主要软件开发方法:结构化方法、面向对象方法、形式化方法。1.6.1结构化方法

指导思想:自顶向下、逐步求精、单入口、单出口;基本原则:抽象和功能分解;方法论:系统是由一些功能的相互联系、相互作用而形成;结构化方法系列:结构化分析方法、结构化设计方法和结构化程序设计方法。(具体)技术方法:面向数据流图的方法、IDEF0方法、Jackson方法、LCP(LogicalConstructionPrograms)方法等。

结构化方法的特点强调阶段划分;简单实用;技术成熟;应用广泛。特别适合于需求能够预先指定的系统的开发

结构化方法的不足不太适应规模大及特别复杂的项目;难于解决软件重用(复用)问题;难于适应需求变化或模糊的问题;软件维护依然比较复杂。1.6.2面向对象方法

指导思想:尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界的方法与过程。基本原则:对象+类+继承+消息通信。方法论:系统是由一些对象的相互联系、相互作用而形成。

方法系列:面向对象分析、面向对象设计、面向对象程序设计。(具体)技术方法:Coad/Yourdon方法、Booch方法、OMT方法、OOSE方法、IDEF4方法、CRC方法等。面向对象方法的特点对象与功能相比,前者更易于被人们所理解、接受和掌握,确定时客观性更强更稳定,且修改起来也更容易。(类&对象易复用、易维护)描述问题的问题空间与在计算机上解决问题的解空间在结构上相一致。(易理解)面向对象方法中的概念和表示符号,适用于整个软件开发过程。(易学习)软件开发阶段的划分通常比较模糊,分析和设计之间没有鸿沟。(易处理需求模糊或变化的情况)面向对象方法的不足类作为复用单元,有时显得太小;继承会增加类间的耦合性;面向对象方法没有结构化方法成熟;(如对象语义缺乏严格的普遍认可的数学模型)...1.6.3形式化方法

指导思想:借助数学方法来描述目标软件系统。基本原则:形式分析和推理。方法论:系统可以通过严格的、规范化的数学理论经分析、推理得到。方法系列:形式化分析方法、形式化设计方法、转换方法。(具体)技术方法:VDM(ViennaDevelopmentMethod,维也纳)方法、RASIE方法等。形式化方法的特点形式模型完整、一致和无二义性;支持形式推理,便于软件验证;便于软件自动生成;......形式化方法的不足开发成本高;一般人不易接受,需要培训;灵活性差;难以与软件开发过程平滑地结合;支持工具少;......1.6.4开发方法的结合研究

利用各种方法的长处,从而实现优势互补

.S.Liu等人提出了一门SOFL(StructuredObject-basedFormalLanguage)语言和一种集成了结构化方法、面向对象方法和形式化方法于一体的SOFL开发方法学。

-----在需求分析和规格说明阶段采用结构化方法,在设计和实现阶段采用面向对象方法,在软件开发全过程中一些对软件质量有重要影响的部分采用形式化方法。1.7软件工程工具和环境

工欲善其事,必先利其器;对一个待开发的系统,先考虑采用何种方法(看待系统的立场、观点等),然后再考虑采用何种工具(提高开发质量和效率)。1.7.1软件工具

软件工具是指为支持计算机软件的开发、维护及有关工作而研制的程序系统。

使用软件工具的目的是降低软件开发和维护的成本,提高软件产品的生产效率和质量。

软件工具分类----软件开发工具

软件开发工具用于软件开发过程的各种开发活动。需求分析工具设计工具编码工具测试工具分析、设计工具MicrosoftVisioRationalRose编码工具Eclipse----(Java程序编辑器)软件维护工具辅助维护人员对代码及其有关文档进行各种维护活动。版本控制工具文档分析工具逆向工程工具(代码-〉设计-〉分析)再工程工具(含逆向和正向工程)再工程工具---软件重构工具软件管理和支持工具辅助软件项目管理人员和支持人员的各种管理和支持活动。项目管理工具配置管理工具

开发信息库工具

软件评价工具

软件工具的特点与不足一般情况下一种软件工具只支持一种活动。(软件开发和维护过程中进行的活动较多)工具界面不统一,工具内部无联系,工具切换由人工操作。(对大型软件的开发和维护的支持能力受限)

工具集成化1.7.2集成型软件开发环境

由软件工具集和环境集成机制构成。软件工具集用以支持软件开发的相关过程、活动和任务;(支持某种开发方法)环境集成机制为工具集成和软件开发、维护和管理提供统一的支持。

CASE将软件工具和开发方法集成集成化项目支持环境(IntegratedProjectSupportEnvironment,IPSE)

宿主机硬件和操作系统环境数据库或文件工具与系统界面核心层装入程序测试程序基本层调试程序运行程序配置管理操作支持工具命令解释程序编辑程序各种语言编译程序连接程序需求分析工具测试分析工具维护管理工具快速原型开发工具美化打印工具其它工具用户界面各种方法开发工具(支持软件工程各种方法学)应用层UNIXShell语言ECMA软件开发环境的参考模型

数据存取服务消息服务用户界面服务数据集成服务工具槽任务管理服务北大:青鸟系统1.8软件文档

软件文档为提高软件工程项目的开发和管理能力提供了重要的基础。

在软件生存周期中,软件文档种类多、编制工作量大、技术性强。

一方面要对软件文档的地位和作用应有充分的认识,另一方面要提高文档的质量。1.8.1软件文档的含义及要求

文档是指某种数据媒体和其中所记录的数据。

作用:提高了软件开发过程的可视性;有利于及时纠正错误,减少返工,提高软件开发效率;为开发人员、管理人员以及用户等之间的协作和交流提供了基础。

要求:及时性;完整性;实用性;规范性。1.8.2软件文档的种类

按照文档产生和使用的范围不同,软件文档可以分成三类,即:技术文档、管理文档和用户文档。其中,技术文档和管理文档又统称为系统文档。

技术文档是指在软件开发过程中作为开发人员前一阶段工作成果和后一阶段工作依据的文档。

管理文档是指在软件开发过程中由开发人员等制定并提交给

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论