第二章 软件设计.ppt

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 软件设计.ppt

第 二 章 2.1.1 软件体系结构设计 2.3 结构化设计方法 需求分析结果 — DFD 图 2.5 面向对象的设计方法 * 软件设计是软件开发的关键步骤,直接影响软件质量。软件设计阶段要解决“如何做”的问题。 一、软件设计阶段的任务与目标   设计任务:将需求阶段获得的需求说明(模型)转换为计算机中可实现的系统。 设计阶段主要任务是: 2.1 软件设计概述 软件体系结构的设计 数据结构的设计 用户界面的设计 算法的设计 软件设计任务涉及多方面,可分为总体设计和详细设计。 过程设计 系统结构设计 数据设计 界面设计 软件设计 任务 软件设计的目标 就是构造一个高内聚低耦合的软件模型。 软件 设计 高可靠性 高可维 护性 高可理 解性 高效率 软件设计的目标 软件体系结构确定了系统的组织结构和拓扑结构,显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。   体系结构的设计过程的主要活动: 1.系统分解—将系统分解为若干相互作用的子系统。 2.控制建模—建立系统各部分间控制关系的一般模型。 3.模块分解 — 将子系统进一步划分为模块。 注意:往往子系统与模块之间没有明显界限. 体系结构设计是软件设计的第一个阶段,该阶段侧重于系统宏观结构的设计,而不关心模块的内部算法。 体系结构的分类: 一、仓库模型(The repository model) 也称“容器模型 ”,是一种集中式的模型。各子系统可以直接访问中央数据仓库存储的共享数据。子系统之间紧密耦合。 中央数据仓库(Repository) 子系统1 子系统2 子系统n 仓库结构 …… 一、仓库模型(The repository model) 设计编辑器 代码生成器 设计分析器 报告生成器 设计转换器 项 目 存 储 程序编辑器 集成CASE工具集的体系结构 各子系统共享中央数据库中的数据—共享容器模型 各子系统可以有自己的数据库,子系统之间通过消息传递实现数据交换。 适宜命令控制系统、CAD系统 仓库模型的主要优缺点: 优点: 1.共享大数据量的有效方法。 2.子系统不必关心其它的子系统如何使用它所产生的数据。 3.易于将新子系统集成,若新子系统也采用相同规范 。 缺陷: 1.为了共享数据 ,各子系统必须有一致的数据视图 ,不可避免地会影响了整个系统的性能。 2.子系统的改变,使产生的数据结构也可能发生改变。 3.统一的数据库 结构(备份、安全、访问控制和恢复的策 ),将影响子系统的效率 。 二、 客户机/服务器模型(Client/Server Architectural Model) C/S结构是一种分布式模型,采用发请求、得结果的模式: 客户机 向服务器发出请求(数据请求、网页请求、文件传输请求等等), 服务器 响应请求,进行相应的操作,将结果回传给客户机,客户机再将格式化后的结果呈现给用户。 C/S结构的应用都由三个相对独立的逻辑部分组成: 用户界面 应用逻辑 数据访问 三种逻辑之间的关系 两层客户机/服务器模型 Two Tier Client/Server Architectural Model 服务器1 网络 服务器2 服务器M 客户1 客户2 客户N 两层Client/Server结构 请求 结果 请求 C/S的工作模式是一种远程过程调用(RPC,Remote Procedure Call)模式,允许客户端和服务器端有不同的软硬平台。 电影图片库系统的体系结构 client1 client2 client4 client3 Wide-bandwidth netwok Catalogue server catalogue video server Film clip files picture server digitised photographs hypertext server hypertext web 例:Two Tier Client/Server Architectural Model 完整的应用包含三个相对独立的逻辑部分,而两层的C/S结构只有两个端应用。应用逻辑应该映射到哪一端上呢? 三种情况: 网 络 用户界面 客户端逻辑应用 服务端逻辑应用 客户端 用户界面 逻辑应用 数据访问 用户界面 逻辑应用 数据访问 服务器 应用逻辑层的映射情况 数据访问 C/S应用3 C/S应用1 C/S应用2 两层C/S架构将数据表示和处理逻辑分开 ,但应用逻辑和两端之一是紧耦合的 ,不适宜多用户、多数据库,是非安全的网络环境。

文档评论(0)

cai + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档