- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息工程学院 第四章 概要设计 主讲:龙亚 一、教学目的 1.掌握软件总体设计的目的、任务,掌握软件总体设计的过程、设计原理和启发规则 2.掌握描述软件结构的工具以及面向数据流的设计方法。能够将具体的数据流图的转换为软件的结构图,即变换分析技术和事务分析技术。 二、教学重点 1.软件设计的过程,原理及启发规则; 2.面向数据流的设计方法; 三、教学难点 1.软件设计的原理,启发规则; 2.面向数据流的设计方法; 主要内容 4.1 软件设计概述 4.2 软件设计的基本原则 4.3 概要设计的任务和步骤 4.4 软件结构图 4.5 结构化设计方法 4.6数据设计 4.7接口设计 4.8概要设计说明书 4.9案例 4.1 软件设计概述 软件开发阶段由设计、编码和测试三个基本活动组成,其中“设计活动”是 获取高质量、低耗费、易维护软件最重要的一个环节. 需求分析阶段获得的需求规格说明书包括对欲实现系统的信息、功能和行为方面的描述, 这是软件设计的基础。 软件设计是软件工程的重要阶段。软件设计过程是对程序结构、数据结构和过程细节逐步求精、复审并编制文档的过程。 概要设计是根据需求确定软件和数据的总体框架。 软件设计的重要性 软件设计是把需求转化为软件系统的最重要的环节,其优劣在根本上决定了软件系统的质量,重要性表现在以下两个方面: 软件设计是开发阶段最重要的步骤,是软件质量得以保证的关键。 软件设计是将用户要求准确地转化为最终的软件产品的唯一途径。 软件设计的任务 软件设计也可看作将需求规格说明逐步转换为软件源代码的过程 从工程管理的角度看,软件设计可分为概要设计和详细设计两大步骤 概要设计是根据需求确定软件和数据的总体框架 详细设计是将其进一步精化成软件的算法表示和数据结构 概要设计和详细设计由若干活动组成,除总体结构设计、数据结构设计和过程设计外,许多现代应用软件,还包括一个独立的界面设计活动 软件设计的任务 概要设计的基本目的就是回答“概括地说,系统应该如何实现?”这个问题,因此,概要设计又称为总体设计或初步设计。 概要设计的必要性:可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。 通过这个阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等,但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。 总体设计阶段的另一项重要任务是设计软件的结构,即将软件需求转化为数据结构和软件的系统结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。显然,概要设计建立的是目标系统的逻辑模型,与计算机无关。 概要设计主要完成以下任务:制定规范;软件系统结构的总体设计;数据设计;概要设计评审. 详细设计:对结构进行细化,得到软件包的详细的数据结构和算法。对概要设计过程中给出的各种结构成分进行详细的加工,得到在程序细节上非常接近于源程序的软件表示。 详细设计需要完成的工作是:确定软件各个组成部分内的算法以及各部分的内部数据组织;选定某种过程的表达形式来描述各种算法;用户界面设计;编写详细设计文档;进行详细设计的评审。 软件设计的策略 1、简单-复杂-简单 2、软件复用技术 3、模块化概念 4.2 软件设计的基本原则 模块化 抽 象 逐步求精 信息隐藏和局部化 模块独立 模块化 模块是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。过程、函数、子程序和宏等,都可作为模块。面向对象方法学中的对象是模块,对象内的方法(或称为服务)也是模块。 模块是构成程序的基本构件。 模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。 模块化的思想:即把软件划分为可独立命名和编址的部件,每个部件称为一个模块,当把所有的模块组装到一起时,便可获得满足问题需要的一个解。 模块化是软件惟一能使程序获得智能化管理的一个属性。完全由一个模块构成的程序,由于控制路径错综复杂,变量被远距离引用等,使得它难于掌握。 模块具有三个基本属性 功能—模块实现的功能 逻辑—描述模块内部怎么做 状态—模块使用时的环境和条件 模块的特征 外部特征—模块的名字、参数等 内部特征—完成模块功能的程序代码和模块内部数据 模块化,即把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件。模块化实际上是
您可能关注的文档
最近下载
- 基于Android技术的网上商城系统的设计与实现( word 版).docx VIP
- 糊树脂分厂工艺操作规程3.doc VIP
- 《编制专业质量检验计划》24.4-编制专业质量检验计划.ppt VIP
- 大作业:如何理解“作风建设永远在路上,永远没有休止符”?我们应如何加强作风建设?.pdf VIP
- 新版PFMEA第五版实例.xls VIP
- 《元史·八思巴传》原文,注释,译文,赏析.docx VIP
- 新教材人教版高中生物选择性必修2生物与环境全册各章节 学案讲义(知识点汇总及配套习题).pdf VIP
- 项贤明主编马工程教材《教育学原理》第九章教师与学生.ppt VIP
- 2025-2026学年高中体育与健康必修 全一册人教版(2019)教学设计合集.docx
- 集成电路制造技术——原理与工艺(第3版)课件 第3章 热氧化.pptx
原创力文档


文档评论(0)