4+1 视图模型(4+1 view model)

在平时的开发中,设计软件框架时,4+1视图模型可以很好的结合起来,他的作用就是在不同的阶段,面对不同的视角去讲解要讲解的东西,用图去展示、去说明,它不是一个架构师必备的技能,但一个好的架构师一定懂得使用它来展示自己的设计成果。

4+1视图模型 (4+1 view model)也称为4+1架构视图,是"以使用多个、并发的视景为基础,描述软件密集系统的架构"的视图模型这些视景是用各利益相关者的观点来描述系统,包括有用最终用户、开发、系统工程师以及项目经理。模型的四个视景是逻辑、开发、过程以及实体视景。此外,也可以用用例或情景(scenarios)来描述架构(+1),因此可以称为4+1视图

一、逻辑试图: Logical View

逻辑试图和提供给终端使用者的机能有关 (机能:[enginery]∶泛指:在物质(物体)的系统中,其某一部分应有的作用和能力)会用统一建模语言UML来表现逻辑视景,包括有类图状态图

那换句话讲,逻辑试图就是呈现给用户的部分或者系统的作用或者能力的展现

1.1 类图

是软件工程的统一建模语言UML一种静态结构图,该图描述了系统的类集合,类的属性和类之间的关系。

这种关系我们可以使用在任何行业,只要表达的事物之间存在关系;在软件开发中,类图是面向对象的建模,一般用于概念建模的系统分类的应用程序,并可以将模型建模转换成代码,是关系、逻辑的最佳表述方式之一

过程视图(Process view)

过程视景处理系统的动态层面,说明系统的过程以及通信的方式,着重在系统运行时的时间特性。过程视景描述并发性、分散、集成者、性能以及可扩缩性(scalability)等。表示过程视景的UML有时序图、活动图、通信图

开发视图:(Development view)

描述从程序员的观点所看到的系统,着重软件的管理。此视图也称为实现视图(implementation view),会用到UML中的组件图来说明系统组件。也可以用来说明开发视图

实体视图(Physical view)

实体视图以系统工程师的观点来说明系统,这和软件组件在物理层上的拓扑有关,也和各组件之间的实体连接有关。此视图也称为是布署视图(deployment view)UML图中的部署图可以说明实体视图

情景(scenarios):

这种说明架构的方式是透过小型的用例或情景来进行,这是第五个观点。情景会叙述各对象、各过程之间交互的结果。也可以用来识别架构元素,也可叙述并且确认架构设计。这也是架构原形测试的起点。此视图也称为是用例视图(use case view)

参考资料:

相关推荐
森焱森21 分钟前
水下航行器外形分类详解
c语言·单片机·算法·架构·无人机
强哥之神6 小时前
英伟达发布 Llama Nemotron Nano 4B:专为边缘 AI 和科研任务优化的高效开源推理模型
人工智能·深度学习·语言模型·架构·llm·transformer·边缘计算
DemonAvenger7 小时前
高性能 TCP 服务器的 Go 语言实现技巧:从原理到实践
网络协议·架构·go
Code季风7 小时前
深入理解微服务中的服务注册与发现(Consul)
java·运维·微服务·zookeeper·架构·go·consul
小马哥编程7 小时前
【iSAQB软件架构】架构决策记录-ADR
数据库·架构·系统架构·设计规范
木鱼时刻7 小时前
容器与 Kubernetes 基本概念与架构
容器·架构·kubernetes
zhuyasen9 小时前
定义即代码!这个框架解决了90%的Go开发者还在低效开发项目的问题
架构·go·gin
LCG元9 小时前
云原生微服务间的异步消息通信:最终一致性与系统容错的架构实战
微服务·云原生·架构
骑着王八撵玉兔10 小时前
【性能优化与架构调优(二)】高性能数据库设计与优化
数据库·性能优化·架构
Jiude11 小时前
MinIO 社区版被故意阉割,Web管理功能全面移除。我来试试国产RustFS
后端·docker·架构