西电软件体系结构笔记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
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
软件体系结构设计文档软件项目中非常重要的一部分,它描述了软件系统的整体结构和各个组件之间的关系。下面我将以300字回答这一问题。 在软件体系结构设计文档中,首先需要明确软件系统的功能需求和非功能需求。功能需求包括系统所要实现的具体功能,而非功能需求则包括性能、可靠性、安全性等方面的要求。 接下来,需要确定软件系统的整体结构。常用的软件体系结构包括三层架构、MVC架构等。选择合适的体系结构应根据需求和开发团队的能力来进行决策。 确定了整体结构后,就需要将系统划分为各个子系统或块。每个子系统或块应具备独立的功能,并且负责特定的任务。 在子系统或块的设计中,需要考虑块之间的接口和交互方式。块之间的接口应清晰明确,且易于理解和使用。此外,还需要考虑块的复用性和可扩展性,以便将来进行系统的功能扩展或更新时能够方便地进行修改。 另外,还需根据需求和系统的架构选择合适的设计式。设计式可以提供指导性的解决方案和设计原则,以保证软件设计的灵活性、可维护性和可扩展性。 最后,软件体系结构设计文档还应包括系统的性能评估和安全设计。性能评估可以通过型和仿真来进行,以确保系统在运行过程中能够满足性能需求。安全设计则需要考虑系统的安全威胁和风险,并采取相应的措施来保护系统的安全性。 总而言之,软件体系结构设计文档软件项目中至关重要的一部分,通过明确需求、选择适当的架构和式、进行块划分和设计,以及考虑性能和安全等方面的需求,可以帮助开发团队确立一个良好的设计基础,从而保证软件系统的质量和稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Blanche117

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

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

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

打赏作者

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

抵扣说明:

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

余额充值