第9章 软件工程标准化及软件工程环境_第1页
第9章 软件工程标准化及软件工程环境_第2页
第9章 软件工程标准化及软件工程环境_第3页
第9章 软件工程标准化及软件工程环境_第4页
第9章 软件工程标准化及软件工程环境_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

第9章软件工程(ruǎnjiànɡōnɡchénɡ)标准化及软件工程(ruǎnjiànɡōnɡchénɡ)环境

学习目标软件工程标准化的概念及意义ISO9000系列标准及在质量认证中的实施CMM模型的等级划分与评价标准软件工程环境(huánjìng)的概念、分类、构成及特性CASE环境的组成与结构1共五十页教学内容

9.1软件工程标准化9.2软件质量(zhìliàng)认证

9.3CMM模型

9.4软件工程环境

9.5CASE环境

本章小结第9章软件工程(ruǎnjiànɡōnɡchénɡ)标准化及软件工程(ruǎnjiànɡōnɡchénɡ)环境2共五十页9.1软件工程(ruǎnjiànɡōnɡchénɡ)标准化主要教学内容:

9.1.1软件工程(ruǎnjiànɡōnɡchénɡ)标准化的概念

9.1.2软件工程标准化的意义3共五十页9.1软件工程(ruǎnjiànɡōnɡchénɡ)标准化9.1.1软件工程标准化的概念软件工程标准的类型也是多方面的,例产品标准,包括需求、设计、部件、描述(miáoshù)、报告等;过程标准,包括方法、技术、检验、质量等;记法标准,包括表示法、语言等;GB/T15538-1995软件工程标准分类:过程标准产品标准专业标准记号4共五十页9.1软件工程(ruǎnjiànɡōnɡchénɡ)标准化9.1.2软件工程标准化的意义(1)减少开发人员间联系的差错和误解,提高软件的生产效率,缩短软件开发周期。(2)有利于软件管理,降低开发和运行成本(chéngběn)(3)提高软件产品的质量(可靠性、可维护性和可移植性)(4)可提高软件人员的技术水平5共五十页9.2软件(ruǎnjiàn)质量认证主要教学内容:

9.2.1ISO9000系列标准(biāozhǔn)

9.2.2软件质量认证9.2.3ISO9000-3的要点6共五十页9.2软件质量(zhìliàng)认证质量保证贯穿整个软件开发过程(guòchéng),确保产品达到规定的质量水平。质量认证,检验整个企业的质量水平,注重软件企业的整体资质,全面考察企业的质量体系,检验它是否具有设计、开发和生产符合质量要求的软件产品的能力。7共五十页9.2软件质量(zhìliàng)认证9.2.1ISO9000系列标准ISO9000系列标准包括:ISO9000质量(zhìliàng)管理与质量(zhìliàng)保证标准ISO9001质量体系ISO9002质量体系ISO9003质量体系ISO9004质量管理与质量体系要素8共五十页9.2.2软件(ruǎnjiàn)质量认证质量认证又称为合格认证。1986年国际标准化组织(ISO)定义质量认证为:由可以充分信任的第三方证实某一经鉴定的产品或服务符合特定标准或其他技术规范的活动(huódòng)。质量认证的特点:

1、质量认证的对象是产品或服务,主要针对的是产品。其中对产品的质量认证分为对产品本身的质量认证和对产品生产过程的质量认证。9共五十页9.2.2软件质量(zhìliàng)认证2、认证的依据是标准。标准常常是被公认的或具有权威性的有关质量管理的国际标准或国家标准,也可能(kěnéng)是行业标准或其他标准。3、通过审核、取得认证的标志是给予合格证书或准许使用合格标志。4、质量认证是第三方开展的活动。由具有专门技术、设备和人员的第三方,作为专门从事质量认证的机构,可以由国家权威机构授权,进行公正的、科学的质量审核和认证,因而是可以信赖的。供方和需方出具合格证明都不属于认证。10共五十页9.2.2软件质量(zhìliàng)认证质量认证标准,从1987年国际标准化组织公布的ISO9000系列质量管理标准开始得到确立,软件行业的质量认证也得到广泛关注。(1)为保证产品质量,ISO9000要求(yāoqiú)在生产过程中,对影响产品质量的所有因素要全面控制与管理。(2)ISO9000标准要求实现(3)质量管理必须坚持进行质量改进,贯彻执行ISO9000标准,就是企业加强质量管理,提高产品质量的过程。11共五十页9.2软件(ruǎnjiàn)质量认证9.2.3ISO9000-3的要点(1)ISO9000-3标准仅适用于依照合同进行的单独的订货开发软件,不适用于面向多数用户销售的程序软件包。(2)在包括合同在内的全部工序中进行审查,并要求一切文档化。(3)ISO9000-3对合同双方的责任均做出了明确规定,需方应收集使用部门意见,归纳形成需方需求,详细传达给供方,明确所要求的技术(jìshù)条件,才可能对供方提出实施质量保证的要求。12共五十页9.2软件(ruǎnjiàn)质量认证(4)将质量制作入产品之中是ISO9000-3最重要的质量保证体系。(5)供方应建立(jiànlì)与实施全面质量审核制度13共五十页9.3CMM模型(móxíng)主要(zhǔyào)教学内容:

9.3.1软件过程成熟度模型

9.3.2关键过程域

9.3.3成熟度提问单14共五十页9.3CMM模型(móxíng)软件开发的风险之所以大,是由于软件过程能力低。其中最关键的问题在于软件开发机构不能很好地管理其软件过程,从而使得一些好的开发方法和技术起不到预期的作用。通常用软件过程能力来描述软件企业遵循(zūnxún)其软件过程能够实现的预期结果。

软件过程成熟度用于描述软件过程被明确和有效地定义、管理、测量和控制的程度。15共五十页9.3CMM模型(móxíng)9.3.1软件过程成熟度模型

软件过程能力成熟度模型CMM(CapabilityMaturityModel),是在1987年,由美国卡内基-梅隆大学软件工程研究(yánjiū)院(SEI)根据联邦政府的要求,研究(yánjiū)提出的模型,用于评估软件供应商的能力。为了刻画具体的成熟度,CMM将软件过程的能力成熟度分成不同的等级,CMM模型把成熟度等级分为五级,共包括18个关键过程域,52个过程目标,3168种关键实践。16共五十页9.3CMM模型(móxíng)以下给出5个等级的软件企业过程成熟度的特征:(1)初始级(Initial)软件过程是无序的,规划落实得不到保障。管理无章,对过程几乎没有定义,缺乏(quēfá)健全的管理制度开发项目成效不稳定,成功取决于个人努力,产品的性能和质量依赖于个人的能力。(2)可重复级(Repeatable)管理制度化,建立了基本的项目管理过程来管理费用、进度等。初步实现标准化,制定了必要的过程规划和章程能重复早先类似项目取得的成功17共五十页9.3CMM模型(móxíng)(3)已定义级(Defined)软件管理和工程(gōngchéng)两个方面,均实现标准化和文档化。建立了完善的评审和培训制度。技术活动和管理活动得到稳定实施。项目的质量、进度和费用均可控制。使用经过批准和论证的标准软件过程来开发和维护软件。18共五十页9.3CMM模型(móxíng)(4)已管理级(Managed)对软件过程和产品有定量的理解和控制(kòngzhì)软件过程中活动的质量可度量已实现项目产品和过程的控制可预测过程和产品质量趋势(5)优化级(Optimizing)可采用新思想、新技术使过程不断改进对过程可量化,并可据此进行分析,提出改进过程的有效方法19共五十页9.3CMM模型(móxíng)9.3.2关键过程域

过程域是指互相关联的若干软件实践活动和有关基础设施的一个集合。除初始级外,其他4级均有若干指示软件机构改进软件过程的要点,称为关键过程域(KeyProcessArea,KPA),为了确保不同等级的软件过程能力成熟度达到各自的目标,成功地完成这些对实现(shíxiàn)该等级的目标起关键性作用的过程域十分重要,对实施关键过程域起关键作用的措施、活动、规程等,又称为关键实践(KeyPractice),关键过程域的目标就是通过关键实践的实施来达到。20共五十页9.3CMM模型(móxíng)9.3.3成熟度提问单提问单涉及到软件企业的组织结构资源、人员及培训技术、文档管理标准化、工作过程数据管理和数据分析过程控制(kòngzhì)等方面,由于涉及5个等级的提问单内容较多,以下仅给出各个等级的部分提问单的问题。(1)二级的问题(2)三级的问题(3)四级的问题(4)五级的问题21共五十页9.4软件工程(ruǎnjiànɡōnɡchénɡ)环境主要(zhǔyào)教学内容:9.4.1什么是软件工程环境

9.4.2软件开发环境的特点

9.4.3软件开发环境的模型22共五十页9.4软件工程(ruǎnjiànɡōnɡchénɡ)环境软件(ruǎnjiàn)工程环境(SoftWareEngineeringEnvironment,简称SEE)是指以软件(ruǎnjiàn)工程为依据,支持典型软件(ruǎnjiàn)生产的系统。软件工程环境的核心是软件开发工具。23共五十页9.4.1什么(shénme)是软件工程环境关于“环境”的概念:对不同的用户,“环境”的概念往往具有不同的含义,就一般意义而言,“环境”是指所面临的各种事实和状态。对最终用户来说,“环境”就是运行程序所使用的硬件和操作系统所组成的计算机系统。对软件工程设计而言,“环境”包括设计人员的数量、每个人的个性特点和能力以及对软件工程方法熟悉的程度(chéngdù)、使用何种程序设计语言和操作系统等。24共五十页9.4.1什么是软件工程(ruǎnjiànɡōnɡchénɡ)环境软件工程环境的定义:

软件工程环境就是指支持软件产品开发、维护和管理的软件系统,它在统一的集成机制下由一系列软件工具组成。这里主要(zhǔyào)讨论软件开发环境。

软件工具是指支持计算机软件的开发、维护、模拟、移植或管理而设计的程序系统。软件工具的开发对软件工程环境的支持是至关重要的。25共五十页9.4.1什么是软件工程(ruǎnjiànɡōnɡchénɡ)环境软件工具分为工具箱、工作台和方法指南3种类型。(1)工具箱。能自动执行某类软件(ruǎnjiàn)生存期任务的一组集成化工具。(2)工作台。实现整个软件生存期各种任务自动的一组集成化工具。(3)方法指南。为某种具体软件提供计算机化的辅助手段。26共五十页9.4.2软件工程(ruǎnjiànɡōnɡchénɡ)环境的特点软件工程环境是软件工程学科各方面研究发展的物化表现,具有以下(yǐxià)特点:(1)软件工程环境强调支持软件生产的全过程(2)软件工程环境强调大型软件的工业化生产(3)多维性(4)标准化27共五十页9.4.2软件工程环境(huánjìng)的特点从环境工具和用户界面两个方面,进一步说明软件工程环境的特点:1.集成化的软件工具工具的集成化主要(zhǔyào)包括数据集成、界面集成、控制集成和过程集成、平台集成等方面。(1)数据集成

所有的工具统一建立在公共的文件库或信息库之上。(2)界面集成

各个工具使用统一的用户界面,采用公共的交互方式。28共五十页(3)控制集成能支持开发环境中的一个工具控制另一个工具,或调用某个工具的特定服务。(4)过程(guòchéng)集成

这类开发环境了解软件过程中各个活动的时序、约束等,能主动地调度这些活动,保持它们合适的顺序。(5)平台集成指工具运行在相同的硬件和操作系统下。9.4.2软件工程(ruǎnjiànɡōnɡchénɡ)环境的特点29共五十页2.友善和统一的用户界面(yònɡhùjièmiàn)现代的开发环境常采用以下的技术来改善用户接口的友善性:(1)具有拉出(Pull-Out)功能的多级菜单(2)屏幕提示和在线帮助(On-LineHELP)技术(3)采用多窗口(Multi-Windows)技术(4)采用向导(Wizard)技术菜单、多窗口、向导和帮助信息,是用户界面的重要内容,被称为四大友善技术。9.4.2软件工程(ruǎnjiànɡōnɡchénɡ)环境的特点30共五十页 R.N.Charette在《软件工程环境:概念与技术》一书中,将软件开发环境抽象为一个模型,并给出了开发环境的定义:生产一个软件系统所需要的过程(Process)、方法(Methods)与自动化(Automation)。把开发环境模型分为由底向上的3个层次,过程、方法和自动化,并将“理想”的软件开发环境描述为“过程由充分自动化了的方法所支持的完整的过程模型(ProcessModel)”。按照Charette的观点,建立一个软件工程环境,首先(shǒuxiān)要确定一种开发模型,提出成套的、有效的开发方法,然后在这一基础上利用各种手段实现开发活动的完全自动化。9.4.3软件开发环境(huánjìng)的模型31共五十页9.5CASE环境(huánjìng)主要教学内容:

9.5.1CASE环境(huánjìng)

9.5.2CASE环境的组成与结构

9.5.3CASE环境的类型32共五十页9.5CASE环境(huánjìng)9.5.1CASE环境

CASE(ComputerAidedSoftwareEngineering,计算机辅助软件工程)是一套方法和工具,可根据系统开发商规定的应用规则,由计算机自动生成合适的计算机程序。CASE环境、CASE工具及集成(jíchénɡ)CASE(IntegratedCASE,简称I-CASE)等,几乎都成了软件工程环境的代名词。33共五十页9.5.1CASE环境(huánjìng)CASE环境的总目标,是通过(tōngguò)一组集成化的工具,建立软件开发平台,使软件开发人员实现各项开发活动的全部自动化,保证软件产品在整个生存周期内的质量,借以提高软件开发和维护的质量和生产率。34共五十页CASE环境是一个总称,它也代表了集成化项目支持(IPSE)和集成CASE(I-CASE)环境。以下主要介绍CASE环境的组成(zǔchénɡ)和结构两个方面的内容。1.CASE环境的组成 一个完整的CASE环境由宿主机和工具软件组成,可以归纳为6个部分,3个层次,如图9.1所示9.5.2CASE环境的组成(zǔchénɡ)与结构35共五十页图9.1CASE环境(huánjìng)的组成9.5.2CASE环境(huánjìng)的组成与结构36共五十页由硬件平台和操作系统(包括网络和数据库管理系统)组成的体系结构,是CASE环境的基础(地层)。集成化框架(IntegrationFramework)由一组专门程序组成,用于建立单个工具之间的通信,建立环境信息库,以及向软件开发者提供一致的界面,它们与CASE工具集成在一起,构成环境的顶层。余下的一层是服务于“可移植性”的机构(jīgòu)。它介于集成化工具与环境基础软、硬件之间,使集成后的工具无需作重大的修改即可与环境的软、硬件平台相适应。9.5.2CASE环境的组成(zǔchénɡ)与结构37共五十页(1)CASE工具CASE工具是指“用于辅助软件开发、运行、维护、管理和支持等过程中的活动的软件”。

CASE按软件过程的活动来分类,归纳为以下三类(sānlèi):支持软件开发过程的工具:包括需求分析工具、软件设计工具、编码工具、测试工具和纠错工具等。支持软件维护的工具:包括版本控制工具、文档分析工具、开发信息库工具、逆向工程工具和再工程工具等。支持软件管理过程和支持过程的工具:主要包括项目管理工具、配置管理工具和软件评价工具等。

9.5.2CASE环境(huánjìng)的组成与结构38共五十页(2)CASE环境信息仓库环境信息仓库具有类似数据库管理系统的功能,Forte在1989年给出了其功能定义,其功能主要有以下几个(jǐɡè)方面:数据完整性信息共享数据-工具集成数据-数据集成文档资料标准化9.5.2CASE环境(huánjìng)的组成与结构39共五十页2.CASE环境结构在集成CASE环境中,各构件有机地结合在一起,构成层次(céngcì)式的环境体系结构。Sharon和Bell在1995年提出的CASE集成框架的层次结构模型(如图9.2所示),具有一定的代表性。它把组成CASE环境的构件分成4个层次,从上到下分别是:用户界面层、工具层、对象管理层和共享中心库层。9.5.2CASE环境(huánjìng)的组成与结构40共五十页图9.2CASE集成(jíchénɡ)框架的层次结构模型

9.5.2CASE环境的组成(zǔchénɡ)与结构41共五十页最上层是用户界面层,它包括标准的界面工具箱和公共的表示协议。界面工具箱包含(bāohán)人机界面管理软件和显示对象库,提供了必要的界面元素和工具,能使集成环境的用户界面显示风格一致。表示协议提供一组界面约定,包括一致的屏幕布局约定、菜单名和组织、图符、对象名、键盘和鼠标的使用等。9.5.2CASE环境的组成(zǔchénɡ)与结构42共五十页9.5.2CASE环境的组成(zǔchénɡ)与结构

工具层除了CASE工具本身外还包括一组工具管理服务。

工具管理服务(TMS)负责(fùzé)管理工具的执行中多任务操作,包括同步和通信、协调从中心库和对象管理系统到工具的信息流,以及收集关于工具使用的度量等。43共五十页

对象管理层(OML)完成集成服务和配置管理功能。在框架体系结构这层的软件提供了CASE工具集成的机制,每个软件工具被“插入”到对象管理层,并通过一组将工具和中心库藕合在一起。OML的配置管理服务用于标识配置对象,完成版本控制,并提供对变化控制、审计以及状态说明和报告(bàogào)的支持。9.5.2CASE环境(huánjìng)的组成与结构44共五十页9.5.2CASE环境(huánjìng)的组成与结构最底层是共享中心(zhōngxīn)库层,它使得对象管理层能够与CASE数据库交互并完成对CASE数据库的访问控制。45共五十页9.5.3CASE环境(huánjìng)的类型(1)按环境的体系结构分类按照(ànzhào)宿主机体系结构的不同构成,一般把CASE分为单机CASE、协同式CASE和分布式CASE。单机CASE:目前多以PC或工作站为基础。协同式CASE:由前端机和后端机配套组成。

温馨提示

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

评论

0/150

提交评论