《软件质量评价》PPT课件.ppt

《软件质量评价》PPT课件.ppt

ID:52110179

大小:462.50 KB

页数:49页

时间:2020-03-31

《软件质量评价》PPT课件.ppt_第1页
《软件质量评价》PPT课件.ppt_第2页
《软件质量评价》PPT课件.ppt_第3页
《软件质量评价》PPT课件.ppt_第4页
《软件质量评价》PPT课件.ppt_第5页
资源描述:

《《软件质量评价》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件工程SoftwareEngineering武汉大学计算机学院第2章软件质量评价什么是好的软件?有何特点?软件评价的标准如何?什么是软件结构?什么是良软件结构?什么是模块化?模块设计时应遵循的标准是什么?一、软件质量评价标准定性评价用户角度:达到需求、界面友好、简单易学开发人员角度:良结构、易测试、易维护、可移植…定量评价:软件度量宏观标准良软件结构文档齐全可靠性二、软件结构软件的各个组成部分之间的关系问题P同一问题的三种不同软件结构基本概念块扇出:由一个块所直接控制的块数扇入:直接调用它的上级块数目深度:控制的总层数宽度:跨

2、度最宽层的跨度数MM1M2M3N1N2N3N4N31N32软件结构1.良软件结构具有层次性,无回路块调用的软件结构。…线性型树型半序型非良结构的调整网络结构AB合并循环节点良结构AB模块内部复杂性增加了2.模块化(modularity)模块(Module)、单元(Cell)模块化把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能,满足用户的需求。模块化的依据c(x):问题x的复杂程度E(x):解决问题x需要的工作量(时间)对于两个问题P1和P2ifC(P1)>C(P

3、2)thenE(P1)>E(P2)若P能分解为P1、P2两个部分,由经验有:C(P)>C(P1)+C(P2)E(P)>E(P1)+E(P2)块的划分与总工作量之间的关系接口成本最小成本区域总成本块成本成本(工作量)模块数M在一个16开页面内可写完,若50行代码模块的重要特征抽象(abstraction)忽略细节,分层理解问题,自顶向下层层细化信息隐藏(informationhiding)细节隐藏可理解性修改副作用小错误副作用小例:开发一个CAD软件,实现一个二维绘图系统的全部功能,供初级计算机辅助设计者使用。抽象层次I用问题环

4、境的术语来描述这个软件该软件包括一个计算机绘图界面,向绘图员显示图形;一个数字化界面,用于绘图员绘制直线、折线、矩形、圆及曲线等;所有几何图的计算、所有的剖面图和辅助视图都可以用这个CAD软件实现……模块化的抽象特征模块化的抽象特征抽象层次II任务需求的描述,列出“What”而不是“How”CADSOFTWARETASKS:userinteractiontask;2-Ddrawingcreationtask;graphicsdisplaytask;drawingfilemanagementtask;END3.模块独立性(Mod

5、uleindependence)分解模块的关键:1)可命名—名字有隐含语义2)每个模块完成一个相对独立的子功能,并且与其它模块间的接口简单。独立性的度量(Yourdon&Constantine,1978)耦合(Coupling)—块间联系内聚(Cohesion)—块内联系(1)耦合(Coupling)GreatdealofdependenceIndependentHighlycoupledLooselycoupledUncoupledGoal:aslooseaspossible=asindependentaspossible

6、对一个软件结构内不同模块之间互连程度的度量零耦合(uncoupling)彼此完全独立,这意味着模块间无任何连接,耦合程度最低Uncoupled数据耦合(DataCoupling)两个模块彼此间通过参数交换信息,而且交换的信息仅仅是数据ThemostdesirableABData控制耦合(ControlCoupling)传递的信息中有控制信息(尽管有时这种控制信息以数据的形式出现)ABFlagF2FnF1…………Flag接口单一,但仍然影响被控模块的内部逻辑。公共环境耦合(CommonCoupling)两个或多个模块通过一个公

7、共数据环境相互作用Global:V1V2A:……………………A1=V1+V2……………………B:……………………V1=B1……………………Global:V1V2A:……………………V1++……………………B:……………………V2=B1+V1……………………问题:公共部分的改动将影响所有调用它的模块公共部分的数据存取无法控制复杂程度随耦合模块的个数增加而增加内容耦合(ContentCoupling)一个模块访问另一个模块的内部数据一个模块不通过正常入口而转到另一个模块的内部两个模块有一部分程序代码重叠(只可能出现在汇编程序中

8、)一个模块有多个入口Theleastdesirable内容耦合例1.A访问C的内部数据或不通过正常入口而转入C的内部。……ABCDA:……………………gotoC1……………………C:……………………C1:…………内容耦合例2.部分代码重叠(常出现在汇编程序中)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。