西电软件体系结构笔记CH3:软件体系结构建模和文档化

CH3:软件体系结构建模和文档化

1.UML

1.1 Use Case

用例图:理解系统功能需求的宝贵工具

用于显示若干的角色与系统提供用例之间的关系,用例是系统的功能

是系统的外部视图,没有与系统内部的类的交互

image-20220615143233230

1.2 Class Diagram

类图:表示类class和类class之间的联系,对系统静态结构的描述

image-20220615143618256

1.3 Object Diagram

对象图:是系统在某一个时间点的对象的快照,表示的是实例instance而不是类,所以也叫Instance diagram

对象图展示对象之间的连接关系,显示连接在一起的对象的示例

image-20220615143839305

1.4 Package Diagram

包图表示的是更高层次的单元:

使用包图可以将相关元素纳入一个系统

image-20220615143948091

1.5 Sequence Diagram

多个对象之间随着时间推移的交互关系

image-20220615144346129

序列图便于展示对象之间的协作。

  • 如果想要看一个use case中的多个对象的行为,那么使用序列图
  • 如果想看一个对象在多个use case中的行为,那么使用状态图
  • 如果想看多个对象在多个线程中的行为,那么使用活动图

1.6 Communication Diagram

协作图(通信图):描述对象之间的动态协作

image-20220615144755184

协作图(通信图)是一种交互图,强调的是发送和接收消息的对象之间的组织结构。一 个协作图显示了一系列的对象及对象之间的联系以及对象间发送和接收的消息。

  • 强调时间:序列图
  • 强调上下级关系:协作图

交互图 { 协作图、通信图:强调上下级关系 序列图:强调时间推移 交互图\begin{cases}协作图、通信图:强调上下级关系\\序列图:强调时间推移\end{cases} 交互图{协作图、通信图:强调上下级关系序列图:强调时间推移

1.7 State Diagram

描述类的对象所有可能的状态以及事件发生时的状态的转移条件。通常状态图是对类图的补充

image-20220615145303126

1.8 Activity Diagram

满足用例要求所要进行的活动以及活动间的约束关系

重点:支持并行行为parallel

image-20220615151148930

1.9 Component Diagram

组件图:描述代码构件物理结构和各个构件之间的依赖关系

image-20220615151414060

1.10 Deployment Diagram

软硬件的物理结构,硬件节点,软件视图。

image-20220615151707964

1.11 Composite Structures

复合结构:分层地将类分解为内部结构

image-20220615152418273

1.12 Interaction Diagram

交互概述图:活动图和序列图的结合

image-20220615152755144

1.13 Timing Diagram

时序图:交互图的另一种形式,一般针对一个或者多个对象描述。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TqnyPtI7-1660183318746)(https://cdn.jsdelivr.net/gh/Holmes233666/blogImage@main/img/image-20220615153103421.png)]

2. “4+1”视图

逻辑视图:支持行为要求。关键抽象,对象或者对象类

  • 类图
  • 对象图
  • 状态图
  • 协作图

过程视图:解决并发和分发

  • 活动图

开发视图:组织软件

  • 包图
  • 组件图

物理视图:其他元素映射到处理和通信结点

  • 部署图

用例视图(场景):其他视图映射到重点的用例,帮助用户理解系统功能

image-20220615160837510
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Blanche117

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值