译自 http://www.sei.cmu.edu/architecture/eight_lessons.pdf
大家都知道历史学家并不愿意以过去预测未来。通常预测几年内的变化是可能的,但当新的演变产生交互作用,就算最消息灵通的人也无法透过这些事件准确地预测。然而,历史学者仍强调,虽然以过去无法预设未来,但仍可提供了解未来的”基本指引”。
”架构(Architecutre)”这个名词引进到计算机/信息技术领域已经约有 40 年。这 40 年的历史可以提供什么样的课程和对未来的指引?更重要的,IT 架构可以从相邻的领域学到什么,例如:军事、市政、金融、数学、天文、社会和医学。答案是:很多。
市政、金融和军事拥有超过 5 千年结合在一起的历史,在金融、军事、法律和外交等领域,对历史的知识是基本要求。在本文中,你将可以看到对 IT 而言,历史的知识一样重要。
#1 了解 IT 架构的复杂性
举例来说,想一下在任何领域类似的架构概念:
根据古老的传说,印度国王 Shirham 想要奖赏他的大臣 Sissa Ben Dahir,为了他发明并献上西洋棋。聪明的大臣其愿望似乎不大,他跪在国王前说道:「皇上,请放在棋盘上第一格一粒麦子,第二格两粒,第三格四粒,第四个八粒,以此下去每一格是前一格两倍的数量,就让我有足够的麦子来覆盖 64 格吧。」
「喔,我忠诚的臣子,你要求的不多」国王惊呼。窃自高兴臣子慷慨的提议,神奇游戏的发明者要求的不多。「我允诺你的愿望」,国王并下令搬一袋麦子到王座前。
但当计算开始,第一格放入了一粒麦子,第二格两粒,第三格四粒,如此地持续下去,在第 20 格前就用光了袋子内的麦子。更多袋的麦子被搬到国王跟前,但仍无法满足持续快速增加的下一格,很快地国王了解到倾全印度的收成都无法满足他对 Sissa Ben 的承诺。这需要 18,446,744,073,709,551,615 粒麦子,等同全世界麦子的产量累积 2000 年。
在 21 世纪的 IT 架构有近似的问题 – 商业流程整合。过去 20 年来,企业耗时在建置因特网应用程序。现在,企业需要面对的不仅是建立新的应用程序,还需处理令人却步的整合既有系统。每当你投资新建 IT 应用程序,就代表一个新旧整合的需求。若企业内已经有 200 个既存系统,意味着系统间可能有 200*(200-1) = 39800 种连结方式,其结果明显地不会太好看。
第 1 课:每当你为企业加一个系统,想想 n(n-1) 情境,不久后,巨兽将反噬你。
#2 了解过去 40 年来技术导入的趋势
计算计算机的世代必然引发争议 – 机器不像人类有家谱。但以下列出的 5 代大致还说得过去:
计算机世代 | 1.主机 | 2.mini 计算机/WAN | 3. PC/LAN | 4.Client/Server | 5.因特网 | 6.普遍运算 |
年代 | | | | 80 年代后期 – 90 年代初期 | 90 年代中期 | 2005+ |
导入时间 | 10+ | 7+ | 6+ | 5+ | 3+ | |
很明显地,过去五代以来,技术开发与导入的步伐正在加速。在旧技术让路给新技术的同时,它们仍必须和平共存。因特网革命,dot com 出现,委外风潮,以及达到易于管理和安全等企业关注的焦点,这些需求提升了 IT 架构的策略价值。商业流程整合获得关注,IT 部门压力依旧,要整合异质数据、系统和流程,横跨企业与外部的延伸,包括客户、伙伴和供货商。因此,现今的 IT 架构需要复杂的商业和技术决策,同时,有高比例的下一代生产利润奠基于对当下 IT 架构之决策。
注意,我们并非针对”完美”方案 – 没有”完美”方案。如同在大型企业的复杂架构中没有清楚的黑白之分,我们只能时常在相互冲突的目标中,尝试找寻难得的平衡与妥协。
浏览大量的 IT 架构决策需要大量的专业,在此 IT 可以向伟大建筑的建筑师学习,他们让城市风貌演变至今日。凯萨大帝(Julius Caesar)时期的大建筑师 Vitruvius 描述理想的建筑师应如下:
“理想的建筑师应同时为文人、数学家,熟悉历史,哲学下的勤勉学子,精于音乐,稍懂医学,认识法律,通晓天文和关于天文的计算。”
Vitruvius 本人不但撰写关于城市计划和建筑材料的著述,也论及天文、医学、音乐与艺术 – 甚至是约法。
将广泛而深刻的技巧投资在你最好的架构师身上,保持冷静的大脑,必要时,掌控计算过且完全了解的风险,凭经验与专业的洞见判断。在找寻复杂架构下可用、好用的解决方案时,IT 架构师需兼具尽心分析,专业与态度成熟。
第 2 课:无可取代的健全的 IT 架构技巧 – 清楚简单
#3 模拟巴黎建筑
IT 架构与城市建筑有许多相似处 – 建筑师、建筑业、建筑材料。
当 1853 年拿破仑 3 世指派 Baron Georges-Eugene Haussmann 为部份的巴黎重新规画时,Haussmann 扫除了许多杂乱的旧街道,以他自己对于新城市的概念取代 – 宽广笔直的大道与华丽的表面,交会处结合纪念碑、公共建筑和城市大门或铁路车站等重点。为提供充足的交通流量,旧街道拓宽并与新路相交,同时大的铁路车站建在旧城市外环,并提供多个宽阔的入口。结果是今日的巴黎拥有 Beaubourg 和 La Defense,它现代化且高效率但仍能明辨历代的装饰。巴黎成为所有欧洲城市的评量标准。Haussmann 尝试保存报修缮旧的可用资产,同时合谐地取代并加入新事物。
Haussmann 的建筑策略大体底定今日的城市风貌,尽管已经过百年。
巴黎建筑策略为 IT 架构提供了许多有用的指引。确定你有 IT 架构的蓝图,并规划短程与长程商业目标。更重要的,利用蓝图引导规划进程与 IT 投资策略。在加入新系统与整合商业流程或添加物时,使用大图(big picture)。随着明了细微的商业逻辑,逐步引导与开展架构。
第 3 课:发展 IT 架构的”大图”,用它来引导并解决你的商业问题与 IT 投资策略。
#4 为软件架构趋势做准备
在 IT 架构史中,软件架构已经有很大的演变。我们利用软件架构的开端来描绘它的趋势如下:
a) 2000 年之后 – 因特网,敏捷计算
b) 90 年代 – 分布式计算,Y2K
c) 80 年代 – 对象导向分析设计
d) 70 年代 – 模块化和结构化程序
e) 60 年代 – 模块化和结构化程序
强大的力量主导软件架构的演变,包含物理上的相对论与混沌理论,以及商业需求变异和不断地技术更新。主导变动需要积极的架构计划、重用 pattern/framework、正确的工具,以定义与管理架构。
IT 架构须遵循”自然律”来设计与施行。就像机器不照构造需求来操作,IT 架构也会失效。你不能从最高档直接切入倒车档,也无法在沙地或水上开车。积极正向的思考,为商业团队准备升级新技术的价值之论述,预期成因,管理结果乃成功 IT 架构之基础。
第 4 课:每十年都有一次软件架构迁移,如果没有准备好,那你注定失败。
#5 使用,开发和重用架构 pattern
军事历史是基础代表保有过去战争的经验,并传授给新兵或经验不足的军人。军事史学家整合不同的史料来源,包含参考书,访谈军事领导人和策划者,并科学地分析从战地找到的事物。彻底研究过往战争可提供战略与战术珍贵地深入分析,以因应现代化战争。军事领导者、指挥官乃至于军人都可以从前辈的经验汲取教训。
撇开军事,我们在城市、金融,甚至是社会架构都可以看到应用 pattern。本质上,pattern 可以用在倡导专业技术,不仅仅是军事、城镇或建筑。
计划想取得领先与竞争力的企业,在应用 IT 解决方案以处理商业问题的因特网世界里,pattern 是一个重要的工具。
第 5 课:在快速变迁的商业氛围中,使用印证过的 pattern 以加速你的 IT 架构,并从今日的经验演化你的 pattern 以因应明日的需求。
#6 技术投资的时机很重要
关于资本和证券市场的本质,金融史提供了的无价智慧。同时历史的智慧并无法让聪明的经济学家准确地预测未来,它让他们可以定位风险才得以控制。事实上,一些赢得诺贝尔奖的经济理论已成为金融史分析的结果。经由欧洲文艺复兴到现代世界的历史活动,金融已经在财务上建立了重要的概念,风险和回报是纠结在一起的。如果我们想要有高报酬的机会,就要面对高风险。如果企盼安全,就要甘愿低回收。
在 IT 架构世界,风险和回馈也是联结在一起的,就看我们如何应用技术以解决商业问题获得竞争力。尽管 IT 架构没有像金融一般可供夸耀的长史,过去 40 年来仍呈现了技术上的先驱者总比后来者更有竞争力。而照定义,先驱意味着更多的风险。
第 6 课:如同金融,技术投资的风险和报酬是纠结在一起的。
#7 架构理论的重要
相关理论中,或许 IT 架构可从长远而丰富的城市建筑史学到很多,从公元前 30 年到 20 世纪的演变,城市建筑师从历史建筑学习指导原则,艺术灵感和关键控制。
约在公元前 30 年,Vitruvius 撰写了一系列广泛的建筑理论,分为十部分。涵盖不同的主题,如教育和建筑师的专业领域,实际的考虑,如选择新城市的位置,建材的处理,详细规范不同型式建筑的设计。2000年来,城市建筑的理论和实务随着伟大的建筑师如 Alberti、Francois Blondel、John Ruskin、Frank Lloyd Wright、Venturi 而演变,他们延续着 Vitruvius 的脚步并扩展理论,以建构富含文化意义的设计。但 Vitruvius 功绩的重要性在于即使经过了 2000 年,他 1/3 的著作仍触及建筑理论的重大议题。思考计算机对现代设计方法和规划的影响是值得赞赏的。
IT 架构可从 Vitruvius 和其它城市建筑师先驱获得的广泛讯息是:正确的知识、
建筑理论的应用和实务专业一样不可或缺,也才能将概念化为真实。事实上,此种体认可能是创造性自由与创新的前置条件。为此,过去 20 年来,IT architecture frameworks 的出现,如 The Zachman Framework、TOGAF(The Open Group Architecture Framework)是值得鼓励的。
第 7 课:流畅的建筑理论知识与实务引导出适用的建筑。
#8 失能和灾难计划的重要
天文学家几千年以前就在研究彗星所造成的冲击,准确的是从莎士比亚时期。从有记载的数千年历史以来,近两世纪才脱离盲目恐惧慧星。慧星是会造成大灾难 – 但如同我们现在所知,那要它真的撞上地球。但对于大多数的人类历史而言,慧星预言着重大灾难,例如莎士比亚的凯萨大帝(Julius Casear)中,罗马女皇 Calpurnia 提醒她夫君关于国家领导人的陨落。
经过数个世纪,天文学家已经发现一群周期性运转的彗星,包括 Halley、Swift-Tuttle 和 Levy。天文学家的结论是每一个世纪约有 1/1000 的机会,会有 1 公里或更大的小行星撞上地球,经过一万年则机率增长到 1/10。而当彗星或小行星若在下 1/4 个世纪撞上我们,天文学家已经规划了减轻地球灾难的事物。
当彗星撞击是潜在的最大风险与结果之案例,IT 架构学到的是风险分析,须在事件发生前而非事后,想到灾难计划和商业持续性。
第 8 课:记载你商业上 IT 组件的危险因子,发展缓解风险的策略,并让它成为 IT 架构的策略之一。
结论:
我们可以看到,通过数个世纪以来的事件,也有些不愉快的案例,我们已经了解本文中所谈及的课程。IT 架构可以藉由记载和使用自身历史或其它产业所凝结的 pattern 迈向下一个成熟阶段。如同美国哲人 George Santayana 所言:”进步,并非存在于改变,而是依恃记忆,那些无法记住过去的,将受重蹈覆辄之诅咒。”
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1328521