Presentation is loading. Please wait.

Presentation is loading. Please wait.

第四讲 软件体系结构描述(一) 刘玮 2017/3/20.

Similar presentations


Presentation on theme: "第四讲 软件体系结构描述(一) 刘玮 2017/3/20."— Presentation transcript:

1 第四讲 软件体系结构描述(一) 刘玮 2017/3/20

2 大纲 标准建模语言UML 体系结构和UML 基于UML的B/S构架描述

3 UML 简介 统一建模语言UML(Unified Modeling Language)是一种绘制软件蓝图的标准语言。
它是一种富有表达力的语言,使用图形和文字来传递信息,可以描述开发所需要的各种视图。

4 UML能为我们做什么 UML可以做软件需求分析 UML可以做软件开发设计

5 UML的发展和工具 UML 1.0是在1997年完成 UML 2.0是在2004年完成 UML还在不断的完善和发展中
Rational Rose MagicDraw PowerDesigner MS Visio ArgoUML StarUML

6 UML概要 模型元素 关系 扩展的机制 图表

7 模型元素 结构元素 类,接口,协作,用例,活动类,构件 行为元素 交互, 状态机 组元素 包, 子系统 其它元素 符号

8 关系 依赖 关联 一般化 实现

9 扩展机制(1) 构造型(套用类型) 构造型用双尖括号内的文字字符串表示 构造型的信息内容和形式与已存在的基本模型元素相同,但是含义和使用不同
如《元类》 例如,商业建模领域的建模者希望将商业对象和商业过程作为特殊的建模元素区别开来,这些元素的使用在特定的开发过程中是不同的。

10 扩展机制(2) 标记值(特征值) 约束(对象约束语言 , OCL) 标记值是一个标记字符串和一个值字符串—存储着有关元素的一些信息
标记是建模者想要记录的一些特性的名字,而值是给定元素的特性的值。 约束(对象约束语言 , OCL) 约束是用文字表达式表示的语义限制 约束可以表示不能用 UML 表示法来表示的约束和关系 约束用大括弧内的字符串表达式表示。 约束可以附加在表元素、依赖关系,或注释上 O(1)是常数时间

11 模型,视图,和图表 模型是对 一个系统 从详细观 察的角 度的 描述 State Diagrams 类图 Use Case Diagrams
用例图 State Diagrams 对象图 Use Case Diagrams 时序图 Scenario Diagrams 协作图 State Diagrams 组件图 模型 Scenario Diagrams 状态图 Component Diagrams 分布图 活动图

12 图表 图表是模型的视图 在UML中,有九种标准图表 提供了系统的局部详细描述; 和别的视图保持语义一致;
静态视图: 用例图, 类图,对象图,构件图, 部署图 动态视图: 时序图,协作图,状态图,活动图

13 用例图 捕获系统中用户能够看见的功能 在开发过程的早期创建 目的: 由分析人和领域专家开发 详细说明系统的表达含义; 捕获系统的需求;
验证系统的体系结构; 驱动实现和生成测试用例。 由分析人和领域专家开发

14 用例图实例(1)

15 用例图实例(2) 超市信息管理系统总体用例图

16 类图 捕获系统的词汇表 类图表示不同的实体(人、事物和数据)之间的关系;换句话说,它显示了系统的静态结构。 目的
系统中的名字和模型概念 详细描述协作关系 由分析人员、设计人员和代码实现人员开发

17 类图实例

18 对象图 捕获实例和连接 在分析和设计阶段创建 目的 举例说明数据/对象结构 详细描述瞬态图 由分析人员、设计人员和代码实现人员开发

19 对象图

20 包图 包图能将复杂系统拆分成多个简单的系统。 依赖 Name

21 包图实例(1) A D E F G C B

22 包图实例(2) b a b.a a.A b.b.D b.b.E b.a.F b.a.G a.C a.B b.b

23 构件图 一般来说,软件组件就是一个实际文件,可以是源代码文件、二进制代码文件和可执行文件等 可以用来显示编译、链接或执行时构件之间的依赖关系
作为体系结构规范的一部分实现 目的 组织源代码 构造一个可执行的发布版本 指定物理数据库 由集成人员和程序人员创建

24 构件图实例(1)

25 构件图实例(2) 动态链接库

26 部署图 捕获系统硬件的拓扑结构 配置图显示系统运行时刻的结构,显示系统不同的组件在何处物理地运行,以及它们将如何彼此通信
作为系统结构规范的一部分被创建 目的 描述组件的分布 标识系统性能瓶颈 由集成人员、网络工程师和系统工程师开发

27 部署图 老师在线答疑系统部署图

28 顺序图 捕获系统动态行为(面向时间的) 用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。
顺序图存在两个轴:水平轴表示不同的对象,垂直轴表示时间。 顺序图中的对象用一个带有垂直虚线的矩形框表示,并标有对象名和类名。垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。对象间的通信通过在对象的生命线间画消息来表示。 目的 模型流程的控制 举例说明典型的脚本

29 顺序图 学生登陆系统顺序图

30 协作图 捕获系统动态行为(面向关联的) 协作图用于描述相互合作的对象间的交互关系和链接关系。
虽然顺序图和协作图都用来描述对象间的交互关系,但侧重点不一样。顺序图着重体现交互的时间顺序,协作则着重体现交互对象间的静态链接关系。 目的 模型流程控制 举例说明对象结构和控制的协调

31 协作图实例 学生登陆协作图

32 协作图实例(2)

33 状态图 捕获系统动态行为(面向事件的) 状态图表示某个实体所具有的不同状态和状态转移时的触发条件。 描述一个实体基于事件反应的动态行为 目的
对象生命周期模型 为起反作用的对象(用户接口、设备等)建模

34 状态图 复合状态

35 活动图 捕获动态行为(面向活动的) 是任何系统活动以及活动之间数据流或判断的可视表示 用来描述工作的流程,对并行的工作流程能很好的支持 目的
给商业工作流建模 给操作建模

36 活动图实例(1) 老师登陆系统

37 活动图实例(2)

38 UML中几个图的关系 活动图 状态图 用例图 类图(简单) 类图(复杂) 需求 顺序图 协作图

39 大纲 标准建模语言UML 体系结构和UML 基于UML的B/S构架描述

40 体系结构和UML 设计视图 实现视图 用例视图 过程视图 分布视图 类, 接口, 协作 组件 活动类 节点 用例
用例视图是其他视图的核心和基础,其他视图依靠用例视图中所描述的内容来构造; 活动类 节点 过程视图 分布视图

41 体系结构设计流程 选择一个脚本 标识主要的类和它们的责任 给类分配行为 子系统结构,层,定义接口 定义分配和并发性 实现体系结构原型
从用例开始测试 评估体系结构 用例图 设计视图 过程视图 实现视图 分布视图

42 逻辑应用体系结构 图形 图形 图形 用户 用户 用户 界面 界面 界面 商业 Relational 商业 对象 Database 对象 模型
关系 数据库 图形 用户 界面 商业 对象 模型 图形 用户 界面 商业 对象 模型 关系 数据库

43 大纲 标准建模语言UML 体系结构和UML 基于UML的B/S构架描述

44 基于UML的B/S构架描述 B/S模式回顾 UML对部件交互模式进行静态描述 UML对部件交互模式进行动态描述

45 B/S结构 B/S结构(Browser/Server结构)结构即浏览器和服务器结构。 特点
 特点 用户可以通过WWW例览器去访问Internet上的文本、数据、图像、动画、视频点播和声音信息; 这些信息都是由许许多多的Web服务器产生的; 而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中。

46 部署图在B/S结构中的作用 它确定了一种有效的应用部署的规划组织方式 还可以作为一个模式在多个类似B/ S 系统上应用
HTTP和JDBC是通讯类型

47 B/S结构的部件和连接器—类图(1) 部件 连接器 客户浏览器部件 服务器部件 交互 应用服务器部件 数据库服务器部件
网络与浏览器连接器(服务器连接器)间的一对多关系 服务器与服务器连接器一对一关系 浏览器与浏览器连接器一对一关系 什么是连接器???

48 客户连接器/服务器连接器—类图(2) 客户连接器类图 服务器连接器类图

49 B/S结构的部件之间动态交互—协作图 浏览器/服务器的协作图

50 浏览器/服务器单线程的同步信息通信--协作图
《连接器》 单线程服务器连接器

51 本讲任务 设计“武汉旅游出行系统平台”的体系结构,并用UML进行描述。


Download ppt "第四讲 软件体系结构描述(一) 刘玮 2017/3/20."

Similar presentations


Ads by Google