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)

参考资料:

相关推荐
这个DBA有点耶2 小时前
一张5000万行的表,加索引从45秒到0.02秒——索引设计你真的会吗
程序员·代码规范
Dabei4 小时前
Android 副屏(Virtual Display)创建与悬浮窗画中画显示实战
前端·架构
程序员老邢4 小时前
【产品底稿 12】工程架构最终定型:完整模块拆分、分包规范、层级依赖与开发规约全清单
微服务·架构·springboot·多模块·技术债务
万事大吉CC5 小时前
【1】Django 基础:MTV 架构与核心组件
数据库·架构·django
Reart5 小时前
从0解构tinyWeb项目--(Day:10)
前端·后端·架构
Java后端的Ai之路5 小时前
大模型数据飞轮核心技术一篇讲透:原理、架构、企业级案例与2026最全实践指南
人工智能·python·架构·数据飞轮
SamDeepThinking5 小时前
程序员如何接受工作内容毫无意义?
java·后端·程序员
测试员周周5 小时前
【AI测试功能3】AI功能测试的三层架构:单元测试 → 集成测试 → E2E测试——AI系统测试金字塔实战指南
开发语言·人工智能·python·功能测试·架构·单元测试·集成测试
AI绘画哇哒哒6 小时前
RAG 系统中文档切分策略:如何选择合适的 chunk size?| 收藏这份实用指南,小白也能轻松上手大模型学习
人工智能·学习·ai·程序员·大模型·产品经理·转行
python零基础入门小白6 小时前
从0到1:手把手教你用Coze打造AI Agent,小白也能转行AI!
人工智能·学习·程序员·大模型·agent·产品经理·ai大模型