第14章提高软件设计质量_第1页
第14章提高软件设计质量_第2页
第14章提高软件设计质量_第3页
第14章提高软件设计质量_第4页
第14章提高软件设计质量_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、质量保证和管理第十四章 提高设计质量Start HereContact Us Contact Us©Co©llaCgoelolafgSeooftfwSaorfetwBaeriehaBnegihUanigveUrnsivtyersity:/softqma:.esodfut.qcmn 主要内容设计是把需求转换为表示的过程,是开发的重要阶段之一。设计体系结构设计模式设计优化一些典型的系统设计数据库设计Contact Us©Collage of Software Beihang University: softqm设计14.1设计的目标及阶段设计评价标准设计原则Conta

2、ct Us©Collage of Software Beihang University: softqm设计的目标基本目标:合适性、完整性其它可靠性(容错性、故障转移) 性能和安全性可扩展性(增加用户数量等)可定制性或可移植性(根据客户群或市场进行调整) 可维护性(排错+新需求)可重用性Contact Us©Collage of Software Beihang University: softqm设计的阶段体系结构设计(也叫总体设计、概要设计) 将需求转化为系统结构和数据结构,并定义子系统(组间)和它们之间的通信或接口。 对结构表示进行细化,得到详细的详细设计数据结构和算

3、法,对所有的类的描述,从而给程序员一个清晰的规范说明。Contact Us©Collage of Software Beihang University: softqm设计原则Contact Us©Collage of Software Beihang University: softqm设计原则Contact Us: softqm常做、早做设计原则Contact Us©Collage of Software Beihang University: softqm面向对象设计的SOLID原则SRP Open-Closed Principle,开闭原则OCP实体应该是

4、可扩展的,而不可修改的。LSPISPDIPContact Us©Collage of Software Beihang University: softqm体系结构14.2体系结构为系统提供一个结构、行为和属性的高级抽象,由系统的元素、元素间相互作用、元素集成模式以及这些模式的约束组成。体系结构的模型和视图体系结构的分类体系结构的设计异步体系结构的选择Contact Us©Collage of Software Beihang University: softqm体系结构的模型结构模型框架模型动态模型 研究构造系统的步骤和过程。因而结构是遵循某些过程的结果。过程模型功能模型

5、Contact Us©Collage of Software Beihang University: softqm体系结构的视图 最抽象的视图,一般用系统用户(非 IT 专业用户) 熟悉的术语来描述。概念视图用于定义应用程序的功能需求和商业用户视图,以便生成业务模型。概念视图 显示主要的功能组件和它们在系统中的,而不逻辑视图涉及功能的实现细节。架构师创建的应用程序模型就是业务模型的逻辑视图。 最不抽象的,它们表示特定的实现组件和它们之间物理视图的。物理视图中的每个元素一般都由设计和开发过程来实现,如硬件系统Contact Us©Collage of Software Bei

6、hang University: softqm体系结构的分类 Client/Server,客户端/服务器结构 服务器集中管理数据,计算任务分散在客户机上。C/S结构客户机和服务器之间通过协议进行通讯。 Browser/Server,浏览器/服务器结构 极少数业务逻辑在前端实现,主要业务逻辑在服务器端实现。B/S结构 中间件在操作系统、和数据库之上,应用中间件多层结构之下,它掩盖了底层的异构型,为上层的应用提供运行和开发环境。微软的COM技术 为解决两层分布式体系结构的不足,提出了三层或多层分布式体系结构。Contact Us©Collage of Software Beihang U

7、niversity: softqm多层分布式体系结构的设计主要层次设计要点Contact Us©Collage of Software Beihang University: softqm安全性客户对数据服务器的,保护了数据库的安全 性缓冲了客户端与数据库的实际连接,使数据库的实际连接数量远小于客户端应用的数量。易维护业务规则变化时,客户端程序基本不做改动响应快通过负载均衡及中间层缓存数据,提升响应速度扩展灵活业务增大时,在中间层部署的应用服务器。表示层提供人机交互界面,完成数据的输入和结果的显示业务逻辑层实现具体的业务处理逻辑数据层就是数据库系统,负责对数据库数据的读写异步体系结构

8、运行时间较长的进程应以异步方式运行。异步运行某个进程意味着请求发出之后调用就立即返回,而不需要等待该请求执行完毕。异步切断了系统中不同进程间的连接,让它们以不同速度运行。相比同步系统,异步结构的优点:更快的响应时间负载平衡具有更好的容错能力支持断续连接Contact Us©Collage of Software Beihang University: softqm设计模式设计14.3设计模式是对于某一类解决方案。的可重用的设计模式:设计模式使得人们可以更加简单和方便地去复用的设计和体系结构,从而能够帮助设计者更快更好地完设计。的永恒:模式是一条由三部分组成的规则,它表示了一个特定环境

9、、一个和一个解决方案之间的。每一个模式描述了一个在我们周围不断重复发生的,以及该的解决方案的。这样,你就能一次又一次地使用该方案而不必做重复劳动。Contact Us©Collage of Software Beihang University: softqm设计模式的基本要素、解决方案模式名称及其解决方案效果Contact Us©Collage of Software Beihang University: softqm单例模式-Singleton名称:Singleton:一个类,在整个系统中只此类只有一个对象。比如说当建立一个数据库操作类,用于总管所有的数据库操作,那么

10、此时可能不希望这个类拥有多个对象而产生干扰。解决方案:构造提供静态共有效果:。以获取此类的唯一实例。很明显,解决了我们所要解决的,在此实现之下,无法构建除了唯一对象以外的新对象。Contact Us©Collage of Software Beihang University: softqmMVC模式MVC模式-View-Controller模式M模型-视图-器模式MVC设计模式将模型、视图与器分隔开来。模型:封装任务的代码。数据和对这些数据的操作。它是执行视图:向用户显示信息。它获得来自模型的数据,决定以什么样的方式展示给用户。器:和视图使用,捕捉鼠标移动、点击和键盘输入等,将其转

11、化为服务请求,然后传给模型或视图。用户通过器交互。Contact Us©Collage of Software Beihang University: softqm设计优化14.4模块设计和接口设计的要求详细设计的要求界面设计的要求Contact Us©Collage of Software Beihang University: softqm模块设计准则模块划分是否合适、模块是否具有一定的每个模块的功能和接口定义是否正确数据结构的定义是否正确性模块内的数据流和流的定义是否正确Contact Us©Collage of Software Beihang Unive

12、rsity: softqm接口设计的准则用户接口设计是否正确全面,是否有单独的用户 界面设计文档。是否包含有硬件接口设计,硬件接口设计是否正 确且全面。概要设计规格说明是否包含有件接口设计是否正确且全面。接口设计,软口设计是否正是否包含有通口设计,通确且全面。是否描述了各类接口的功能、各接口与其他接口之间的已经接口的设计是否具有可测试性Contact Us©Collage of Software Beihang University: softqm详细设计的要求详细设计的目标任务为每个模块确定采用的算法 确定每一模块使用的数据结构确定模块接口的细节为每一个模块设计出一组测试用例详细设

13、计的原则尽量少用GOTO语句使用单单出口的结构结构内部采用顺序、选择、循环自顶向下逐步求精Contact Us©Collage of Software Beihang University: softqm详细设计的要求详细设计的表示流程图伪码IPO图(Input-Process-Output) PAD(Problem Analysis Diagram)判定表Contact Us©Collage of Software Beihang University: softqm伪码伪码是用介于自然语言和计算机语言之间的文字和符号(数学符号)来描述算法。输入3个数,打印输出其中最大的

14、数。伪码:Begin(算法开始) 输入 A,B,CIF A>B 则 AMax 否则 BMaxIF C>Max 则 CMax Print MaxEnd (算法结束)Contact Us©Collage of Software Beihang University: softqmIPO图IPO图表示输入-过程-输出之间的处理输入输出Contact Us©Collage of Software Beihang University: softqm判定表判定表是描述各条件组合产生不同的结构的表格。Contact Us©Collage of Software B

15、eihang University: softqm你觉得疲倦吗?YYYYNNNN你对内容感吗?YYNNYYNN书中内容使你糊涂吗?YNYNYNYN建议请回到本章开头重读继续读下去跳到下一章去读停止阅读,请休息界面设计的要求用户界面必须保持一致性用户界面应该有自助功能用户界面易懂性Contact Us©Collage of Software Beihang University: softqm14.5 典型的系统结构J2EE系统使用统一的Jave2开发平台简化企业解决方案的开发、部署和管理。.NET系统一个,构建与XML和互联网标准之上,为用户提供web服务的开发、管理、应用和体验。C

16、ontact Us©Collage of Software Beihang University: softqm典型的J2EE系统结构Web层Web服务器客户层浏览器业务逻辑层EJB容器企业信息系统层Application Client Container客户机J2EE服务器EIS服务器Contact Us©Collage of Software Beihang University: softqm典型的.Net系统结构表示层业务层数据层XMLSOAP制Contact Us©Collage of Software Beihang University: softq

17、m14.6 数据库设计质量设计数据库是指对于一个给定的应用环境,构造最 优的数据模式,建立数据库,使其能够有效地数据,并能满足各种应用需求。对数据库进行质量数据层构建数据字典设计数据流设计方面划分为三步:Contact Us©Collage of Software Beihang University: softqm数据层构建表示层数据元数据业务层描述数据存取的数据数据层数据层简化对数据库的操作数据提供层返回需要的数据Contact Us©Collage of Software Beihang University: softqm数据字典的设计数据字典说明了每个字段的用途。Contact Us©Collage of Software Beihang University: softqm字段名称字段类型说明备注IdInt主键AccountNvarchar(50)账号PasswordNvarchar(50)EnabledBit账户是否禁用0代表禁用1代表可用数据流设计数据流设计标识所有系统数据的处理流向以及运 行过程。数据流设计贯穿整个系统的始终首先,以业务为主线,搞清每个业务的每个环节的流程,涉及部门、输入输出项。然后,以数据为主线,

温馨提示

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

评论

0/150

提交评论