




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第第9章章 软件工程标准化及软件工程环境软件工程标准化及软件工程环境 学习目标n软件工程标准化的概念及意义nISO 9000 系列标准及在质量认证中的实施nCMM模型的等级划分与评价标准n软件工程环境的概念、分类、构成及特性nCASE环境的组成与结构2 教学内容教学内容 9.1 软件工程标准化软件工程标准化 9.2 软件质量认证软件质量认证 9.3 CMM模型模型 9.4 软件工程环境软件工程环境 9.5 CASE环境环境 本章小结本章小结 第第9章章 软件工程标准化及软件工程环境软件工程标准化及软件工程环境39.1 软件工程标准化软件工程标准化主要教学内容:主要教学内容: 9.1.1 软件
2、工程标准化的概念软件工程标准化的概念 9.1.2 软件工程标准化的意义软件工程标准化的意义 49.1 软件工程标准化软件工程标准化 9.1.1 软件工程标准化的概念软件工程标准化的概念 软件工程标准的类型也是多方面的,例产品标准,包括需求、设计、部件、描述、报告等;过程标准,包括方法、技术、检验、质量等;记法标准,包括表示法、语言等; GB/T 15538-1995软件工程标准分类:n过程标准 n产品标准n专业标准 n记号59.1 软件工程标准化软件工程标准化9.1.2 软件工程标准化的意义软件工程标准化的意义(1)减少开发人员间联系的差错和误解,提高软件的生产效率,缩短软件开发周期。(2)有
3、利于软件管理,降低开发和运行成本(3)提高软件产品的质量(可靠性、可维护性和可移植性)(4)可提高软件人员的技术水平69.2 软件质量认证软件质量认证主要教学内容:主要教学内容: 9.2.1 ISO 9000系列标准系列标准 9.2.2 软件质量认证软件质量认证 9.2.3 ISO 9000-3的要点的要点 79.2 软件质量认证软件质量认证 质量保证贯穿整个软件开发过程,确保产品达到规定的质量水平。 质量认证,检验整个企业的质量水平,注重软件企业的整体资质,全面考察企业的质量体系,检验它是否具有设计、开发和生产符合质量要求的软件产品的能力。89.2 软件质量认证软件质量认证9.2.1 ISO
4、 9000系列标准系列标准 ISO 9000系列标准包括:nISO 9000质量管理与质量保证标准nISO 9001质量体系nISO 9002质量体系nISO 9003质量体系nISO 9004质量管理与质量体系要素99.2.2 软件质量认证软件质量认证n质量认证又称为合格认证。1986年国际标准化组织(ISO)定义质量认证为:由可以充分信任的第三方证实某一经鉴定的产品或服务符合特定标准或其他技术规范的活动。n质量认证的特点:1、质量认证的对象是产品或服务,主要针对、质量认证的对象是产品或服务,主要针对的是产品。的是产品。其中对产品的质量认证分为对产品本身的质量认证和对产品生产过程的质量认证。
5、109.2.2 软件质量认证软件质量认证2、认证的依据是标准。、认证的依据是标准。标准常常是被公认的或具有权威性的有关质量管理的国际标准或国家标准,也可能是行业标准或其他标准。3、通过审核、取得认证的标志是给予合格证书、通过审核、取得认证的标志是给予合格证书或准许使用合格标志。或准许使用合格标志。4、质量认证是第三方开展的活动。、质量认证是第三方开展的活动。由具有专门技术、设备和人员的第三方,作为专门从事质量认证的机构,可以由国家权威机构授权,进行公正的、科学的质量审核和认证,因而是可以信赖的。供方和需方出具合格证明都不属于认证。119.2.2 软件质量认证软件质量认证 质量认证标准,从198
6、7年国际标准化组织公布的ISO 9000系列质量管理标准开始得到确立,软件行业的质量认证也得到广泛关注。(1)为保证产品质量,ISO 9000要求在生产过程中,对影响产品质量的所有因素要全面控制与管理。(2)ISO 9000标准要求实现(3)质量管理必须坚持进行质量改进,贯彻执行ISO9000标准,就是企业加强质量管理,提高产品质量的过程。129.2 软件质量认证软件质量认证9.2.3 ISO 9000-3的要点的要点(1)ISO 9000-3标准仅适用于依照合同进行的单独的订货开发软件,不适用于面向多数用户销售的程序软件包。(2)在包括合同在内的全部工序中进行审查,并要求一切文档化。(3)I
7、SO 9000-3对合同双方的责任均做出了明确规定,需方应收集使用部门意见,归纳形成需方需求,详细传达给供方,明确所要求的技术条件,才可能对供方提出实施质量保证的要求。139.2 软件质量认证软件质量认证(4)将质量制作入产品之中是ISO 9000-3最重要的质量保证体系。(5)供方应建立与实施全面质量审核制度149.3 CMM模型模型主要教学内容:主要教学内容: 9.3.1 软件过程成熟度模型软件过程成熟度模型 9.3.2 关键过程域关键过程域 9.3.3 成熟度提问单成熟度提问单 159.3 CMM模型模型 软件开发的风险之所以大,是由于软件过程能力低。其中最关键的问题在于软件开发机构不能
8、很好地管理其软件过程,从而使得一些好的开发方法和技术起不到预期的作用。 通常用软件过程能力来描述软件企业遵循其软件过程能够实现的预期结果。 软件过程成熟度用于描述软件过程被明确和有效地定义、管理、测量和控制的程度。169.3 CMM模型模型9.3.1 软件过程成熟度模型软件过程成熟度模型 软件过程能力成熟度模型软件过程能力成熟度模型CMM(Capability Maturity Model),是在1987年,由美国卡内基-梅隆大学软件工程研究院(SEI)根据联邦政府的要求,研究提出的模型,用于评估软件供应商的能力。 为了刻画具体的成熟度,CMM将软件过程的能力成熟度分成不同的等级,CMM模型把
9、成熟度等级分为五级,共包括18个关键过程域,52个过程目标,3168种关键实践。179.3 CMM模型模型 以下给出5个等级的软件企业过程成熟度的特征:(1)初始级()初始级(Initial)l 软件过程是无序的,规划落实得不到保障。l 管理无章,对过程几乎没有定义,缺乏健全的管理制度l 开发项目成效不稳定,成功取决于个人努力,产品的性能和质量依赖于个人的能力。(2)可重复级()可重复级(Repeatable)l 管理制度化,建立了基本的项目管理过程来管理费用、进度等。l 初步实现标准化,制定了必要的过程规划和章程l 能重复早先类似项目取得的成功189.3 CMM模型模型(3)已定义级()已定
10、义级(Defined)l软件管理和工程两个方面,均实现标准化和文档化。l建立了完善的评审和培训制度。l技术活动和管理活动得到稳定实施。l项目的质量、进度和费用均可控制。l使用经过批准和论证的标准软件过程来开发和维护软件。199.3 CMM模型模型(4)已管理级()已管理级(Managed)l对软件过程和产品有定量的理解和控制l软件过程中活动的质量可度量l已实现项目产品和过程的控制l可预测过程和产品质量趋势(5)优化级()优化级(Optimizing)l可采用新思想、新技术使过程不断改进l对过程可量化,并可据此进行分析,提出改进过程的有效方法209.3 CMM模型模型9.3.2 关键过程域关键过
11、程域 过程域是指互相关联的若干软件实践活动和有关基础设施的一个集合。除初始级外,其他4级均有若干指示软件机构改进软件过程的要点,称为关键过程域(Key Process Area,KPA),为了确保不同等级的软件过程能力成熟度达到各自的目标,成功地完成这些对实现该等级的目标起关键性作用的过程域十分重要,对实施关键过程域起关键作用的措施、活动、规程等,又称为关键实践(Key Practice),关键过程域的目标就是通过关键实践的实施来达到。219.3 CMM模型模型9.3.3 成熟度提问单成熟度提问单 提问单涉及到软件企业的组织结构资源、人员及培训技术、文档管理标准化、工作过程数据管理和数据分析过
12、程控制等方面,由于涉及5个等级的提问单内容较多,以下仅给出各个等级的部分提问单的问题。(1)二级的问题(2)三级的问题(3)四级的问题(4)五级的问题229.4 软件工程环境软件工程环境 主要教学内容:主要教学内容: 9.4.1 什么是软件工程环境什么是软件工程环境 9.4.2 软件开发环境的特点软件开发环境的特点 9.4.3 软件开发环境的模型软件开发环境的模型239.4 软件工程环境软件工程环境n软件工程环境(SoftWare Engineering Environment ,简称SEE)是指以软件工程为依据,支持典型软件生产的系统。n软件工程环境的核心是软件开发工具。249.4.1 什么
13、是软件工程环境什么是软件工程环境n关于“环境”的概念: 对不同的用户,“环境”的概念往往具有不同的含义,就一般意义而言,“环境”是指所面临的各种事实和状态。 对最终用户来说,“环境”就是运行程序所使用的硬件和操作系统所组成的计算机系统。 对软件工程设计而言,“环境”包括设计人员的数量、每个人的个性特点和能力以及对软件工程方法熟悉的程度、使用何种程序设计语言和操作系统等。259.4.1 什么是软件工程环境什么是软件工程环境n软件工程环境的定义: 软件工程环境软件工程环境就是指支持软件产品开发、维护和管理的软件系统,它在统一的集成机制下由一系列软件工具组成。 这里主要讨论软件开发环境。 软件工具软
14、件工具是指支持计算机软件的开发、维护、模拟、移植或管理而设计的程序系统。软件工具的开发对软件工程环境的支持是至关重要的。269.4.1 什么是软件工程环境什么是软件工程环境n软件工具分为工具箱、工作台和方法指南3种类型。(1)工具箱。能自动执行某类软件生存期任务的一组集成化工具。(2)工作台。实现整个软件生存期各种任务自动的一组集成化工具。(3)方法指南。为某种具体软件提供计算机化的辅助手段。279.4.2 软件工程环境的特点软件工程环境的特点 软件工程环境是软件工程学科各方面研究发展的物化表现,具有以下特点:(1)软件工程环境强调支持软件生产的全过程(2)软件工程环境强调大型软件的工业化生产
15、(3)多维性(4)标准化289.4.2 软件工程环境的特点软件工程环境的特点 从环境工具和用户界面两个方面,进一步说明软件工程环境的特点:1 1集成化的软件工具集成化的软件工具 工具的集成化主要包括数据集成、界面集成、控制集成和过程集成、平台集成等方面。(1)数据集成 所有的工具统一建立在公共的文件库或信息库之上。(2)界面集成 各个工具使用统一的用户界面,采用公共的交互方式。29(3)控制集成 能支持开发环境中的一个工具控制另一个工具,或调用某个工具的特定服务。(4)过程集成 这类开发环境了解软件过程中各个活动的时序、约束等,能主动地调度这些活动,保持它们合适的顺序。(5)平台集成 指工具运
16、行在相同的硬件和操作系统下。9.4.2 软件工程环境的特点软件工程环境的特点302友善和统一的用户界面友善和统一的用户界面 现代的开发环境常采用以下的技术来改善用户接口的友善性: (1)具有拉出(Pull-Out)功能的多级菜单 (2)屏幕提示和在线帮助(On-Line HELP)技术 (3)采用多窗口(Multi-Windows)技术 (4)采用向导(Wizard)技术 菜单、多窗口、向导和帮助信息,是用户界面的重要内容,被称为四大友善技术。9.4.2 软件工程环境的特点软件工程环境的特点31 R.N.Charette在软件工程环境:概念与技术一书中,将软件开发环境抽象为一个模型,并给出了开
17、发环境的定义:生产一个软件系统所需要的过程(Process)、方法(Methods)与自动化(Automation)。把开发环境模型分为由底向上的3个层次,过程、方法和自动化,并将“理想”的软件开发环境描述为“过程由充分自动化了的方法所支持的完整的过程模型(Process Model)”。 按照Charette的观点,建立一个软件工程环境,首先要确定一种开发模型,提出成套的、有效的开发方法,然后在这一基础上利用各种手段实现开发活动的完全自动化。9.4.3 软件开发环境的模型软件开发环境的模型329.5 CASE环境环境主要教学内容:主要教学内容: 9.5.1 CASE环境环境 9.5.2 CA
18、SE环境的组成与结构环境的组成与结构 9.5.3 CASE环境的类型环境的类型339.5 CASE环境环境9.5.1 CASE环境环境 CASE(Computer Aided Software Engineering,计算机辅助软件工程计算机辅助软件工程)是一套方法和工具,可根据系统开发商规定的应用规则,由计算机自动生成合适的计算机程序。 CASE环境、CASE工具及集成CASE(Integrated CASE,简称I-CASE)等,几乎都成了软件工程环境的代名词。349.5.1 CASE环境环境 CASE环境的总目标,是通过一组集成化的工具,建立软件开发平台,使软件开发人员实现各项开发活动的
19、全部自动化,保证软件产品在整个生存周期内的质量,借以提高软件开发和维护的质量和生产率。 35 CASE环境是一个总称,它也代表了集成化项目支持(IPSE)和集成CASE(I-CASE)环境。以下主要介绍CASE环境的组成和结构两个方面的内容。1CASE环境的组成环境的组成 一个完整的CASE环境由宿主机和工具软件组成,可以归纳为6个部分,3个层次,如图9.1所示 9.5.2 CASE环境的组成与结构环境的组成与结构36图9.1 CASE环境的组成9.5.2 CASE环境的组成与结构环境的组成与结构37 由硬件平台和操作系统(包括网络和数据库管理系统)组成的体系结构,是CASE环境的基础(地层)
20、。 集成化框架(Integration Framework)由一组专门程序组成,用于建立单个工具之间的通信,建立环境信息库,以及向软件开发者提供一致的界面,它们与CASE工具集成在一起,构成环境的顶层。 余下的一层是服务于“可移植性”的机构。它介于集成化工具与环境基础软、硬件之间,使集成后的工具无需作重大的修改即可与环境的软、硬件平台相适应。9.5.2 CASE环境的组成与结构环境的组成与结构38(1)CASE工具工具 CASE工具是指“用于辅助软件开发、运行、维护、管理和支持等过程中的活动的软件”。 CASE按软件过程的活动来分类,归纳为以下三类:n 支持软件开发过程的工具:包括需求分析工具
21、、软件设计工具、编码工具、测试工具和纠错工具等。n 支持软件维护的工具:包括版本控制工具、文档分析工具、开发信息库工具、逆向工程工具和再工程工具等。n 支持软件管理过程和支持过程的工具:主要包括项目管理工具、配置管理工具和软件评价工具等。9.5.2 CASE环境的组成与结构环境的组成与结构39(2)CASE环境信息仓库环境信息仓库 环境信息仓库具有类似数据库管理系统的功能,Forte在1989年给出了其功能定义,其功能主要有以下几个方面:l 数据完整性l 信息共享l 数据-工具集成l 数据-数据集成l 文档资料标准化 9.5.2 CASE环境的组成与结构环境的组成与结构402CASE 环境结构
22、环境结构 在集成CASE环境中,各构件有机地结合在一起,构成层次式的环境体系结构。 Sharon和Bell在1995年提出的CASE集成框架的层次结构模型(如图9.2所示),具有一定的代表性。它把组成CASE环境的构件分成4个层次,从上到下分别是:用户界面层、工具层、对象管理层和共享中心库层。9.5.2 CASE环境的组成与结构环境的组成与结构41图9.2 CASE集成框架的层次结构模型 9.5.2 CASE环境的组成与结构环境的组成与结构42 最上层是用户界面层,它包括标准的界面工具箱和公共的表示协议。界面工具箱包含人机界面管理软件和显示对象库,提供了必要的界面元素和工具,能使集成环境的用户
23、界面显示风格一致。表示协议提供一组界面约定,包括一致的屏幕布局约定、菜单名和组织、图符、对象名、键盘和鼠标的使用等。9.5.2 CASE环境的组成与结构环境的组成与结构439.5.2 CASE环境的组成与结构环境的组成与结构 工具层除了CASE工具本身外还包括一组工具管理服务。 工具管理服务(TMS)负责管理工具的执行中多任务操作,包括同步和通信、协调从中心库和对象管理系统到工具的信息流,以及收集关于工具使用的度量等。44 对象管理层(OML)完成集成服务和配置管理功能。在框架体系结构这层的软件提供了CASE工具集成的机制,每个软件工具被“插入”到对象管理层,并通过一组将工具和中心库藕合在一起。OML的配置管理服务用于标识配置对象,完成版本控制,并提供对变化控制、审计以及状态说明和报告的支持。9.5.2 CASE环境的组成与结构环境的组成与结构459.5.2 CASE环境的组成与结构环境的组成与结构n最底层是共享中心库层,它使得对象管理层能够与CASE数据库交互并完成对CASE数据库的访问控制。469.5.3 CASE环境的类型环境的类型(1)按环境的体系结构分类)按环境的体系结构分类 按照宿主机体系结构的不同构成,一般把CASE分为单机CASE、协同
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗健康数据在健康保险行业中的价值与作用
- 医疗大数据分析推动个性化治疗进展
- 医疗商业化的未来趋势与全科医生培养
- 医疗AI在语音疾病康复中的作用
- 体育课评价有效性的总结模版
- 自来水公司办公室工作总结模版
- 人员入驻合同范例
- 区块链在商业合作中的信任机制构建与价值
- 医疗设备与健康信息的安全管理研究
- 胎粪性肠梗阻的临床护理
- GA/T 751-2024公安视频图像屏幕显示信息叠加规范
- 2025至2030中国长链氯化石蜡行业供需现状与前景策略研究报告
- 租地盖大棚合同协议
- 自体输血知识培训课件
- 人教A版高一下册必修第二册高中数学8.6.2直线与平面垂直【课件】
- 汉语方言与地方文化认同的关系研究论文
- 2024年全国统一高考英语试卷(新课标Ⅰ卷)含答案
- 史上最全的数列通项公式的求法15种
- 配电室高低压运行记录表
- 链路聚合的配置
- 番茄采摘机械手
评论
0/150
提交评论