Ch14-提高软件设计质量.ppt

上传人:sh****n 文档编号:7422099 上传时间:2020-03-21 格式:PPT 页数:43 大小:487KB
返回 下载 相关 举报
Ch14-提高软件设计质量.ppt_第1页
第1页 / 共43页
Ch14-提高软件设计质量.ppt_第2页
第2页 / 共43页
Ch14-提高软件设计质量.ppt_第3页
第3页 / 共43页
点击查看更多>>
资源描述
软件质量保证和管理 Ch 14提高软件设计质量 第13章回顾 13 1需求分析的概念软件系统的构建层次 软件需求工程过程13 2需求的获取与分析13 3需求分析建模结构化分析建模 面向对象的分析建模 敏捷建模13 4系统需求的质量保证 第14章提高软件设计质量 14 1软件设计14 2软件体系结构14 3软件设计模式14 4软件设计优化14 5一些典型的系统设计14 6数据库设计质量 课程目标 了解软件设计的目标理解软件体系结构的模型掌握软件设计模式理解软件设计的优化了解一些典型的软件系统设计 14 1软件设计 设计模式使得人们可以更加简单和方便地去复用成功的软件设计和体系结构 从而能够帮助设计者更快更好地完成系统设计 软件设计一般分为 体系结构设计高层次设计 将软件需求转化为数据结构和软件的系统结构 并定义子系统和它们之间的通信或接口 详细设计过去习惯成为总体设计或概要设计 通过对结构表示进行细化 得到软件软件详细的数据结构和算法 14 1 1软件设计的目标 软件体系结构设计的基本任务 设计软件系统结构数据结构及数据库设计编写概要设计文档概要设计文档评审软件设计的目标具备特征 可靠性性能和安全性可扩展性可定制性或可移植性可维护性和可重用性 14 1 2软件设计评价标准 软件设计质量的分析与评价包含 质量属性 度量以及质量分析与评价技术 区分软件设计的质量属性 软件运行时间评价的质量属性 软件维护时间评价的质量属性 与体系结构本质质量相关的质量属性 软件设计度量方法可以分为 面向功能设计的度量 面向对象设计度量 软件设计的评价工具和技术 软件设计评审 静态分析 模拟与原型 软件设计模型 由实体空间 过程空间和形式空间组成 软件系统设计模型示意图 软件设计评价 实体空间标准以源系统做为标准来度量系统设计模型 是一个软件设计最终应该附合的标准 它依赖于我们对于源系统的认识程度 同时软件设计是思维的产物 过程空间标准可以看作实体空间的间接标准 是基于分析模型和设计模型来定义 形式空间标准以目标系统的角度 即软件产品质量属性 检验系统设计 实体空间标准和过程空间标准 可以保证目标系统的功能满足源系统 软件设计质量考察指标 设计结果的稳定性设计的清晰性设计合理性系统的模块结构所显示的宽度 深度等模块间松耦合而模块内部又保持高度一致性 稳定性是高质量软件设计的关键之一给出的系统设计是否满足软件需求可测试性和可追溯性所要设计的系统在整个项目软件中的地位 作用对各种需求项是否都进行了相应的设计分析 系统的模块结构复杂性描述 14 1 3软件设计原则 软件设计的思想原则用户需求远比技术重要需求其实很少改变 改变的是对需求的理解接受变化不要低估软件规模的需求在软件设计中没有捷径可以走任何体系结构都有它自身的优点和缺点 设计模式也一样软件设计的技术原则开 闭原则单一职责原则李氏代换原则依赖倒转原则接口隔离原则合成 聚合复用原则迪米特法则 耦合的表现形式 系统模块的内聚性 14 2软件体系结构 软件体系结构 软件体系结构为软件系统提供了一个结构 行为和属性的高级抽象 由构成系统的元素的描述 这些元素的相互作用 指导元素集成的模式以及这这些模式的约束组成 体系结构的模型和视图体系结构的分类体系结构的设计异步体系结构的选择 14 2 1体系结构的模型和视图 体系结构的模型结构模型 以体系结构的构件 连接件和其他概念来刻画结构 并力图通过结构来反映系统的重要语义内容 框架模型 框架模型主要以一些特殊的问题为目标建立只针对和适应该问题的结构 动态模型 动态模型是对结构或框架模型的补充 研究系统的 大颗粒 的行为性质 过程模型 研究构造系统的步骤和过程 功能模型 由一组功能构件按层次组成 下层向上层提供服务 体系结构的试图概念试图逻辑试图物理试图 14 2 2体系结构的分类 C S软件体系结构传统的二层C S结构存在局限性 三层C S结构将应用功能分为表示层 功能层和数据层 B S软件体系结构B S结构是对C S结构的一种改进 B S结构和C S结构比较接近 但也具有自己的特点 中间件的多层分布式的体系结构具有客户端的表示层 中间的业务逻辑层和数据库服务器的三层或多层体系结构 多层体系结构将客户和资源分开 降低了服务器的负载 多层分布式系统中 不同的组件可以用不同的语言来实现 14 2 3体系结构的设计 多层分布式体系主要层次在多层体系设计中 各层次按照一定方式进行划分 实现明确分工 客户 业务服务 数据服务 多层分布式体系设计要点安全性 稳定性易维护快速响应系统扩展灵活多层分布式体系结构的应用开发要考虑3方面的技术 开发环境 应用程序的集成 应用程序的配置 系统平台软件和终端软件的体系结构的划分是以高性能 高可靠性 高安全性 高扩展性和可管理为原则 14 2 4异步体系结构的选择 异步体系结构优点 更快的响应时间负载平衡具有更好的容错能力支持断续连接的系统异步体系结构缺点 利用通知或轮询进行状态跟踪处理超时创建和执行补偿逻辑 14 3软件设计模式 设计模式 设计模式使得人们可以更加简单和方便地去复用成功的软件设计和体系结构 从而能够帮助设计者更快更好地完成系统设计 建筑的永恒方法 模式是一条由三部分组成的规则 它表示了一个特定环境 一个问题和一个解决方案之间的关系 每一个模式描述了一个在我们周围不断重复发生的问题 以及该问题的解决方案的核心 这样 你就能一次又一次地使用该方案而不必做重复劳动 14 3 1设计模式的分类 创建型模式创建型模式抽象了实例化过程 它们帮助一个系统独立于如何创建 组合和表示它的那些对象 结构型模式结构型类模式采用继承机制来组合接口或实现 描述了如何对一些对象进行组合 从而实现新功能的一些方法 行为模式行为模式涉及到算法和对象间职责的分配 行为模式不仅描述对象或类的模式 还描述它们之间的通信模式 行为模式使用继承机制在类间分派行为 设计模式分类 设计模式分类 14 3 2MVC模型 模型 是封装数据和所有基于对这些数据的操作 视图 是封装对数据的显示 即用户界面 控制器 是封装外界作用于模型的操作和对数据流向的控制 MVC设计模式将模型 视图与控制器分隔开来 MVC设计模式实现过程 控制器创建模型 控制器创建一个或多个视图 并将它们与模型相关联 控制器负责改变模型的状态 当模型的状态发生改变时 模型会通知与之相关的视图进行更新 UML表示MVC设计模式 14 3 3设计模式的作用 设计模式有4个基本要素 模式名称 描述模式的问题 解决方案和效果 问题 描述了应该在何时使用模式 解决方案 描述了设计的组成部分之间的相互关系 职责和协作方式 效果 描述了模式应用的效果及使用模式应权衡的问题 设计模式在工程小组成员之间提供了通用的语义 设计模式可以更加简单方便的复用成功的设计和体系结构 设计模式有助于作出有利于系统复用的选择 避免设计损害系统复用性 设计模式可以帮助设计者更快更好的完成系统设计 14 3 4通过UML改善功能设计 UML是一种直观化 明确化 构建和文档化软件系统产物的通用可视化建模语言 设计阶段分为结构设计和详细设计 结构设计是定义包 包括包间的依赖性和主要通信机制 详细设计是通过创建新的类图 状态图和动态图 描述新的技术类 并扩展和细化分析阶段 UML设计可以规格说明更直观 更清晰 系统设计分为硬件设计及软件设计 使用UML的Collaboration图和Component图分别对系统的硬 软件进行系统分析 除了使用UML框图外 还需要使用StateChart Sequence框图描述具体的系统流程细节 14 4软件设计优化 14 4 1模块设计和接口设计的要求14 4 2详细设计的要求14 4 3界面设计的要求 14 4 1模块设计和接口设计的要求 模块设计准则 模块的划分是合适 模块与模块之间是否具有一定的独立性每个模块的功能和接口定义是否正确数据结构的定义是否正确模块内的数据流和控制流的定义是否正确接口设计准则 用户接口设计是否正确全面 是否有单独的用户界面设计文档是否包含有硬件接口设计 硬件接口设计是否正确且全面概要设计规格说明是否包含有软件接口设计 软件接口设计是否正确且全面是否包含有通信接口设计 通信接口设计是否正确且全面是否描述了各类接口的功能 各接口与其他接口或模块之间的关系已经接口的设计是否具有可测试性 14 4 2详细设计的要求 详细设计的目标任务 为每个模块确定采用的算法确定每一模块使用的数据结构确定模块接口的细节为每一个模块设计出一组测试用例详细设计的原则 模块的逻辑描述要清晰易读 准确可靠采用结构化设计方法 改善控制结构详细设计的表示方法 流程图伪码IPO图PAD判定表 树 5种软件详细设计表示方法比较 14 4 3界面设计的要求 用户界面设计原则 用户界面必须保持一致性用户界面应有自助功能用户界面易懂性Windows界面设计规则 易用性规范性帮助设施美观与协调性独特性快捷方式的组合错误保护 14 5一些典型的系统设计 14 5 1J2EE系统的设计14 5 2 Net系统的设计 14 5 1J2EE系统的设计 J2EE系统的结构 运行在客户端机器上的客户层组件运行在J2EE服务器上的Web层组件运行在J2EE服务器上的业务逻辑层组件运行在EIS服务器上的企业信息系统层软件J2EE的模型 视图 控制体系结构J2EE设计模式 前端控制器数据访问对象模式值对象模式截取过滤器会话面模式视图帮助器 J2EE系统结构 14 5 2 Net系统的设计 逻辑层逻辑应用程序体系结构将任何系统都视为一组相互协作的服务 这些服务分为用户服务 业务服务和数据服务 物理部署模型Web服务器用作应用程序服务器远程应用程序层ASP Net结构是一个3层系统 UI层 业务逻辑层 数据层 ASP Net的系统结构模型 J2EE与 Net的比较 14 6数据库设计质量 数据库设计步骤 需求分析概念设计逻辑设计物理设计对数据库进行质量控制方面划分为 数据层的需求和构建数据字典设计数据库数据流设计 14 6 1数据层的需求和构建 创建软件系统结构分为 数据层 代表物理数据库 实现数据网络交互共享的基础 业务层 负责数据层与表示层之间的数据传输 表示层 应用程序的客户端 通过业务层来访问数据库 数据是软件系统的核心 数据层是系统与数据库打交道的唯一一个地方数据层被分为 数据访问元数据 描述数据的存取方法的数据 为系统的每一个存取数据逻辑提供描述 数据访问层 是一个组件 管理数据库驱动 为上层提供简单一致的接口执行调用 数据提供层 使用数据访问层执行数据的CRUD操作 使用数据访问元数据控制数据调用指令 14 6 2数据字典 数据字典存储了各种模式和相应的映象 对数据库设计来讲 数据字典是进行数据收集和数据分析所获得的主要成果 数据字典使得信息描述准确以确保系统正确工作 数据字典有助于数据的进一步管理和控制 14 6 3数据流设计 数据域包括 数据流 数据通过系统时的变化方式 数据内容 就是数据项 数据结构 即各种数据项的逻辑组织 采用结构化方法进行分析 画出数据流图 输出数据流的规范表述 输入数据流的规范表述 描述数据流细节 小结 从软件系统结构设计 数据设计 设计模型等方面阐述软件设计阶段 并简单介绍了每个阶段设计的要求以及设计评价标准 软件设计处于软件工程的技术核心位置 设计模型可以方便的复用成功的体系结构 帮助设计者更好的完成系统设计软件设计提高了可以用于质量评估的软件表示
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!