架构合同是在开发团体和赞助者之间关于架构的交付物、质量以及适用目标的联合协议,而且经过有效的架构治理将会促使这些协议的成功施行。经过对合同的管理施行一个治理方法,以下几点将会获得保障:面试
在企业架构开发方法的各阶段中常常会见到架构合同的身影,例如架构愿景阶段中的架构工做说明书等。但不管是何种架构协议,咱们都要牢记企业架构开发的终极目标是建立一个动态的企业架构,亦即该架构能够适应外界技术和业务环境的变化而灵活地演进,而架构合同对于促成这一动态企业架构的实现,以及针对此实现的治理是很是重要的。编程
架构工做说明书产生于架构开发方法的架构愿景阶段,它是架构组织和企业架构赞助者之间的所签定的协议,其具体内容请参见以前架构内容框架中的相关内容。安全
此合同是一份为设计和开发企业架构而签署的意向说明,亦或是其中一个重要部分。此合同所涉及到的团队组织包括系统集成者、应用提供者和服务提供者。随着合做分工的逐渐细化,针对一个或多个架构领域(业务、数据、应用和技术)的开发已经愈来愈多的被外包出去,而企业架构组织则主要负责在总体上进行监督和协调,而且在有些状况下,这一监督性角色的任务也被外包到企业以外。但不管怎样安排这些外包任务,这些安排都须要在架构合同的治理之下来进行。这些架构合同定义了所开发架构的交付物、质量、适用目标以及架构开发团队之间进行合做的各类流程。一般来说,这些架构的内容包括以下几点:网络
当企业架构被实现以后,在架构功能组织(或整合了架构功能的IT治理组织)和业务用户(他们将会在所设计的架构环境中建立和部署各个应用系统)之间就须要达成一份架构合同(此合同还能够被用来在架构变动阶段中对企业架构变动进行管理),而这份业务用户架构合同(Business Users’ Architecture Contract)的内容一般包括以下几点:架构
在企业架构开发方法过程的实施治理阶段中所产生的各类架构合同文档主要处于架构治理领域之中。在架构治理的背景之下,这些架构合同常常被用来做为驱动架构变动的一种手段。为了确保这些架构合同的效能,以下几个治理框架的方面须要被引入到实施治理阶段之中:app
因为各个组织所处的环境并非一成不变的,于是可以对这些变化进行快速反应并与之相适应的组织将会比那些缺少应变能力的组织得到更大的优点。随着IT技术的日益发展以及与组织业务联系的日趋紧密,每一个组织都知道为了管理全部可能出现的变化须要不断地改其与IT相关的开发流程,但对于不少组织来讲,在哪些方面进行改进以及如何改进的确是个让人头疼的问题。因此在实践过程当中,有的组织要么因为不知如何下手而投入过少,要么进行漫无目标的投入而致使投资回报率太低。那么各个组织如何才能解决这一问题,从而使得其所作的改进努力更加有目的性,并获得足够好的回报呢?其实这一问题的答案就是在组织中创建和运用能力成熟度模型(CMMs:Capability Maturity Models)。经过使用这些模型,组织能够获得以下效益:框架
能力成熟度模型并非专为企业架构而生,其实它最初目标是为了改善软件和系统工程的过程,只是随着企业架构理论的发展以及业界针对这一领域的关注逐渐增强,人们才开始考虑将这一模型应用到企业架构的领域之中,从而为评测和改进企业架构的过程提供导向。在TOGAF 9中并无为企业架构专门设计一套成熟度模型,它只是经过例举两种成熟度模型来介绍当前企业架构是如何与能力成熟度模型相结合的,以供读者借鉴。编程语言
在前面已经提到过,美国政府能够说是施行企业架构的先行者之一,于是全部的美国联邦政府部门都被要求提供成熟度模型以及相应的打分机制来做为他们的IT投资管理和审计需求的一部分。以美国商务部(US Department of Commerce(DoC))为例,他就已经开发出了一套企业架构能力成熟度模型(ACMM:Architecture Capability Maturity Model)来帮助其内部的企业架构成熟度评测。这一成熟度模型在2007年12月时发布了1.2版本。ACMM提供了一套框架,其中包含了一个富有成效的企业架构过程所应具有的各类关键组件,其目标在于经过明确企业架构的薄弱环节并提供一条定义良好的演进改善路线来提高企业架构的成功概率。ACMM包含以下三部份内容:分布式
在上述三个部分的内容中,前两部份描述了架构能力成熟度水平、相应的企业架构元素,以及用在成熟度评测中的每一个成熟度水平的特性;最后一个部分被用来获取用于向商务部首席信息官(CIO)进行汇报的架构能力成熟度水平。ide
ACMM从以下九个方面对企业架构的成熟度水平进行评定:
ACMM将每一个企业架构成熟度评估元素的成熟度水平分为以下五个档次:
截至到目前,成熟度模型已经在不少行业中获得了接受和施行,并且每一个行业几乎都具备符合其自身特色的成熟度模型,可是正是因为这种普遍的接受性致使了成熟度模型过于繁杂。为了管理这一因为过多成熟度模型所带来复杂性,SEI(Software Engineering Institute)开发了一个名为能力成熟度模型集成(CMMI:Capability Maturity Model Integration)的框架。该框架综合了各领域成熟度模型的最佳实践,它使得组织能够:
因为CMMI并非隶属于某个特定行业的综合性成熟度模型,于是在企业架构的成熟度方面也能够对其进行借鉴,而这其中最为重要的就是标准过程改进评估方法(SCAMPI :Standard CMMI Appraisal Method for Process Improvement)。此方法是与CMMI相关连的评估方法,被用来与CMMI参考模型进行比对,从而对目标的优点、弱点进行明确,并经过分数评定的方式进行清晰的表述。
企业架构过程是个很是繁杂的过程,它的顺利进行离不开众多具备不一样角色的人员的通力协做,而如何保证这些相互合做的人员在各自岗位上可以胜任就变成一切活动的根本问题。为了应对这一问题,TOGAF提出了架构技能框架(Architecture Skills Framework),它为进行企业架构建设的组织提供了一份关于企业架构工做中各类角色及其能力的视图,从而为担负企业架构工做任务的团队的创建提供了导则。简单来说,架构技能框架的内容包含以下三个方面:
在实践中,每一个企业对于项目人员的选择应该都有着本身的一套方法和流程,基本上来说,都是经过项目自己的特质来制定所需人员的技能标准,并经过简单的面试来从组织内外的候选者中选择合适之人,但这对于企业架构的建设来说却过于简单了。虽然企业架构的建设从本质上来说也是一个项目,可是因为其自己的复杂度之高、牵涉性之广,若是把它看成一个普通实现项目来对待的话,组织每每会面临以下风险:
为了尽可能避免这些风险,各个组织应该采用更为正式的认证机制来对企业架构工做人员进行定义和选择,而这一机制的目的应该在于以下两点:
TOGAF将一般用来承担企业架构开发工做的架构团队中的角色分为以下几类:
架构技能框架将架构团队所须要技能概括为以下几类:
架构委员会成员 |
架构赞助者 |
架构经理 |
架构师 (技术) |
架构师 (数据) |
架构师 (应用) |
架构师 (业务) |
方案/项目经理 |
IT设计师 |
|
通用技能 |
|||||||||
领导力 (Leadership) |
4 |
4 |
4 |
3 |
3 |
3 |
3 |
4 |
1 |
团队合做 (Teamwork) |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
2 |
人际交往 (Inter-personal) |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
2 |
口才 (Oral Communications) |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
2 |
写做 (Written Communications) |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
3 |
3 |
逻辑分析 (Logical Analysis) |
2 |
2 |
4 |
4 |
4 |
4 |
4 |
3 |
3 |
干系人管理 (Stakeholder Management) |
4 |
3 |
4 |
3 |
3 |
3 |
3 |
4 |
2 |
风险管理 (Risk Management) |
3 |
3 |
4 |
3 |
3 |
3 |
3 |
4 |
1 |
业务技能和方法 |
|||||||||
业务案例 (Business Case) |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
2 |
业务情景 (Business Scenario) |
2 |
3 |
4 |
4 |
4 |
4 |
4 |
3 |
2 |
组织结构 (Organization) |
3 |
3 |
4 |
3 |
3 |
3 |
4 |
3 |
2 |
业务流程 (Business Process) |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
3 |
2 |
战略规划 (Strategic Planning) |
2 |
3 |
3 |
3 |
3 |
3 |
4 |
3 |
1 |
预算管理 (Budget Management) |
3 |
3 |
3 |
3 |
3 |
3 |
3 |
4 |
3 |
战略愿景 (Visioning) |
3 |
3 |
4 |
3 |
3 |
3 |
4 |
3 |
2 |
业务指标 (Business Metrics) |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
4 |
3 |
业务文化 (Business Culture) |
4 |
4 |
4 |
3 |
3 |
3 |
3 |
3 |
1 |
遗留的投资 (Legacy Investments) |
4 |
4 |
3 |
2 |
2 |
2 |
2 |
3 |
2 |
业务功能 (Business Functions) |
3 |
3 |
3 |
3 |
4 |
4 |
4 |
3 |
2 |
企业架构技能 |
|||||||||
业务建模 (Business Modeling) |
2 |
2 |
4 |
3 |
3 |
4 |
4 |
2 |
2 |
业务流程设计 (Business Process Design) |
1 |
1 |
4 |
3 |
3 |
4 |
4 |
2 |
2 |
角色设计 (Role Design) |
2 |
2 |
4 |
3 |
3 |
4 |
4 |
2 |
2 |
组织结构设计 (Organization Design) |
2 |
2 |
4 |
3 |
3 |
4 |
4 |
2 |
2 |
数据设计 (Data Design) |
1 |
1 |
3 |
3 |
4 |
3 |
3 |
2 |
3 |
应用设计 (Application Design) |
1 |
1 |
3 |
3 |
4 |
3 |
3 |
2 |
3 |
系统集成 (Systems Integration) |
1 |
1 |
4 |
4 |
3 |
3 |
3 |
2 |
2 |
IT行业标准 (IT Industry Standards) |
1 |
1 |
4 |
4 |
4 |
4 |
3 |
2 |
3 |
服务设计 (Services Design) |
2 |
2 |
4 |
4 |
3 |
4 |
3 |
2 |
2 |
架构原则设计 (Architecture Principles Design) |
2 |
2 |
4 |
4 |
4 |
4 |
4 |
2 |
2 |
架构视图和视角设计 (Architecture Views & Viewpoints Design) |
2 |
2 |
4 |
4 |
4 |
4 |
4 |
2 |
2 |
构建块设计 (Building Block Design) |
1 |
1 |
4 |
4 |
4 |
4 |
4 |
2 |
3 |
解决方案建模 (Solutions Modeling) |
1 |
1 |
4 |
4 |
4 |
4 |
4 |
2 |
3 |
效益分析 (Benefits Analysis) |
2 |
2 |
4 |
4 |
4 |
4 |
4 |
4 |
2 |
业务交互 (Business Interworking) |
3 |
3 |
4 |
3 |
3 |
4 |
4 |
3 |
1 |
系统行为 (Systems Behavior) |
1 |
1 |
4 |
4 |
4 |
4 |
3 |
3 |
2 |
项目管理 (Project Management) |
1 |
1 |
3 |
3 |
3 |
3 |
3 |
4 |
2 |
方案或项目管理技能 |
|||||||||
方案管理 (Program Management) |
1 |
2 |
3 |
3 |
3 |
3 |
3 |
4 |
2 |
项目管理 (Project Management) |
1 |
2 |
3 |
3 |
3 |
3 |
3 |
4 |
2 |
管理业务变动 (Managing Business Change) |
3 |
3 |
4 |
3 |
3 |
3 |
4 |
4 |
2 |
变动管理 (Change Management) |
3 |
3 |
4 |
3 |
3 |
3 |
4 |
3 |
2 |
价值管理 (Value Management) |
4 |
4 |
4 |
3 |
3 |
3 |
4 |
3 |
2 |
通用IT知识技能 |
|||||||||
IT应用开发方法和工具 (IT Application Development Methodologies & Tools) |
2 |
2 |
3 |
4 |
4 |
4 |
2 |
3 |
3 |
编程语言 (Programming Languages) |
1 |
1 |
3 |
4 |
4 |
4 |
3 |
2 |
3 |
代理应用 (Brokering Applications) |
1 |
1 |
3 |
3 |
4 |
4 |
3 |
2 |
3 |
信息消费应用 (Information Consumer Applications) |
1 |
1 |
3 |
3 |
4 |
4 |
3 |
2 |
3 |
信息提供应用 (Information Provider Applications) |
1 |
1 |
3 |
3 |
4 |
4 |
3 |
2 |
3 |
存储管理 (Storage Management) |
1 |
1 |
3 |
4 |
4 |
2 |
2 |
2 |
3 |
网络 (Networks) |
1 |
1 |
3 |
4 |
3 |
2 |
2 |
2 |
3 |
基于Web的服务 (Web-based Services) |
1 |
1 |
3 |
3 |
4 |
4 |
2 |
2 |
3 |
信息技术基础设施 (IT Infrastructure) |
1 |
1 |
3 |
4 |
3 |
2 |
2 |
2 |
3 |
资产管理 (Asset Management) |
1 |
1 |
4 |
4 |
3 |
3 |
3 |
2 |
3 |
服务等级协议 (Service Level Agreements) |
1 |
1 |
4 |
4 |
3 |
4 |
3 |
2 |
3 |
系统 (Systems) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
3 |
商用现成品 (COTS) |
1 |
1 |
3 |
4 |
3 |
4 |
2 |
2 |
3 |
企业连续体 (Enterprise Continuums) |
1 |
1 |
4 |
4 |
4 |
4 |
4 |
2 |
3 |
迁移规划 (Migration Planning) |
1 |
1 |
4 |
3 |
4 |
3 |
3 |
2 |
3 |
管理工具 (Management Utilities) |
1 |
1 |
3 |
2 |
4 |
4 |
2 |
2 |
3 |
基础设施 (Infrastructure) |
1 |
1 |
3 |
4 |
3 |
4 |
2 |
2 |
3 |
IT技术技能 |
|||||||||
软件工程 (Software Engineering) |
1 |
1 |
3 |
3 |
4 |
4 |
3 |
2 |
3 |
安全 (Security) |
1 |
1 |
3 |
4 |
3 |
4 |
3 |
2 |
3 |
系统和网络管理 (Systems & Network Management) |
1 |
1 |
3 |
4 |
3 |
3 |
3 |
2 |
3 |
事务处理 (Transaction Processing) |
1 |
1 |
3 |
4 |
3 |
4 |
3 |
2 |
3 |
位置和目录 (Location & Directory) |
1 |
1 |
3 |
4 |
4 |
3 |
3 |
2 |
3 |
用户界面 (User Interface) |
1 |
1 |
3 |
4 |
4 |
4 |
3 |
2 |
3 |
国际化操做 (International Operations) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
2 |
数据交换 (Data Interchange) |
1 |
1 |
3 |
4 |
4 |
3 |
2 |
2 |
3 |
数据管理 (Data Management) |
1 |
1 |
3 |
4 |
4 |
3 |
2 |
2 |
3 |
图形与图像 (Graphics & Image) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
3 |
操做系统服务 (Operating System Services) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
3 |
网络服务 (Network Services) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
3 |
通讯基础设施 (Communications Infrastructure) |
1 |
1 |
3 |
4 |
3 |
3 |
2 |
2 |
3 |
法律环境 |
|||||||||
合同法 (Contract Law) |
2 |
2 |
2 |
2 |
2 |
2 |
2 |
3 |
1 |
数据保护法 (Data Protection Law) |
3 |
3 |
4 |
3 |
3 |
3 |
3 |
2 |
2 |
采购法 (Procurement Law) |
3 |
2 |
2 |
2 |
2 |
2 |
2 |
4 |
1 |
诈骗 (Fraud) |
3 |
3 |
3 |
3 |
3 |
3 |
3 |
3 |
1 |
商业法 (Commercial Law) |
3 |
3 |
2 |
2 |
2 |
2 |
3 |
3 |
1 |
在前面提到过的各类角色之中,最常常被提到的恐怕要数“企业架构师”这一角色了,而这也正是由于这一角色是整个企业架构建设的核心。虽然很是重要且常被挂在嘴角,但其在各行业中正式的定义却鲜有所闻,而仅仅被看成一个跨越多个架构领域具备普遍实践经验和技能的角色。TOGAF对于企业架构师的工做描述总结为以下几点:
架构师的职责范围贯穿了企业架构的整个生命周期,它开始于与客户一块儿理解其真正的需求,并在其后的过程当中负责将这些需求转化为可以对其进行实现的各项能力。此外,架构师还须要经过不一样模型的展现来与客户就其需求是如何被知足的进行沟通。因而可知,架构师与负责建设的团队是不一样的,他的主要目标在于理解如何才能知足客户的须要,并就此为负责建设的应用开发团队或产品实现团队提供设计决策文档。与建设者相比,架构师须要保持必定水平的抽象性,而且一般其所使用的技能应该是概括性的,而建设者则更加注重于实现方面,其所采用的技能也每每是推断性的。综上所述,架构师的角色职能能够总结以下:
在前面有关企业连续体的部分中咱们已经了解到,对于构建块的实现可能会受其复杂性所限而须要对其解决方案的实施进行进一步划分,而在这种状况下就须要多种架构师的通力协做。从企业连续体的角度来讲,架构师这一角色能够分为以下几种,而且其中的每一种都具有着各自的关注点:
在本节的最后一部分,咱们来探讨一下TOGAF对于企业架构师各方面特质的概括总结: