除了大家耳熟能详的4+1视图模型外,还有其他软件体系结构表示方法.Reference Model of Open Distributed Processing(RM-ODP)是ISO的一个标准,从名称就可以知道这个方法是对应于分布式系统的.从事软件开发的朋友都知道开发分布式系统是一个非常复杂和困难的任务,必须从多个方面和视点对系统进行设计.那么RM-ODP的目的就是为软件架构师提供一个参考模型.以应对日益复杂的分布式应用.
其实RM-ODP包括了四部份:
1. 概要(ISO/IEC10746;ITU-TX.901):主要着重解释整体的概念、动机及范围,是介绍使用者如何应用RM-ODP的文件。
2. 基础(ISO/IEC10746-2;ITU-TX.902):提供整个模型的制定及基础,提供模型的相关定义及原则,以及应用方法。
3. 体系架构(ISO/IEC10746-3;ITU-TX.903):描述及定义ODP系统,描述ODP系统必须符合的约束条件,RM-ODP的视点定义及应用等。
4. 体系架构语意(SO/IEC10746-4);ITU-TX.904:主要以特定的描述语言补充第二及三部份的内容。
RM-ODP是基于面向对象技术的,它定义了信息系统体系结构的含义,作为一种使我们了解软件体系结构的方法,它代表了当今成熟的软件体系结构实践.RM-ODP定义了5个基本视点并将他们用于系统建模:
企业视点(Enterprise view point) 分析系统目的、商业需求、策略和系统范围的视点。 RM-ODP处理与企业层面有关的信息,例如组织结构和政策等
信息视点(Information view point) 指信息的结构,当中包括信息的变化、流程、及不同功能上的逻辑分割。
计算视点(Computational view point) 着重于把系统的分解(decomposition)成相对的实体(entities)及接口(interfaces)。
工程视点(Engineering view point) 处理有关分布式系统对象间的交互 (interaction),及描述如何支持有关的互换(interaction)。
技术视点(Technology view point):定义有关系统的软件及硬件组件(components)
这5个视点为单独的信息系统提供了一个综合性的模型
至于这个参考模型的详细信息,有兴趣的朋友可以参考有关的ISO文件或浏览以下网址http://www.rm-odp.net/. 标准文档有200多页,所以就不多说了.
RM-ODP是个ISO标准,和这个组织制定的7层网络参考模型一样,有一些地方过于复杂了,它采用了CORBA的接口定义语言作为特定的计算体系结构的描述语言,对于现在流行的.NET和java分布式处理技术来说其复杂性有可能增加了.而后两者是现在实际上的技术标准,也许RM-ODP又会重走ISO7层模型的覆辙.但是作为一个软件体系结构的参考模型,RM-ODP是可以不依赖于具体技术的.将.net和java的分布式处理技术应用于RM-ODP将是一个有趣的实践.