第4章 结构化软件设计ppt课件.ppt

第4章 结构化软件设计ppt课件.ppt

ID:58701088

大小:249.00 KB

页数:74页

时间:2020-10-04

第4章 结构化软件设计ppt课件.ppt_第1页
第4章 结构化软件设计ppt课件.ppt_第2页
第4章 结构化软件设计ppt课件.ppt_第3页
第4章 结构化软件设计ppt课件.ppt_第4页
第4章 结构化软件设计ppt课件.ppt_第5页
资源描述:

《第4章 结构化软件设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章结构化软件设计本章学习内容:1.了解概要设计的任务与过程2.掌握结构化设计技术的基本原理与准则3.掌握面向数据流分析的设计方法4.了解面向数据的设计方法5.掌握数据库设计原则和步骤6.了解常用的详细设计工具7.了解概要设计说明书的基本内容第4章结构化软件设计4.1概要设计的任务与过程概要设计的目标是概要地说明软件应该怎样实现,即解决软件系统总体结构设计的问题,包括软件系统的结构、模块划分、模块功能和模块间的联系等。第4章结构化软件设计4.1概要设计的任务与过程4.1.1概要设计的任务(1)建立目标系统的总体结构

2、(2)给出每个功能模块的功能描述,数据接口描述和调用关系,规定设计限制,外部文件及全局数据定义。(3)设计数据库及数据结构(4)编写文档第4章结构化软件设计4.1.2概要设计的过程1.制定规范2.系统架构设计3.软件结构设计4.公共数据结构设计5.安全性设计6.故障处理设计7.编写文档8.概要设计评审第4章结构化软件设计4.2系统架构设计4.2.1系统架构设计与风格系统架构设计可按以下步骤进行:定义子系统。根据需求分析中有关系统的业务划分情况,将系统分解成多个具有独立功能的子系统。定义子系统外部接口。定义系统物理架构

3、。包括硬件设备、软件环境、网络结构、数据库结构等,并将子系统按照子系统所选的物理架构进行合理部署与优化。第4章结构化软件设计4.2.2常见的软件体系架构风格1.数据流风格管道/过滤器风格的软件体系结构第4章结构化软件设计管道/过滤器风格的软件体系架构的优点使得软构件具有良好的隐蔽性和高内聚性、低耦合度的特点;允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;支持软件复用,如果任何两个过滤器达成了在它们之间交流的数据格式,这两个过滤器就可被连接起来;维护这种系统和增强系统其功能很简单,新的过滤器可以

4、添加到现有系统中来,旧的过滤器可以被改进的过滤器替换掉;第4章结构化软件设计允许对一些如吞吐量、死锁等属性的分析;支持并行执行,每个过滤器是作为一个单独的任务实现,因此可与其他任务并行执行。缺点:通常导致进程成为批处理的结构。不适合处理交互的应用。因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。第4章结构化软件设计2.层次系统风格第4章结构化软件设计层次系统的优点:支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分

5、解。支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层。支持复用。只要提供的服务接口定义不变,同一层的不同实现可以交换使用。不足之处:并不是每个系统都可以很容易地划分为分层的模式;很难找到一个合适的、正确的层次抽象方法。第4章结构化软件设计3.虚拟机风格例:解释器,通过虚拟机特定模块的解释步骤如下:解释引擎从被解释的模块中选择一条指令;基于这条指令,引擎更新虚拟机内部的状态;上述过程反复执行。第4章结构化软件设计特点:在虚拟机环境中运行的代码不必须了解虚拟机的具体细节。一旦运行环境发生

6、变化,只需要重写虚拟机本身,而不是整个系统。通常虚拟机会限制在其中运行的软件的行为,特别是那些以实现跨平台为目的的虚拟机,如Java虚拟机和.NETCLR。能够使系统的结构更具层次性,使用虚拟机提供的设施编写的代码,可以不考虑虚拟机以外的实际环境,而在正确地实现了这种虚拟机的环境中执行。第4章结构化软件设计4.独立构件风格独立构件风格的体系结构由很多独立的、通过消息交互的过程或者对象组成。这种软件体系结构通过对各自部分计算的解耦操作来达到易更改的目的。第4章结构化软件设计特点:系统由松耦合的一些独立运行的计算单元构成

7、,这些单元之间通过消息传递信息。一般情况下,这些独立的计算单元能够自主地完成一些计算任务。消息的发出者通常并不知道谁会接收并处理这些消息,更不了解这些消息是如何被处理的。由于系统基于消息,因此有较好的并发性能、容错性和可伸缩性。独立构件系统中通常不存在比较明显的主/从结构。第4章结构化软件设计5.仓库风格第4章结构化软件设计5.仓库风格(1)知识源:知识源中包含独立的、与应用程序相关的知识,知识源之间不直接进行通讯,它们之间的交互只通过黑板来完成。(2)黑板数据结构:黑板数据是按照与应用程序相关的层次来组织的解决问题

8、的数据,知识源通过不断地改变黑板数据来解决问题。(3)控制:控制完全由黑板的状态驱动,黑板状态的改变决定使用的特定知识。第4章结构化软件设计4.3软件结构设计4.3.1模块化概念1.模块化模块是一个独立命名的,拥有明确定义的输入、输出和特性的程序实体。模块化设计可以简化软件的设计和实现,提高软件的可理解性和可测试性,并使软件更容易得到维护。第4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。