模型、视点、视图的区别和联系
1、引言
我们在学习系统工程、MBSE、SysML、DoDAF等知识的时候,经常会遇到模型(Model)、视点(Viewpoint)和视图(View)这三个词,那这三个词到底是指什么,有什么区别,它们之间又有什么联系呢?今天我们就一起来梳理一下。
2、什么是模型
数学辞海第5卷第109页有关于模型的定义:模型是现实客观事物的一种表示和体现,它可以是文字、图表、公式,也可以是计算机程序或其他实体模型。
也就是说,模型是对客观现实的事物的某些特征与内在联系,所作的一种模拟或抽象。为了研究一个过程或事物,我们可以通过在某些特征(形状或结构等)方面与它相似的“模型”来描述或表示。
模型可以有各种不同的形式,不存在统一的分类原则。按照模型的表现形式可以分为物理模型(例如建筑模型、教学模型、玩具等)、数学模型(例如公式)、结构模型(例如房屋的结构模型)、以及数字模型等等。
这里需要特别强调的是,数字模型就是通过计算机上运行的程序对现实事物进行表征的模型。我们常说的基于SysML或UML语言构建的系统、软件模型,以及采用DoDAF框架构建的体系结构模型等,都属于数字模型,他们都是以数字化形式对系统的结构和行为进行表征。
下图是各种数字模型示例。
3、什么是视点
当我们针对一个复杂系统构建了对应的系统模型之后,不同的利益相关方可以从不同的角度去关注和使用这个模型的某一方面信息,那这个角度就是所谓的视点。
比如,美国国防部体系结构框架DoDAF 2.0中定义了8个视点,包括全景视点、能力视点、数据与信息视点、作战视点、项目视点、服务视点、标准视点、系统视点。这就意味着架构师在进行体系结构设计的时候,需要从这些角度去分析和构建体系结构,各个利益相关方也可以从这些视点去关注体系结构的不同方面的信息,以便支持决策。另外,对于一个复杂的系统,视点的划分也能够将问题分解为可管理的小块,便于收集和构建体系结构或系统模型。
4、什么是视图
视图是将一组经过选择的模型数据,以更易于理解的、更直观的形式呈现出来。视图可以使各种形式,例如仪表盘、表格、图形等。需要注意的是,视图只是部分模型数据的可视化呈现,类似于一张照片只能呈现物体的某个侧面,并不能代表物体的全部信息。
比如,SysML提供的9种图就等同于视图,它们能够以图形化的方式呈现系统模型不同方面的信息,便于人们去查看、理解和使用系统模型。从另一个角度来说的话,视图也提供了一个模板,来辅助设计人员去收集、组织和呈现信息。特别是,在开始构建系统模型时,我们一般都会借助建模工具里的视图来逐个定义不同类型的模型数据,直到所有的模型数据定义完毕,就形成了一个完整的系统模型。
5、模型、视点、视图之间的联系
对客观现实的事物进行抽象和刻画所得到的结果,称为模型。我们查看和使用这个模型时选取的角度就是视点。将部分模型数据以可视化、便于理解的形式呈现出来就是视图。
因此,模型是数据基础(看什么),视点是查看模型的角度(从哪看),视图是部分模型数据的可视化呈现(怎么看)。