您的位置:首页 > 其它

系统体系结构-概念和框架

2008-06-29 23:26 531 查看
1 系统体系结构的概念
任何复杂的系统都需要一个体系结构来提供其演化的一个战略性环境描述。体系结构提供了对组成系统的组件或构造块的描述以及这些组件间复杂的内部关系。

虽然体系结构对系统设计至关重要,但过去人们对于体系结构的理解和使用却是非常不规范的,往往是隐含的、粗糙的、片面的。直到二十世纪九十年代,人们才开始较系统地研究软件系统的体系结构问题。目前主要的研究领域有体系结构框架、技术参考模型、体系结构描述语言、体系结构的形式基础、体系结构分析技术、体系结构开发模型与方法、体系结构恢复与重用、体系结构设计工具与环境、领域体系结构等。

国外一贯重视复杂系统的体系结构的研究,民间、政府和军队都研究和制定了适合自己的体系结构框架,并以此为指导文件,应用到众多系统的体系结构设计中,取得了很好的效果。国外典型的体系结构框架有:Zachman、TOGAF、FEAF、TEAF和DoDAF等。每种框架都是针对某专业领域制定的,一般适合于应用在特定的领域。

因为体系结构(Architecture)这个词与具体的企业、系统和软件相关,所以没一个有对体系结构的精确定义或描述。下表是几个主要组织对系统体系结构的定义。

表1 主要的对系统体系结构定义
来源
定义
ANSI/IEEE 1471-2000
一个系统的基础,用来将它的构成要素、要素之间的关系、要素与环境的关系,组成一体。也是决定系统设计及发展演进的原则。
美国卡内基美隆大学(CMU)软件工程学会(SEI)
代表一个系统的功能性与软硬件要素、软件体系结构与硬件体系结构的对应,以及人们与各要素之间的互动关系。
OPEN Process Framework Repository Organization

是最重要、普遍性、高等级的战略性发明及决策,以及它们与整体结构(如:必备元素和关系)的相关原理、特性和行为。
The Open Group Architecture Framework (TOGAF)

一个系统的规则性描述,或是系统在组件级的详细计划,用于系统实现的指导。包含结构组成、彼此之间的关系,以及指导它们设计和发展的原则和方向。
总结IEEE(ANSI/IEEE 1471-2000)、DoD和各种商业的和技术的权威机构通常认同的观点,我们认为系统体系结构是对重要事物(系统或企业)及其组成部分的结构,以及各组成部分如何协调一致地工作来达成目标的描述。
体系结构框架(Architecture Framework)用于规定具体体系结构的定义及其文档所表达的意义。体系结构框架不需要包罗万象,通常只是针对特定的领域,可能更注重战略方面的问题,并为体系结构的发展演变提供指导。

框架决定了不同的体系结构,例如:企业体系结构涉及组织为达成其使命所规定的目的和目标的工作过程和完成工作过程所需要的技术或IT基础架构;系统体系结构涉及需求和系统结构,包括软件和硬件,使得系统的设计概念可以被有效地表达和交流;软件体系结构涉及需求、固定的系统硬件和构建软件的基础结构以证明软件的有效性。另外还有很多其它类型的体系结构,如流程和业务体系结构等。所有的体系结构类型都有它们共同的方面,它们都是表达结构的模型,用于实现一些目的和需求。
可以认为,“体系结构”指系统的组成结构及其相互关系,是指导系统设计和发展的原则。“体系结构框架”是用于规范体系结构设计的指南。
综合各种不同的定义,归纳出系统体系结构的主要概念:
1) 系统体系结构是一个综合模型
系统体系结构是由许多结构要素及各种视图(或观点)(View)所组成的,如下图,而各种视图主要是基于各组成要素之间的联系与互操作而形成的。所以,系统体系结构是一个综合各种观点的模型,用来完整描述整个系统。



图1 系统体系结构模型
2) 系统体系结构是一个系统建模的方法
在系统体系结构的各种视图中,以组织视图与行为视图最为突出和重要。所以,要完成各种视图的综合,必须先完成组织与行为视图的统一。基本上,通过组织视图与行为视图的合一过程,我们就可以构建出一个可以完整描述的系统。所以,系统体系结构可以作为构建系统模型的一种方法。

一般来说,系统或软件体系结构都需要用相应的体系结构描述语言(Architecture Description Language)来描述,其目的在于为体系结构进行描述和呈现,为体系结构中的相关人员,如:管理人员、系统开发人员和用户等,提供可以进行沟通的语言。目前已有多种体系结构描述语言,如卡内基梅隆大学的ACME和Wright,斯坦福大学的Rapide等。

2 典型的系统体系结构框架

典型的体系结构框架有:Zachman、TOGAF、FEAF、TEAF和DoDAF等。每种框架都是针对某专业领域制定的,一般适合于应用在特定的领域。
1) DoDAF
美国的国防部体系结构框架(DoDAF)产生的背景是美军为解决多国部队联合作战带来的系统互通性问题而制定的一套标准体系结构方法。国防部体系结构框架的目的也是为系统的体系结构描述提供一套规则和指南,确保在国防部范围内的一致理解、比较和集成。为此它使用了作战、系统和技术标准三个视图,每一个视图又细分为几个到十几个产品,从不同的视点对一个系统的体系结构描述方法进行了规定。三视图是DoDAF的代表图形,如下图所示:



图2 国防部体系结构框架三视图
因为是为国防部制定的框架,所以DoDAF的军事色彩很浓,一切都是围绕军事活动展开的。

作战视图:基于作战需求,并根据新的技术能力,对预期的军事作战中的信息传输要求进行分析,针对不同的军事行动,从信息路径、用户数量、通信强度、传输的信息类型等方面对它们进行评估,明确对系统的功能需求和性能需求,也对系统视图提出标准化要求。

系统视图:根据作战视图提出的能力要求和技术标准视图提供的阶段性技术指南,明确能够满足作战需求的系统的组成、功能和性能参数,为作战视图提供服务支持,并为技术标准视图提供新技术嵌入的需求。

技术视图:根据作战视图提出的标准化要求,为系统视图提供规范和标准的支持。

2) RUP软件系统体系结构
在RUP(Rational统一过程,Rational Unified Process)中,软件系统的体系结构是指系统重要构件的组织或结构,这些重要构件通过接口与不断减小的构件与接口所组成的构件进行交互。

RUP以多种构架视图来表示软件体系结构。每种构架视图针对于开发流程中的涉众(例如最终用户、设计人员、管理人员、系统工程师、维护人员等)所关注的特定方面。构架视图显示了软件构架如何分解为构件,以及构件如何由连接器连接来产生有用的形式,由此记录主要的结构设计决策。这些设计决策必须基于需求以及功能、补充和其他方面的约束。而这些决策又会在较低层次上为需求和将来的设计决策施加进一步的约束。
RUP的体系结构由许多不同的构架视图来表示,该视图集称为“4+1视图模型”,由Kruchten 在1995 年提出,如下图。



图3 RUP软件架构 "4+1" 视图模型
如图可见,它包括:

用例视图:包括用例和场景,这些用例和场景包括在构架方面具有重要意义的行为、类或技术风险。它是用例模型的子集。

逻辑视图:包括最重要的设计类、从这些设计类到包和子系统的组织形式,以及从这些包和子系统到层的组织形式。 它还包括一些用例实现。它是设计模型的子集。

实施视图:包括实施模型及其从模块到包和层的组织形式的概览。 同时还描述了将逻辑视图中的包和类向实施视图中的包和模块分配的情况。它是实施模型的子集。

进程视图:包括所涉及任务(进程和线程)的描述,它们的交互和配置,以及将设计对象和类向任务的分配情况。只有在系统具有很高程度的并行时,才需要该视图。在 Rational Unified Process 中,它是设计模型的子集。

配置视图:包括对最典型的平台配置的各种物理节点的描述以及将任务(来自进程视图)向物理节点分配的情况。只有在分布式系统中才需要该视图。它是配置模型的一个子集。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: