- 1、本文档共76页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章-总体设计-1
承上启下 需求分析的任务 需求建模方法 需求分析说明书 问题 设计阶段依据什么设计? 完成哪些设计? 写什么文档? 什么人员负责设计? 软件工程 第5章 总体设计 本章目标 帮助你从程序员上升为设计师 搞清楚设计什么以及如何设计 掌握软件总体设计过程 了解软件总体设计的原则 掌握总体设计工具( HIPO图、软件结构图) 理解并学会编写软件概要设计说明书 本章要点 一、软件设计概述 二、总体设计的过程 三、总体设计原理 四、启发规则 五、常用的描述软件结构的图形工具 六、面向数据流的设计方法 七、案例分析 八、软件总体设计文档 软件设计概述 正如任何工程项目一样,在生产之前要做设计,软件编码前,也必须先进行软件设计。 需求分析阶段解决了让软件“做什么”的问题,并且在软件需求说明书中得到了充分的表达 进入设计阶段,开始软件需求的实施工作,也就是解决“怎么做”的问题 软件设计概述 “设计”在IEEE中的定义是:“定义一个系统或部件的架构、组成、接口或其它特征的过程”,或者是“该过程的结果”。 软件设计的任务 依据和基础 软件需求规格说明书SRS,描述了欲解决的问题(用户需求)。 What? 任务 以SRS为基础设计出满足用户需求的软件(软件结构,…),给出软件实现的解决方案,生成软件设计的规格说明书 How? 软件设计概述(续) 软件设计的任务 方案设计:确定系统的具体实现方案,包括总体布局、系统的处理方式和计算模式选择 数据设计:将分析时创建的信息域模型变换为实现软件所需的数据结构 结构设计:定义软件系统模块之间的关系 接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信 过程设计:把系统结构部件转换成软件单元的过程性描述 软件设计概述(续) 依据“分而治之”的思想,通常,设计阶段的工作分成两步。 总体设计 详细设计 总体设计与详细设计的差异? 软件设计概述(续) 总体设计(架构设计)的主要目的,是按某种设计方法,将软件系统分解为多个子系统,再将子系统分解为多个模块或部件,并将系统所有的功能合理地分配到模块或部件中去。 详细设计是面向程序员的,它的主要目的,是按某种设计方法,将软件系统的模块或部件,进行编程实现设计,用以指导程序人员编写代码,形成模块或部件的实现蓝图。 谁负责总体设计?谁负责详细设计? 软件设计概述(续) 本章要点 一、软件设计概述 二、总体设计的过程 三、总体设计原理 四、启发规则 五、常用的描述软件结构的图形工具 六、面向数据流的设计方法 七、案例分析 总体设计的过程 总体设计的过程 1. 设想供选择的方案 2. 选取合理的方案 3. 推荐最佳方案 4. 功能分解 5. 设计软件结构 6. 设计数据库 7. 制定测试计划 8. 书写文档 9. 审查和复审 总体设计的过程 一、方案设计 主要考虑如下三方面: 总体布局 系统的处理方式 软件结构模式选择 总体设计的过程 一、方案设计 1)总体布局 规划新系统的总体布局方案时,一般应考虑以下几个问题:系统类型、处理方式、数据存储及软硬件配置。 系统总体方案的选择原则是:满足功能需求、使用方便,可维护性、可扩展性、可变更性好,安全性、可靠性高,经济实用。 目前常见的总体布局方案有集中式和分布式两种。 总体设计的过程 一、方案设计 2)处理方式 主要分为: 批处理方式和联机处理方式; 处理方式的选择主要由处理对象的信息特点决定 如售票系统,一般选择联机处理方式。 统计类的信息系统则一般选择批处理方式。 总体设计的过程 一、方案设计 3)软件结构模式选择 常见的分布式系统的计算模式有资源共享方式、客户机/服务器方式(C/S)和浏览器/服务器(B/S)计算模式。 集中式系统的计算模式有单机和多用户模式。 总体设计的过程(续) 几种非常通用的软件结构模型: 仓库模型 客户机/服务器(Client/Server)模型。 浏览器/服务器(B/S结构)模型 调用返回模型 总体设计的过程(续) 软件体系结构--三层结构设计 三层体系结构通常被划分为表示层、中间层和数据层三层,各个分层之间通过对外接口来互相访问。分层结构的主要目的,是为了允许各层可以随着需求或技术的变化而独立的升级或替换,例如当替换数据库时只需要变化数据层。 三层结构,就是在原来两层结构(Client/Server)的客户层与数据层之间,加入了一个中间层(也叫业务层),并将应用程序的业务规则、数据访问、合法性校验等工作放到了中间层进行处理,这样就变成了三层结构(Browser/Server)。 三层是指逻辑上的三层,即使这三个层都放置到一台机器上。当然,三层也可以放在两台或三台机器上。 总体设计的过程(续) 软件体系结构--三层结构设计 1.表示
文档评论(0)