- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7讲软件设计方法-Read
第 7 讲 软件设计方法 体系结构设计 软件体系结构是软件系统中最本质的东西。 良好的体系结构必须是普适、高效和稳定的。 [BAS98]:软件的体系结构是系统的一个或多个结构,包含软件构件、构件对外可见的性质以及它们之间的关系。 体系结构是一种表示。 体系结构设计关注构件结构、构件的性质和交互的关系。 体系结构风格 style 体系结构风格包含: 一组构件(components)(如,数据库、计算模块)完成系统所需的某种功能; 一组连接子(connectors),能使构件间通信协调和合作; 约束(constraints),定义构件如何被集成,形成系统; 语义模型(semantic model),使得设计者通过分析构件的已知性质而理解系统的整体性质。 体系结构风格分类 数据为中心的体系结构 目标:实现数据的可集成性 共享数据可以是数据仓库或是黑板。 体系结构风格分类 调用-返回体系结构 目标:系统的可更改性和可扩展性 主程序-子程序体系结构 将一个程序分层子部分 每个子节点都只由父节点控制 如远程过程调用系统 面向对象或抽象数据类型系统 强调对数据的绑定和对数据操纵及访问方式的掌握 实现可更改性 层次式 可更改 可移植 Web sites of Interest CMU Composable Systems Group /~Compose/ CMU Architecture Based Languages and Environments Research Group /~able/ The Acme ADL /~acme/ Worldwide Institute of Software Architects Web Sites of Interest The WRIGHT Language /~able/wright/ Meta-H For Real-Time Software Analysis /projects/dssa/dssa_tools/dssa_tools_mh.html Rapide ADL /rapide/ C2 Project at UC Irvine /pub/arch/ 面向数据流的设计 结构化开发方法(Structured Developing Method) 是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。 结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD法)及结构化程序设计方法(SP法)构成的。 结构化设计方法(SD 法 Structured Design)是结构化开发方法的核心,与SA法,SD法密切联系,主要完成软件系统的总体结构设计。 面向数据流的设计方法又称结构化设计。 面向数据流的设计 基本思想:将系统设计成由相对独立、单一功能的模块组成的结构。 采用方法: DFD ? System Hierarchy 步骤: 确定数据流类型; 指明数据流的边界; 将DFD映射为程序结构; 根据元素的分解,定义控制的层次; 使用设计测量和启发信息,对结构进行细化和求精; 精化体系结构的描述。 结构图 (Structure chart) 1、Data Flow 的分类 ⑴ 变换流(Transform Flow): 变换流 ⑵ 事务流(Transaction Flow) 变换流设计 变换流设计是从变换流的DFD到程序结构图的转化。 设计步骤: 找出变换中心及逻辑输入/出; 变换中心-描述了系统的主要功能、特征,其特点是:输入/出数据流较多,变换中心可以不至一个。 逻辑输入/出 - 是指输入/出变换中心的数据流。 输入流 -是将物理输入转换为逻辑输入的数据流。 输出流 - 是将逻辑输出转换为物理输出的数据流。 设计软件结构的顶层; 为每个输入设计一个输入模块,为每个输出设计一个输出模块,同时为变换中心设计一个处理模块。 自顶向下,逐步细化,设计中下层模块。 即上层各个模块的从属模块,顺序一般是从设计输入模块的下层开始。 变换流设计 变换流设计 变换流分析 第一步:DFD的分界,先分出I、P、O三块 一般问题的一级分解方法: 第二步:映射 例: 第三步:修改 —— 本着高内聚、低耦合的原则。 例:精化后的数字仪表板系统的软件结构。 事务流设计 事务流设计是从事务流的DFD到程序结构的转换。 设计步骤: 确定流界: 先从DFD中找出事务流、事务处理中心和事务路径。事务中心前是接收事务、事务中心后是事务路径。进行一级分析,设计顶层模块。 进行一级分析,设计上层模块: 从DFD中导出具有接收和发送分支的软件结构。对事务中心设计为“事务控制”、对事务流为
文档评论(0)