- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * 《软件工程》 德州学院 4.1结构化分析与设计概述 4.2 软件设计的基本原理 4.3 面向数据流的设计方法 4.4 总体设计评审 4.5软件的详细设计 4.6详细设计评审 4.7本章小结 第四章 结构化分析与设计 * 4.1结构化分析与设计概述 4.1.1结构化分析与设计的由来 4.1.2总体设计的概述 4.1.3详细设计的概述 * 4.1.1结构化分析与设计的由来 结构化设计(Structured Design,SD):在20世纪70年代中期,Stevens、Myers与Constantine等人提出。 结构化分析(Structured Analysis,SA) :20世纪70年代后期,Yourdon等人提出。 瀑布模型的首次实践 结构化分析与设计是瀑布模型的首次实践。瀑布模型一般可划分为需求分析、总体设计、详细设计、编码、测试和维护等阶段,结构化分析与设计主要应用该模型的需求分析、总体设计和详细设计三个阶段。 * 4.1.1结构化分析与设计的由来 SA与SD的流程 系统开发从需求分析开始,建立系统的需求模型,通过SD方法提供的映射规则,把分析模型转化为初始设计模型,优化最终的设计模型。 基本任务与指导思想 (1)结构化分析 结构化分析有两项基本任务,即建立目标系统的分析模型和编写软件项目需求规格说明书。 * 4.1.1结构化分析与设计的由来 (2)结构化设计 结构化分析阶段的任务是解决系统“做什么”的问题。 结构化设计阶段的任务是解决系统“怎么做”的问题。 分为总体设计和详细设计: 总体设计又称概要设计或初步设计,主要给出一个系统的构造和构造元素。 详细设计阶段再对构造元素进行细化设计。 这两个阶段的分界线并不很清晰,有时可以合二而一。 * 4.1.1结构化分析与设计的由来 (3)软件设计的指导思想 分解与细化是重要的软件设计策略。细化的实质就是分解。 “逐步细化”不仅相继应用于结构化程序设计、结构化设计和模块设计中,而且也扩展应用于结构化分析中(如分层DFD图就是逐步细化的应用)。 * 4.1结构化分析与设计概述 4.1.1结构化分析与设计的由来 4.1.2总体设计的概述 4.1.3详细设计的概述 * 4.1.2总体设计的概述 基本任务 总体设计概要地回答系统应该如何实现,主要任务: (1)软件结构的设计 软件结构设计就是确定软件系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。 ①采用某种设计方法,将一个复杂的系统划分成若干模块。 ②确定每个模块的功能,建立与已确定的软件需求的对应关系。 * 4.1.2总体设计的概述 ③确定模块之间的调用关系。 ④确定模块之间的接口,即模块之间传递的信息。 ⑤评价模块结构的质量。 注意: 软件结构设计是总体设计的关键,直接影响后续阶段的工作。 由经验丰富的软件人员担任。 软件结构需要经过反复修改,以便得到更好的软件结构。 * 4.1.2总体设计的概述 (2)数据结构的设计 根据需求分析阶段对系统数据的组成、操作约束和数据之间的关系的描述,确定数据结构特性。 如: 在总体设计阶段定义的数据结构概念模型“栈”。 在详细设计中用线性表和链表来实现。 * 4.1.2总体设计的概述 (3)数据库的设计 数据库的设计指数据存储文件的设计,主要包括概念设计、逻辑设计和物理设计等。 (4)网络规划与设计 网络规划与设计也是一个必要的设计任务。 (5)编写文档 编写总体设计说明书、用户手册、测试计划。 * 4.1.2总体设计的概述 (6)设计评审 设计部分是否完整地实现了需求中规定的功能、性能等要求,设计方案的可行性,关键的处理内外部接口定义正确性、有效性,各部分之间的一致性等等内容都需要审查,审查通过之后再由使用部门的负责人从管理角度进行复审。 * 4.1.2总体设计的概述 总体设计的步骤 (1)功能分解 将复杂的功能进一步分解成简单的功能,遵循模块独立性原则。 (2)软件结构设计 通常软件中的一个模块完成一个适当的功能,应该把模块组织成良好的层次结构。 * 4.1.2总体设计的概述 (3)其它设计 若有数据要求,则确定系统的数据结构和文件结构。 若使用数据库,则需要进行数据库设计。 若使用计算机网络,则需要建设网络系统的一套完整的设想和方案。 (4)制定测试计划 测试计划是指采用黑盒测试法的计划,详细设计时才能做详细的测试用例与计划。 * 4.1.2总体设计的概述 (5)编写总体设计文档 ①用户手册。对需求分析阶段编写的用户手册进一步修订。 ②测试计划。对测试的计划、策略、方法和步骤提出明确的要求。 ③详细项目开发计划。给出系统目标、总体设计、数据设计、处理方式设计、运行设计和出错设计等。 ④数据库设计结果。使用的数据库简介、数据
文档评论(0)