软件工程 4-3 软件的体系结构设计.pptVIP

  • 18
  • 0
  • 约7.47千字
  • 约 64页
  • 2018-05-03 发布于四川
  • 举报
软件工程 4-3 软件的体系结构设计.ppt

第四章 软件设计 三、软件的体系结构设计 1、面向数据流的设计方法 SD设计方法的主要思想 结构化设计的优点 结构化设计描述工具 结构图的主要内容 结构图的形态特征 画结构图应注意的事项 模块间的调用关系 数据流图的类型 ⑴变换型数据流图 变换型DFD图 ⑵ 事务型数据流图 面向数据流设计方法的过程 模块的判定作用范围 模块的4种类型 变换分析设计 确定变换中心,逻辑输入、逻辑输出 设计结构顶层和一层——变换结构 自顶向下逐层分解,设计中、下层模块 设计优化 变换中心的确立 变换型设计软件结构图的形成 事务分析的设计 确定事物中心和加工路径 设计结构顶层和一层——事务结构 设计中、下层模块并优化 事务处理中心的确立 软件结构图的形成 2、Jackson系统开发方法 Jackson方法思想 Jackson图 Jackson伪代码 Jackson图的优点 Jackson方法的步骤 程序结构的导出 3、软件体系结构 软件体系结构的定义 体系结构为软件系统提供了一个结构、行为和属性的高级抽象。由构成系统的元素的描述(构件)、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。 体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。 软件体系结构的组成 几种通用软件结构的风格* 管道和过滤器风格(UNIX的shell程序) 仓库风格和黑板风格(人工智能软件中常用) 分层系统风格(UNIX) 客户服务器风格(C/S结构应用系统) 数据抽象和面向对象风格(CORBA) 基于事件的风格(隐式调用) 模型-视图-控制器风格(JAVA) 解释器风格(虚拟机风格) 异构系统(X WINDOWS) 传统软件体系结构的描述方法 图形表达工具:采用由矩形框和有向线段组合而成的图形表达工具。矩形框代表抽象构件,框内标注的文字为抽象构件的名称,有向线段代表辅助各构件进行通讯、控制或关联的连接件。 模块内连接语言 基于软构件的系统描述语言 体系结构描述语言 正交软件体系结构 正交软件体系结构由组织层和线索的构件构成。层是由一组具有相同抽象级别的构件构成。线索是子系统的特例,它是由完成不同层次功能的构件组成(通过相互调用来关联),每一条线索完成整个系统中相对独立的一部分功能。 正交软件体系结构的主要特征 正交软件体系结构由完成不同功能的n(n1)个线索(子系统)组成; 系统具有m(m1)个不同抽象级别的层; 线索之间是相互独立的(正交的); 系统有一个公共驱动层(一般为最高层)和公共数据结构(一般为最低层)。 正交软件体系结构的优点 层次结构清晰,便于理解。 可移植性强,重用粒度大。 易修改,可维护性强。 C/S软件体系结构 Client/Server(客户机/服务器)体系结构,是基于资源不对等,为实现共享而提出来的。 C/S结构将应用一分为二: 三层C/S结构的组成 表示层:用户接口部分,担负着用户与应用间的对话功能。 功能层:相当于应用的本体,将具体的业务处理逻辑程序。 数据层:数据库管理系统,负责管理对数据库数据的读/写。 三层C/S结构的优点 允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性。 允许更灵活有效地选用相应的平台和硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各个组成部分可以具有良好的可升级性和开放性 。 三层C/S结构中,应用的各层可以并行开发,各层也可以选择各自最适合的开发语言。 允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层 。 B/S软件体系结构 Browser/Server(浏览器/服务器)体系结构是随着Internet技术的兴起,对C/S体系结构的一种变化或者改进。 在B/S体系结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,主要事务逻辑在服务器端实现。 B/S体系结构的不足之处 C/S、B/S混合结构的特点 4、软件体系结构举例--OS 模块结构 模块结构OS的优点 系统结构紧凑; 组成模块之间的调用接口简单,系统效率较高。 模块结构OS的缺点 模块之间的随意调用,造成模块间耦合度大,独立性差,系统结构不清晰; 数据基本都被作为全程变量来使用,意味着相关模块都有可能进行读取或写入操作,造成了模块间隐含的约束关系。系统维护也因此变得复杂; 模块化体系结构的适用性较差,一般只能用于模块较小、应用环境较为稳定但对效率要求较高的系统。 分层结构的OS 软件按照层次结构组织:每一层向它的上层提供服务,同时又是它的下层的客户。除了邻接的层,一个内部层次对于其他外部层次是隐藏的

文档评论(0)

1亿VIP精品文档

相关文档