软件体系结构形式化描述ppt精选课件

上传人:尔*** 文档编号:134892169 上传时间:2020-06-09 格式:PPT 页数:115 大小:2.86MB
返回 下载 相关 举报
软件体系结构形式化描述ppt精选课件_第1页
第1页 / 共115页
软件体系结构形式化描述ppt精选课件_第2页
第2页 / 共115页
软件体系结构形式化描述ppt精选课件_第3页
第3页 / 共115页
软件体系结构形式化描述ppt精选课件_第4页
第4页 / 共115页
软件体系结构形式化描述ppt精选课件_第5页
第5页 / 共115页
点击查看更多>>
资源描述

《软件体系结构形式化描述ppt精选课件》由会员分享,可在线阅读,更多相关《软件体系结构形式化描述ppt精选课件(115页珍藏版)》请在金锄头文库上搜索。

1、 1 软件体系结构 4 软件体系结构形式化描述覃征教授 SoftwareArchitecture 2 内容概要 形式化描述简介软件体系结构的描述软件体系结构形式化描述实例 WRIGHTWRIGHT应用范例 3 抽象 认识事物本质的惯用法 抽象是人类对实际事物在针对某一特定关点下的简化突出我们希望认识的各个元素允许我们对关注的结构和行为进行辨识和分析在构建新的实例时可以作为蓝图 4 抽象实例 运动系统 5 抽象实例 动力系统 忽略了施力者和受力者的实体忽略了次要的环境作用 如地面 空气忽略了传力媒介突出了力和运动状态之间的关系 6 形式化的抽象 实际事物 形式化方法 7 内容概要 形式化描述简介

2、软件体系结构的描述软件体系结构形式化描述实例 WRIGHTWRIGHT应用范例 8 软件体系结构的描述 软件体系结构和软件体系结构描述不同的两个概念软件体系结构是附属于系统之中 只要存在系统 体系结构就存在如 每个石头都会有重量软件体系结构描述是将体系结构可视化的手段和产物如 表示一个石头的重量 9 如何理解体系结构描述 10 体系结构描述方式 使用不同的策略和方法可对同一软件体系结构作不同的理解和描述如 描述一块石头的重量比较轻比另一块重一些大约2公斤四斤六两2 32Kg5 114751207磅 精确程度不同单位不同测量基准不同 描述方式不同 11 体系结构描述方式 体系结构描述方式标准语义

3、丰富性语义精确性形式化程度主要描述方式非标准的图形符号UML模块接口语言MILADL Richness Preciseness Formalization O 12 非标准图形符号描述 非标准图形符号描述用由矩形框和有向线段组合而成的图形表达工具 其中 矩形框代表抽象构件 有向线段代表辅助各构件进行通讯 控制或关联的连接件 特点语义丰富语义极不精确没有形式化基础用途商业展示设计草图 13 非标准图形符号描述 软件体系结构的非标准图形符号表示具有如下优点 直观形象简单易用 14 非标准图形符号描述 软件体系结构的非标准图形符号表示具有如下缺点 由于其术语和表达语义上存在着一些不规范和不精确 从而

4、使得以矩形为基础的传统图形表达方法在不同系统和不同文档之间存在着许多不一致甚至矛盾 15 实例 EnterpriseJavaBeansArchitecture 16 实例 Microsoft NetFrameworkArchitecture 17 实例 DC LMP LinkManagementProtocolSoftware用于光纤网物理介质连接器的软件 18 UML 基于UML技术的软件体系结构描述方法1996年 Rational Catapulse公司发起workshop 倡议用UML进行体系结构描述和建模 特定领域体系结构建模 对UML中的stereotypes profiles等进行

5、扩充 支持体系结构的表示2004年 UML2 0发布 增强了通用软件体系结构的描述能力 本质上UML是侧重于面向对象 OO ObjectOriented 软件系统设计的语言 19 UML特性 特点语义极其丰富语义相对精确有少量的形式化基础用途需求分析OO类设计行为设计和分析代码自动生成 20 UML与RUP UML本身只是一门语言 并不限定使用它的开发过程 但UML特别适合使用在RUP 统一开发工程 上 RUP定义了如何看待软件系统 视图 View UML定义了如何从某个角度描绘软件 图 Diagram 21 RUP4 1视图 设计视图 实现视图 用例视图 进程视图 部署视图 系统综合者 性能

6、 可扩展性 吞吐量 系统工程 系统拓扑结构 发布和安装 通讯 最终用户 功能性 词汇量 程序员 软件管理 RUPViews 分析员 测试员 动作 22 RUP4 1视图 用例图 UseCaseView 由专门描述可被最终用户 分析人员和测试人员看到的系统行为的用况组成 用例视图实际上没有描述软件系统的组织 而是描述了形成系统体系结构的动力 23 RUP4 1视图 设计视图 DesignView 又称逻辑视图 LogicView 包含了类 接口和协作 它们形成了问题及对问题解决方案的术语词汇 这种视图主要支持系统的功能需求 即系统提供给最终用户的服务 24 RUP4 1视图 实现视图 Imple

7、mentationView 包含了用于装配与发布物理系统的构件和文件 这种视图主要对系统发布的配置管理 它由一些独立的构件和文件组成 这些构件和文件可以用各种方法装配 以产生运行系统 25 RUP4 1视图 部署视图 DeploymentView 包含了形成系统硬件拓扑结构的节点 系统在器上运行 这种视图主要描述对组成物理系统部件分布 交付和安装 26 RUP4 1视图 进程视图 ProcessView 包含了形成系统并发与同步机制的线程和进程 该图主要针对性能 可伸缩性和系统的吞吐量 27 RUP视图的实现方式 Deployment Process Design UseCase Implem

8、entation RUPViews UseCaseDiagramSequenceDiagram ClassDiagramCompositeStructureDiagram DeploymentDiagram SequenceDiagramActivityDiagram ClassDiagramObjectDiagramSequenceDiagramActivityDiagramStateDiagramArtifactDiagram UMLDiagrams 28 UML图实例 类图 ClassDiagram 29 UML图实例 用例图 UseCaseDiagram 30 UML图实例 序列图 S

9、equenceDiagram 31 UML图实例 协作图 CollaborationDiagram 32 UML图实例 构件图 ComponentDiagram 33 基于OO的软件体系结构描述方法 OO描述方法的优点 采用面向对象方法 更能反映软件体系结构的本质特征 提供了多个视图直观形象地反映体系结构元素所具有的功能 特征 通过类图 包图等反映体系结构的静态特征 并通过协作图 序列图 部署图等反映体系结构的动态特征 34 基于OO的软件体系结构描述方法 OO描述方法的缺点 缺少形式化的描述方法 造成设计人员由于对软件认识的角度 方法不同 生成的体系结构描述不尽相同 理解上存在的二义性 35

10、 模块接口语言MIL MIL Module InterfaceLanguage 是将一种或多种传统程序设计语言模块连接起来描述软件的体系结构的方法 特点语义比较丰富 但局限在实现级别 层次较低语义精确 有编译器作保证没有或极少有形式化基础实例MicrosoftCOMIDLOMGCORBAIDL 36 模块接口语言MIL MIL的优点 具有严格的语义基础 能够支持对较大的软件单元进行诸如 定义 使用 Definition Use 接口定义 InterfaceDefinition 和导入 导出 Import Export 等操作 一般来讲 MIL与实际的实现语言无关 只关注构件的对外表现协议以及构

11、件之间的通讯关系 37 模块接口语言MIL MIL的缺点这些语言处理和描述的软件设计开发层次过于依赖程序设计语言 限制了它们处理和描述比程序设计语言元素更为抽象的高层次软件构架元素的能力 38 内容概要 形式化描述简介软件体系结构的描述软件体系结构形式化描述实例 WRIGHTWRIGHT应用范例 39 我们在哪里 40 软件体系结构的形式化描述 为什么需要形式化描述需要严格 精确无歧异的描述 以便在系统众多的涉众中进行交流需要演算的能力 使得在判断系统质量的时候可以由计算得出 而不是仅仅凭借经验推测需要进行体系结构分析自动化 41 软件体系结构的形式化描述 软件体系机构形式化描述风格风格的多样

12、性问题风格的通用性问题风格的专用性问题 42 何谓形式化方法 形式化方法 借助抽象的方法将软件系统转化为数学模型如何抽象取决于关注点 43 形式化方法过程 软件系统 体系结构形式化模型1 体系结构形式化模型2 44 软件体系结构形式化基础 一阶谓词逻辑 FirstOrderPredicateLogic 集合论属性文法 AttributeGrammar 进程代数 ProcessAlgebra 通讯顺序进程 CSP CommunicatingSequentialProcesses 演算 Calculus Petri网状态机 StateMachine 45 形式化方法的进化 ADL 纯形式化方法的不

13、足形式化方法不能直接支持软件的各种概念 因此难以在实践中应用体系结构描述语言ADL ArchitectureDescriptionLanguage 应用通用的形式化方法对体系结构和风格进行建模和分析 在体系结构的抽象级上提供一个精确的语义 提供了强有力的分析能力 抽象和与实现的细节无关性 为体系结构元素定义了一系列符号 可以应用于实际的复杂系统的描述 46 ADL应当有什么功能 定义和描述结构概念 Capture 描述一个系统是如何被构件建立起来的 Construction 描述如何通过现有的构件生成新的系统 Composition 指导从多个不同的设计和实现中挑选最优方案 Selection

14、 检验一个设计是否能够满足需求 Verification 检测一个需求对系统的隐含影响 Analysis 根据需求自动化构建系统 Automation 47 ADL分类 根据结构分类隐式配置语言 ImplicitConfigurationLanguages 嵌入式配置语言 InlineConfigurationLanguages 显式配置语言 ExplicitConfigurationLanguages 前两者不能被认为是真正意义上的ADL 48 ADL分类 续 根据研究范围分类研究体系结构配置结构的描述语言如Darwin CHAM ChemicalAbstractMachine 研究体系结构

15、实例的描述语言如Rapide UniCon研究体系结构风格的描述语言如WRIGHT Aesop根据与实现细节的关系的描述语言实现无关语言 ImplementationIndependentLanguages 实现相关语言 ImplementationConstrainingLanguages 49 几种ADL简介 50 几种ADL简介 续 Darwin采用 演算来分析 描述带有演化通信结构的并发系统 在 演算中 一个系统被表述成一组具有独立功能的进程集 集合中的每个进程可以与其它进程建立连接 每个连接都有一个连接名 Darwin采用 演算对系统行为进行建模 利用其强类型系统进行静态检查 51

16、几种ADL简介 续 XYZ ADL针对国内唐稚松院士提出基于时序逻辑的XYZ语言进行扩充 用来描述验证具有实时性 可靠性要求的软件体系结构 52 几种ADL简介 续 DSADL采用属性文法 AG 来形式化描述软件体系结构 传统的属性文法是在一上下文无关文法 ContextFreeGrammar CFG G VN VT P Z 上附加上下文有关的属性和规则 其中 VN是非终结符号集 VT是终结符号集 P是产生式集 Z是开始符号 假设G是规范CFG P中的产生式为p Xp 0 Xp 1 Xp np np 1 表示的右部所含符号的长度 Xp 0 VN Xp i V V VN VT 1 i np DSADL针对分布式软件的特征引入了并行描述机制 特殊的终结符号 条件产生式 53 几种ADL简介 续 OOADL采用Z语言形式化描述软件体系结构 其中Z语言是基于一阶逻辑 和集合论 等 的一种数学语言 OOADL以OO范例作为核心 增加了a kind of a part of 和 an instance of 等关键字来表示OO范例中的概括 聚集和实例化关系 54 几种ADL简介 续 WRIGHT采

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号