GIS软件工程的总体设计.ppt_第1页
GIS软件工程的总体设计.ppt_第2页
GIS软件工程的总体设计.ppt_第3页
GIS软件工程的总体设计.ppt_第4页
GIS软件工程的总体设计.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二节第二节 软件体系结构设计软件体系结构设计 一、体系结构一、体系结构 n n 软件体系结构是软件系统中最本质的东西。软件体系结构是软件系统中最本质的东西。 n n 良好的体系结构必须是普适、高效和稳定的。良好的体系结构必须是普适、高效和稳定的。 n n 软件的体系结构包含软件构件、构件对外可见的性质以软件的体系结构包含软件构件、构件对外可见的性质以 及它们之间的关系。及它们之间的关系。 1 二、面向数据流的设计二、面向数据流的设计 n n 结构化开发方法(结构化开发方法(Structured Developing MethodStructured Developing Method)由)由 :结构化分析方法(:结构化分析方法(SASA法)、结构化设计方法(法)、结构化设计方法(SDSD法)及法)及 结构化程序设计方法(结构化程序设计方法(SPSP法)构成的。法)构成的。 n n 面向数据流的设计方法又称结构化设计。面向数据流的设计方法又称结构化设计。 n n 结构化设计方法主要完成软件系统的总体结构设计。结构化设计方法主要完成软件系统的总体结构设计。 2 n n SDSD方法的中心任务:方法的中心任务:把用把用DFDDFD图图表示的表示的系统分析系统分析模型方便模型方便 地转换为地转换为软件结构软件结构的的设计模型设计模型; DFD DFD System Hierarchy System Hierarchy 3 三、数据流的三、数据流的分类分类与面向数据流的设计过程与面向数据流的设计过程 在软件工程的需求分析阶段,在软件工程的需求分析阶段,信息流信息流是一个关是一个关 键考虑,通常用数据流图描绘信息在系统中加工和流动的情键考虑,通常用数据流图描绘信息在系统中加工和流动的情 况。况。面向数据流的设计方法面向数据流的设计方法定义了一些不同的定义了一些不同的“ “映射映射” ”,利用,利用 这些映射可以把数据流图变换成软件结构。这些映射可以把数据流图变换成软件结构。 4 Internal representationInternal representation InformationInformation Transform flowTransform flow OutgoingOutgoing flowflow IncomingIncoming flowflow External External representationrepresentation TimeTime 1.1.数据流的数据流的分类分类 (1 1)变换流变换流(Transform Flow)(Transform Flow) 5 输入输入 路径路径 变换变换 中心中心 输出输出 路径路径 变换中心的任务:就是通过计算或者处理,把系统的输入变换中心的任务:就是通过计算或者处理,把系统的输入 流变换为系统的输出流。流变换为系统的输出流。 6 (2 2)事务流)事务流(Transaction Flow)(Transaction Flow) n n 当信息流具有明显的当信息流具有明显的 “发射中心发射中心”时,可归结时,可归结 为事务流。为事务流。 n n 数据沿输入通路到达数据沿输入通路到达 一个处理一个处理T T,这个处理根,这个处理根 据输入数据的类型在若干据输入数据的类型在若干 个动作序列中选出一个来个动作序列中选出一个来 执行。执行。 T T TransactionTransaction requestrequest Action pathsAction paths 事务 中心 7 事务型结构的系统基本模型事务型结构的系统基本模型 n n 这类系统的特征,是这类系统的特征,是 具有在多种事务中执行具有在多种事务中执行 某类事务的能力。某类事务的能力。 8 T T TransactionTransaction requestrequest Action pathsAction paths 事事 务务 中中 心心 事务中心完成下述任务:事务中心完成下述任务: (1 1)接收输入数据(输入)接收输入数据(输入 数据又称为事务);数据又称为事务); (2 2)分析每个事务以确定)分析每个事务以确定 它的类型;它的类型; (3 3)根据事务类型选取一)根据事务类型选取一 条活动通路。条活动通路。 9 “ “变换变换” ”“ “事务事务” ” 精化数据流图精化数据流图 流类型流类型 区分事务中心和区分事务中心和 数据接收通路数据接收通路 区分输入和区分输入和 输出分支输出分支 映射成事务结构映射成事务结构映射成变换结构映射成变换结构 用启发式设计规用启发式设计规 则精化软件结构则精化软件结构 导出接口描述和导出接口描述和 全程数据结构全程数据结构 复复 查查 详细设计详细设计 变换分析变换分析事务分析事务分析 2.2.面向数据流的设计过程面向数据流的设计过程 10 例:汽车数字仪表板的设计例:汽车数字仪表板的设计 功能:功能: 通过模通过模 - - 数转换实现传感器和微处理机接口;数转换实现传感器和微处理机接口; 在发光二极管面板上显示数据;在发光二极管面板上显示数据; 指示每小时英里数指示每小时英里数(mph)(mph),行驶的里程行驶的里程,每加仑油每加仑油 行驶的英里数行驶的英里数(mpg)(mpg)等等;等等; 指示加速或减速;指示加速或减速; 如果车速超过如果车速超过55mph ,55mph ,则发出警告铃声。则发出警告铃声。 四、变换分析四、变换分析 变换分析是一系列设计步骤的总称,经过这些步骤把变换分析是一系列设计步骤的总称,经过这些步骤把 具有变换流特点的数据流图具有变换流特点的数据流图按预先确定的模式按预先确定的模式映射成软件映射成软件 结构结构。 11 设计步骤:设计步骤: n n 第第1 1步:复查基本步:复查基本 系统模型;系统模型; n n 第第2 2步:复查并精步:复查并精 化数据流图;化数据流图; 12 n n 第第3 3步步 确定确定 数据流图具有数据流图具有 变换性还是事变换性还是事 务特性;务特性; 13 燃料流 传感器信号 SPS 旋转信号 读 旋转信 号 收集和 求平均 确定加 /减速 转换成 转/分 计算里 程 计算 mph,超 速值 产生 加/减速 显示 计算燃 料消耗 计算 gph 读和校 核 产生 mpg显 示 产生 mph显 示 发出铃 声 产生里 程显示 SPS SPS 箭头指示 燃烧流 上箭头 水平线 下箭头 rpm rpm gph mph mpg mph 超速值 英里 显示 铃声 mph显示 mpg显示 n n 第第4 4步步 确定确定 输入流和输出输入流和输出 流的边界,从流的边界,从 而孤立出变换而孤立出变换 中心;中心; 14 n n 第第5 5步步 完成完成“ “第一级分解第一级分解” ” 第一级分解的方法第一级分解的方法 对于变换流的情况,数据流图被映射成一个特殊的软件对于变换流的情况,数据流图被映射成一个特殊的软件 结构,这个结构控制输入、变换和输出等信息处理过程。结构,这个结构控制输入、变换和输出等信息处理过程。 控制模块控制模块 CmCm协调下述从协调下述从 属的控制功能:属的控制功能: uu 输入信息处理控制模输入信息处理控制模 块块 CaCa; uu 变换中心控制模块变换中心控制模块CtCt ; uu 输出信息处理控制模输出信息处理控制模 块块 CeCe; 15 数字仪表板系统的第一级分解数字仪表板系统的第一级分解 16 第二级分解的方法第二级分解的方法 n n 第第6 6步步 完成完成“ “第二级分解第二级分解” ” 所谓第二级分解就是把数据流所谓第二级分解就是把数据流 图中的每个处理映射成软件结图中的每个处理映射成软件结 构中一个适当的模块。构中一个适当的模块。 uu 从变换中心的边界开始沿着从变换中心的边界开始沿着 输入通路向外移动,把输入通输入通路向外移动,把输入通 路中每个处理映射成软件结构路中每个处理映射成软件结构 中中 CaCa控制下的一个低层模块;控制下的一个低层模块; uu 然后沿输出通路向外移动,然后沿输出通路向外移动, 把输出通路中每个处理映射成把输出通路中每个处理映射成 直接或间接受模块直接或间接受模块 CeCe控制的一控制的一 个低层模块;个低层模块; uu 最后把变换中心内的每个处最后把变换中心内的每个处 理映射成受理映射成受CtCt控制的一个模块控制的一个模块 。 17 数字仪表板 控制 数据转换 控制 驱动仪表板 接收传感器 信号 计算 gph 读燃料流 转换成 rpm 收集sps 读旋转信号 确定 加/ 减速 计算 mph 计算 mpg 计算 里程 加/ 减速 显示 显示 mpg 显示 mph 显示 里程 发出 铃声 发光二极管显示 未精化的数字仪表板系统的软件结构未精化的数字仪表板系统的软件结构 18 mpg显示 燃料流 传感器信号 SPS 旋转信号 读 旋转信 号 收集和 求平均 确定加 /减速 转换成 转/分 计算里 程 计算 mph,超 速值 产生 加/减速 显示 计算燃 料消耗 计算 gph 读和校 核 产生 mpg显 示 产生 mph显 示 发出铃 声 产生里 程显示 SPS SPS 箭头指示 燃烧流 上箭头 水平线 下箭头 rpm rpm gph mph mpg mph 超速值 英里 显示 铃声 mph显示 19 n n 第第7 7步步 使用设计度量和启发式规则对得到的软件结构进一使用设计度量和启发式规则对得到的软件结构进一 步精化;步精化; 精化后的数字仪表板系统的软件结构精化后的数字仪表板系统的软件结构20 四、事务分析四、事务分析 事务分析的设计步骤和变换分析的设计步骤大部事务分析的设计步骤和变换分析的设计步骤大部 分相同或类似,主要差别仅在于由数据流图到软件结构的映射分相同或类似,主要差别仅在于由数据流图到软件结构的映射 方法不同。方法不同。 21 n n 映射出映射出接收分接收分 支结构支结构的方法:的方法: 从事务中心的边从事务中心的边 界开始,把沿着界开始,把沿着 接收流通路的处接收流通路的处 理映射成模块;理映射成模块; n n 发送分支的结发送分支的结 构构包含一个调度包含一个调度 模块;模块; n n 然后把数据流然后把数据流 图中的每个活动图中的每个活动 流通路映射成与流通路映射成与 它的流特征相对它的流特征相对 应的结构;应的结构; 22 五、综合设计五、综合设计 n n 在实际的软件系统中,数据流图往往是变换型和在实际的软件系统中,数据流图往往是变换型和 事务型的混合体,这就要用综合设计的方法:事务型的混合体,这就要用综合设计的方法: 一般以一般以“ “变换分析变换分析” ”为主,为主,“ “事务分析事务分析” ”为辅进行设计。先找为辅进行设计。先找 出主加工,设计出结构图的上层,然后根据数据流图各部出主加工,设计出结构图的上层,然后根据数据流图各部 分的结构特点适当地运用分的结构特点适当地运用“ “变换分析变换分析” ”或或“ “事务分析事务分析” ”对下层对下层 模块进行设计,可得到初始结构图。模块进行设计,可得到初始结构图。 23 设计优化设计优化 n n 注意,结构简单通常既表示设计风格优雅,又表注意,结构简单通常既表示设计风格优雅,又表 明效率高。明效率高。设计优化应该力求做到设计优化应该力求做到在有效的模块化在有效的模块化 的前提下使用最少量的模块,以及在能够满足信息的前提下使用最少量的模块,以及在能够满足信息 要求的前提下使用最简单的数据结构。要求的前提下使用最简单的数据结构。 n n 软件设计人员应该致力于软件设计人员应该致力于开发能够满足所有功能开发能够满足所有功能 和性能要求,而且按照设计原理和启发式设计规则和性能要求,而且按照设计原理和启发式设计规则 衡量是值得接收的软件。衡量是值得接收的软件。应该在设计的早期阶段尽应该在设计的早期阶段尽 量对软件结构进行精化。量对软件结构进行精化。 24 SDSD方法的特点方法的特点 n n SDSD方法是从以下几个方面来获得质量较好的软件结构:方法是从以下几个方面来获得质量较好的软件结构: uu根据描述用户需求的根据描述用户需求的数据流图数据流图导出了实现用户需求的导出了实现用户需求的结结 构图构图。 uu为了控制大型软件系统复杂性,运用了下面两个手段:为了控制大型软件系统复杂性,运用了下面两个手段: 将系统分解成许多个黑盒。将系统分解成许多个黑盒。 将黑盒组织成适合于用计算机实现的一个层次结构。将黑盒组织成适合于用计算机实现的一个层次结构。 uu用内聚和耦合作为评价软件结构质量的标准。用内聚和耦合作为评价软件结构质量的标准。 uu给出一组设计技巧,如扇入和扇出、模块大小的掌握,给出一组设计技巧,如扇入和扇出、模块大小的掌握, 作用范围和控制范围等。作用范围和控制范围等。 六、六、SDSD方法小结方法小结 25 n n 对数据结构、文件结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论