4+1视景模型
外观
4+1视景模型(4+1 view model)也称为4+1架构视图,是“以使用多个、并发的视景为基础,描述软件密集系统的架构”的视景模型[1]。这些视景是用各利益相关者的观点来描述系统,包括有用最终用户、开发、系统工程师以及项目经理。模型的四个视景是逻辑、开发、过程以及实体视景。此外,也可以用用例或情景(scenarios)来描述架构(+1),因此可以称为4+1视景[1]:
- 逻辑视景(Logical view):逻辑视景和提供给最终用户的机能有关。会用统一建模语言(UML)来表现逻辑视景,包括有类别图、状态图等[2]。
- 过程视景(Process view):过程视景处理系统的动态层面,说明系统的过程以及通讯的方式,着重在系统运行时的时间特性。过程视景描述并发性、分散、集成者、性能以及可扩缩性(scalability)等。表示过程视景的UML有时序图、通信图、活动图[3][2]。
- 开发视景(Development view):开发视景描述从程序员的观点所看到的系统,着重软件的管理。此视景也称为实现视景(implementation view),会用到UML中的组件图来说明系统组件。包图也可以用来说明开发视景[2]
- 实体视景(Physical view):实体视景以系统工程师的观点来说明系统,这和软件组件在物理层上的拓扑有关,也和各组件之间的实体连接有关。此视景也称为是布署视景(deployment view)UML图中的部署图可以说明实体视景[2]。
- 情景(scenarios):这种说明架构的方式是透过小型的用例或情景来进行,这是第五个观点。情景会叙述各对象、各过程之间交互的结果。也可以用来识别架构元素,也可叙述并且确认架构设计。这也是架构原形测试的起点。此视景也称为是用例视景(use case view)。
4+1视景模型是通用的,没有限制标示方式、工具或是设计方法。摘录Kruchten的文字如下
4+1视景模型是通用,也可以使用其他的标示方式或工具。也可以使用其他的设计方式,特别是在逻辑以及过程的拆解上。不过我们会指出我们曾经成功使用的方法。
——Architectural Blueprints—The "4+1" View Model of Software Architecture[1]
相关条目
[编辑]参考资料
[编辑]- ^ 1.0 1.1 1.2 Kruchten, Philippe (1995, November). Architectural Blueprints — The “4+1” View Model of Software Architecture. (页面存档备份,存于互联网档案馆) IEEE Software 12 (6), pp. 42-50.
- ^ 2.0 2.1 2.2 2.3 Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5 (页面存档备份,存于互联网档案馆)
- ^ Hui, LM; Leung, CW; Fan, CK; Wong, TN. Modelling agent-based systems with UML. Proceedings of the Fifth Asia Pacific Industrial Engineering and Management Systems Conference. 2004.