软件工程课件--lecture2_sqm34250.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件工程课件--lecture2_sqm34250.pptx》由会员分享,可在线阅读,更多相关《软件工程课件--lecture2_sqm34250.pptx(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程软件工程2009年秋季学期本次作业各小组商讨集体项目的选题,并于下次上课前上报教师或助教,要求参见上节课软件质量软件也有质量质量是产品的生命,软件也不例外在预算经费范围内,按期完成并且移交给用户使用,而且此系统也能正确执行用户要求的功能,是不是已经足够了呢?是不是可以肯定这样的软件系统是一个高质量的软件系统呢?还不够?为什么?(人心不足蛇吞象!)因为 虽然正确执行了功能,但是还可能:难以理解,难以修改,难以维护难以使用,容易出错难以于其它软件系统组合,甚至共处或许可靠性差,时不时死机这一切表明:正确不等于高质量什么是软件质量IEEE729-1983 定义:与软件产品满足规定的和隐含的能
2、力有关的性质和特性的全体,或-软件产品中能满足给定需要的性质和特性的总体-软件具有各种属性组合的程度-用户觉得软件满足其综合期望的程度-软件在使用中满足用户预期要求的特性的合成程度例子1某公司开发的软件产品X,邀请了国内外若干专家参加鉴定会,与会专家一致表示,该产品让专家组十分满意,并已达到地方/国内/国际先进水平 这是否表明该软件产品的质量?为什么?例子2某软件产品是由著名软件企业X联合另一家在行业内居领先地位的Y公司开发的,花费超过千万元;该开发团队阵容强大,拥有一大批经验丰富,在本行业内有盛名的顶尖级的开发人员;同时开发过程采用目前最先进的技术和工具这一切就是本软件产品质量的无可争议的最
3、好证明!例子3某机构组织用户对同一类型的三种软件产品进行质量评定,让用户对该三种产品每一种分别打一个分(按照优良中差或百分制),结果表明产品A的打分明显高于其他两种,于是我们说,产品A的质量高于其他。这种做法是否有问题?软件质量定义的讨论满足用户需求软件自身的内在内在特性特性的全体软件质量评价技术1968年,Rubey 和 Hartwick最早提出了从整体上来度量软件质量。但并未建立模型,方法也不完全1976年,Boehm提出了定量评价软件质量的概念,并首次提出质量度量的层次模型1978年,McCall Walters等提出了三层次模型G.Murine在此基础上提出了SQM技术,并得到使用国际
4、标准化组织(ISO)于1985年以来提出了有关的报告,1993年正式出台ISO 9126软件质量评价技术(续)ISO 9126 由几部分构成目前最新的版本包括:-ISO 9126-1:2001 质量模型-ISO 9126-2:2003 外部度量-ISO 9126-3:2003 内部度量-ISO 9126-4:2004 实用度量第二代软件产品质量标准:SQuaRE Software Quality Requirements and Evaluation 软件质量需求和评价,即ISO 25000:-ISO 25000:2005 Guide to SQuaRE$112Boehm模型讨论1976 首次
5、提出软件质量度量模型软件质量可从三方面来考虑:软件的可使用性,软件的可维护性,软件的可移植性软件质量分解为若干层次,对于最底层的软件质量概念再引入数量化的指标,从而得到软件质量的总体评价McCall 等人的三层次模型1976 提出软件质量要素(factor),准则(criteria)到度量(metrics)的三层次式软件质量模型软件质量基于11个要素之上,分别面向软件产品的运行(operation),修正(revision)和转移(transition)要素是质量的反映,软件属性可用作评价准则,定量化的度量属性可反映质量优劣ISO的软件质量模型1985年建议,软件质量度量模型由三层组成:-高层
6、(top level):软件质量需求评价准则(SQRC)-中层(mid level):软件质量设计评价准则(SQDC)-低层(low level):软件质量度量评价准则(SQMC)对高层和中层建立标准,对低层则应由各机构根据实际情况确定1993年,ISO 9126 出台层次式模型ISO 9126 ISO 9126来源于McCall等人的模型高层,中层,低层分别对应于McCall等人的要素,准则和度量一级质量特性面向用户软件质量要素的选取面向用户,面向软件开发人员,还是面向管理者?McCall选择可测试性作为质量要素,这是面向开发人员的。开发人员对软件进行测试的难易程度感兴趣,而用户则不然ISO
7、最终选择了面向用户,采用了6个软件质量要素(一级质量特性)ISO 9126选取的软件质量一级特性功能性(functionality):软件实现的功能满足用户需求的程度可靠性(reliability):在规定的一段时间和条件下,与软件维持其性能水平的能力易用性(usability):由一组规定或潜在的用户为使用软件所需作的努力程度效率性(efficiency):与在规定条件下软件的性能水平与所使用资源量之间关系可维护性(maintainability):与进行指定的修改所需的努力程度可移植性(portability):与软件从一个环境转移到另一个环境的容易程度功能性(functionality)
8、实现的功能满足用户需求的程度用户的(明确的和隐含的)需求是否满足用户要求的功能是否全部实现了最基本的质量需求可靠性(reliability)在规定的时间和条件下,软件所能维持其性能水平的程度反映了软件正常运行的程度也反映了在故障发生时能继续运行的程度重要的质量需求易用性(usability)用户学习、操作、准备输入和理解输出时所做努力的程度反映了用户友好性,使用软件时是否方便对于许多软件来说,这都是重要的质量需求效率(Efficiency)在指定的条件下,用软件实现某种功能所需的计算机资源的有效程度。反映了软件在完成功能时,没有浪费资源资源包括了存储空间,通道能力和处理器时间可维护性(main
9、tainability)在一个可运行的软件中,为了满足用户需求,环境改变或者软件错误发生时,进行相应的修改所作的努力程度反映了对软件系统进行修改的容易程度容易维护的系统也是易理解、易测试和易修改的软件可移植性(portability)从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度反映了软件对其所运行的环境的依赖程度质量要素间的关系6个要素间存在着有利和不利影响(考虑功能性和可靠性,效率和可维护性)软件质量要素之间有时是矛盾的,不可能在所有方面都达到最优对于具体的软件来说,只能有所侧重每一个质量要素,都与若干个二级质量特性相联系二级质量特性包括:若干特性(参见前图)一级特性的分解和
10、转换,面向技术。对各类技术人员有用度量每个二级特性分解为若干度量一个度量可以对应于几个二级特性度量是一些信息或数据,可以从软件产品的开发过程取得,有些需通过计算获得确定软件质量需求对不同的软件,各个要素的重要性不同(考虑实时系统,生存期很长的系统)先考虑三个基本要素:功能性,可靠性和可维护性基本要素的质量指标过低,会影响其他要素高质量指标的实现软件质量管理活动质量要求和质量指标的确定开发过程中的质量控制产品质量评价和验收标准软件质量的可测性和定量化质量需求影响开发举例以可移植性为例:-实现同样的功能,有系统调用可以用、第三方工具库、语言标准库都能实现,如何选择?-例如:C语言打开文件,fope
11、n/open/OpenFile 等等软件综合评价质量评价水平评价效益评价软件成本质量保证(Quality Assurance)软件质量控制定义简明而又清晰,却很难把握常常难以定量化不确定的因素太多(涉及太多的人和事)“只有看到的时候才能知道”重温软件质量度量模型功能性(functionality)可靠性(reliability)易用性(usability)效率性(efficiency)可维护性(maintainability)可移植性(portability)质量保证技术评审标准化度量测试系统测试与质量保证将被测试的软件放在运行环境中进行综合的测试和检验软件产品付诸使用前的一道完整有系统的测试
12、是质量保证的最后一道关键环节,直接影响产品的质量系统测试的任务系统功能确认测试系统验收测试强度测试背景测试性能测试配置测试恢复测试安全性测试其它测试验收测试验收测试:由用户参与的测试,对系统进行最后的确认Alpha测试:用户在开发者的指导下进行测试Beta测试:由最终用户在实际环境中使用进行测试,不受开发者的控制验收通过,产品发行测试与质量开发测试(查找和排除错误)系统测试(符合需求)验收测试(用户满意)质量评价软件错误(bug)生命周期影响软件质量必须跟踪管理何时发现,是否重复,何时解决 工具Bugzilla-软件bug跟踪工具Bugzilla的用户更多.AAaron Graves(publ
13、ic)AbiWord(public)ABLE at Carnegie Mellion University(public)AccessGrid,Argonne National Laboratory(public)Achievo(public)Activestate(public)ad2,Inc.Add Momentum Adexa Inc.Aditi Technologies Pvt.Ltd(public)Affinegy LLC AGX Technology Aimetis Akamai Technologies,Inc AKQA Algenta Technologies Alice(pu
14、blic)ALM Works Altap Altasys Amcor AMD American Megatrends,Inc.(AMI)AMPY Metering Limited Anope IRC Services(public)Anyware Technologies Apache Project(public)Apex Internet Solutions Apply Solutions Archeus Capital Management Arythia(public)ASP Linux(public)AspectC+(public)ASPL Software(public)aspse
15、ek.org(public)ASTEC Asteriou(public)Astur Linux(public)Async Open Source(public)AT&T Atlas Online Software(public)ATR Australia Audacity(public)Aumtech Inc.Avalon Systems Axiomsoft Inc.Axis-Net Axle Solutions Azri Solutions Pvt.Ltd.BB.Rekencentra B2Services Inc.Bally Systems BioSimGrid(public)Biospi
16、ce project,Lawrence Berkeley Laboratories(public)Bitflux GmbH(public)(public)BluePhoenix Solutions Boston University Linux(public)BrainLAB AG Brefi Group Ltd Brian Havard(public)Bricolage(public)Briggs&Stratton Brixlogic Broadcast Sports Inc.bugtracker.biz(public)BullionVault Busted Chain,LLC Bwe Be
17、ll&Howell CCadmus Professional Communications Candela Technologies(public)Capital Engineering Casanova Furniture Celstream Technologies Private Limited Cendant Center for Distributed Object Computing,Washington University at St.Louis(public)Center for the Promotion of Child Development Centola Lab,O
18、klahoma Medical Research Foundation(public)Centrais Eltricas do Norte do Brasil S/A Changepond Technologies Chime Interactive(public)Cimaware Software Circadiant Systems Citigroup Clan Match Exchange Good Game Ltd Clifton Labs,Inc.(public)Club Dial coframi Collapsar Creations(public)Computational Ph
19、ysics,Inc.(public)Computational Science and Mathematics Research,Sandia National Laboratories(public)Computer Science Department,Cornell University(public)Computer Science Department,University of Stuttgart(public)Computing Services,Carnegie Mellon University(public)Conectiva(public)Copyleft Softwar
20、e Courtesan Consulting(public)CRC Data Technologies Creare,Inc.(public)Crivo Sistemas Crossdraw Technologies Cubit Project,Sandia National Laboratory(public)Customized InformSystem CVS on NT(public)Cylon Controls DDatacoper Ltda Software DataDino(public)DataGrid(public)Day Two B.V.DDchange Deal Grou
21、p Media DecisionSoft(public)Decorative Product Source,Inc.D Demon(THUS plc)DEQX DesignC(public)Digital Canvas(public)Digital District GmbH dimensional GmbH (public)Ee-gip(public)Eclipse(public)Ecoinformatics.org(public)eCos eCosCentric Edinburgh Instruments Ltd EDIWatch,Inc.Edoceo Eduserv EESys Tech
22、nology Effigent,Inc.EggHeads.org(public)Egothor Project(public)Eigenstate Consulting(public)Eloquentix elvin,Distributed Systems Technology Centre(public)EM Photonics Envoy Technologies Epiq Technologies,Inc.ePOSSE S.r.l.Eressea(public)Erlang Technology,Inc.(public)eSecurity Essential Security Softw
23、are Inc.Eternal Light Consulting(public)Eurostep Model Server(public)EverSpeech,I Exolab(public)Extreme Computing Lab,University of Indiana(public)FF/X Communications F/X Services FILLOL S.A.Fimasys Florian Mller GmbH Fluid(public)Focus Multisystems Inc.Foresight Linux France Telecom Freedesktop.org
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课件 lecture2_sqm34250
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内