软件体系结构与设计实用教程(第2版)全套教学课件.pptx

软件体系结构与设计实用教程(第2版)全套教学课件.pptx

  1. 1、本文档共894页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第1章概述;1.1软件工程方法学;软件工程方法学

传统方法学SA+SD+SP

面向对象方法学OOA+OOD+OOP;1.1.1结构化方法;软件体系结构;1.1.2面向对象方法;;软件体系结构;;1.2软件设计与体系结构;;;;软件体系结构发展的阶段;;思考题;第2章面向对象方法;2.1面向对象分析基础;2.1.1用例图;;;;2.1.2类图;2.1.3描述接口的类图;2.1.4类图中的关系;;2.2软件体系结构;2.2.1软件体系结构的定义;SA的定义(1)1994年(D.GarlanandM.Shaw);SA的定义(2)2000年(IEEE1471–2000);SA的定义(3)1992年(D.PerryandA.Wolf);SA的定义(4)2010年(Clementsetal.);SA的定义(5)HayesRoth;SA的定义(6)张友生;软件体系结构;2.2.2组件与连接件;组件(Component);组件的定义;组件的粒度;2.连接与连接件;连接件(Connector):表示组件之间的交互并实现组件之间的连接,连接件也可看作一类特殊的组件,区别在于:

一般组件是软件功能设计和实现的承载体;

连接件是负责完成组件之间信息交换和行为联系的专用组件。

;连接件有哪些?

调用返回

管道(pipe)

……

中间件(Middleware)

ODBC/JDBC

应用服务器

WEB服务器

消息中间件

......;3.实例;函数参数和函数的值——调用返回机制;;;;2.2.3软件体系结构研究内容;软件体系结构研究的内容;2.2.4软件体系结构风格;;;“软件体系结构风格”的组成;软件体系结构风格级的复用;经典软件体系结构风格;基于网络的软件体系结构风格;2.3面向对象设计;什么是面向对象设计;OOA与OOD的关系;(1)从OOA到OOD不是转换

——是调整和增补

将OOA模型搬到OOD;

进行必要的调整,作为OOD模型的问题域部分;

增补其它四个部分,成为完整的OOD模型。

(2)采用一致的概念和表示法

不存在分析与设计之间的鸿沟;;OOD过程;OOD过程;2.3.1问题域部分的设计;2.3.1.1为复用设计与编程的类而增加结构;不同程度的复用;直接复用;删除可复用类的多余信息;通过继承复用;相似;第四种情况的做法;2.3.1.2增加一般类以建立共同协议;2.3.1.3按编程语言调整继承;1.把继承关系展平,取消继承关系;2.采用聚合把多继承调整为单继承或取消继承;;;;;;;;3.重新定义类;;;重新定义类方法的缺点;4.采用压平的方式;;压平;压平+聚合;;2.3.1.4对多态性的调整(覆盖)

——有些语言不支持多态:去掉父类中的内容;;2.3.1.5提高性能;调整对象分布;;;;用聚合关系描述复杂类;;;(5)增加保存中间结果的属性减少重复计算;2.3.2人机交互部分的设计;界面支持系统;2.3.2.2可视化编程环境下的人机界面设计策略;1.掌握可视化编程环境及其类库;2.根据人机交互需求选择界面元素;3.类图的设计;2)定义表示逻辑特征的属性,忽略物理特征的属性;3)特别标注从高层类继承的服务;4)用整体-部分结构表示界面的组织结构和命令层次;5)采用一般-特殊结构从可复用类直接继承;6)表达手工编程实现的消息,忽略自动实现的消息;2.3.2.3界面类与问题域类间通讯的设计;;;2.3.3数据管理部分的设计;永久对象;数据管理部分解决的问题;数据管理部分解决的问题;数据管理部分解决的问题;2.3.3.2针对关系数据库的数据存储设计;;2.对象标识;3.对永久类的存储设计;4.对关系的存储;一对一关联;分别映射;一对多关联;;多对多关联;(2)对聚合/组合的存储设计;(3)对继承的存储设计;将泛化映射到表;;;;;;2.3.3.3设计数据管理部分的其他方法;(2)针对文件的数据存储设计;2.3.4控制驱动部分的设计;;2.3.4.2系统的并行/并发;并发;并行;;2.3.4.3设计控制驱动部分的方法;1.选择软件体系结构风格;2.确定系统分布方案;;(1)对象的分布策略;(2)类的分布;(3)类图的划分;;;3.识别控制流;;;;(1)通过用例识别控制流;;(2)通过主动对象识别控制流;(3)从设计策略上识别控制流;;;;;4.用主动对象表示控制流;主动对象类及其主动服务的表示法;(1)区别进程和线程;;;;(2)主动对象表示控制流遵循的应用规则;;思考题;思考题;第3章经典

文档评论(0)

163 + 关注
实名认证
内容提供者

知识分享

1亿VIP精品文档

相关文档