逸言

AgileChina2003架构演进杂志

| Comments

“架构演进”介绍

软件系统的架构从来都不是一蹴而就的,它需要在不断的演化中改进设计,甚至做出重要的架构迁移。尤其对于大型软件系统而言,组织管理、软件过程、需求变化、规模扩张、技术迁移、遗留系统等诸多因素都决定着架构的发展,甚至可能是诸多力量的博弈与权衡。

技术文章

演化架构与紧急设计系列

本系列文章旨在从全新的视角来介绍经常讨论但是又难以理解的软件架构和设计概念。作者 Neal Ford 将通过介绍一些具体示例来帮助您在演化架构和紧急设计的灵活实践中打下坚实的基础。通过将重要的架构和设计决定推迟到最后责任时刻,您可以防止由于不必要的复杂度而降低软件项目质量的问题。点击链接

遗留系统的技术栈迁移

遗留系统是一个还在运行和使用,但已步入软件生命周期衰老期的软件系统。它可能会因为无法满足新的质量需求,又或者是出于企业战略决策的考虑等诸多原因,需要对其进行技术栈迁移。然而,在迁移过程中,我们既需要满足迁移后的需求,又必须保证原有的系统功能不会受到破坏,这就为技术栈迁移制造了障碍。本文提出运用“风险驱动模型”来完成这一工作。风险驱动模型就是通过识别风险,对风险排定优先级;然后根据风险选定相关技术,再对风险是否得到缓解进行评估的一种架构方法。点击链接

注重实效的架构师——大胆行前人未行之路

是什么让架构师们精通自己的技艺?熟练的架构师是如何进行设计的?一次次,有人问起我这些问题,而我也不止一遍的问我自己。很明显,这并不只是软件工程过程、设计方法、技术或是编程的专业程度所决定的。很多架构师具备令人钦佩且完备的技术知识,这确实是使设计成功的必要条件。但是,还是有很多的软件项目失败了,或是在项目的架构中遭受到了严峻的挑战。掌握此道的关键在于架构师是以什么方式实现设计,他们重视什么,他们关注哪些方面以及在这些方面努力着。点击链接

可扩展Web架构与分布式系统

开放源代码已经成为一些大型网站的基本原则。而在这些网站成长的过程中,一些优秀的实践经验和规则也出现在他们的结构中。本文旨在介绍一些在大型网站结构设计的过程中需要注意的关键问题以及实现目标的基础工作。本文侧重于介绍网络系统,尽管一些准则在其他分布式系统中也是适用的。点击链接

架构师

Neal Ford

Neal Ford是全球IT咨询公司ThoughtWorks的软件架构师。除了常规工作,他做的事情还包括设计和开发应用程序、教学材料、杂志文章、课件和视频/DVD演示,同时还是各种技术书籍的作者或者编辑,其中包括著作The Productive Programmer。他专注于设计和开发大规模企业应用程序,同时,他也是世界开发人员会议的国际知名演说家。

Eric Evans

大型业务系统方面的领域建模和设计专家。早20世纪90年代,他就参与了很多项目,基于对象(Object)开发出许多大型的业务系统,并致力于将敏捷过程应用到现实项目中。 此外,Eric Evans还是《领域驱动设计——软件核心复杂性应对之道》一书的作者。在书中他总结了构建上述业务系统相关的经验、原则和技术等。并介绍了一个建模和设计技术的系统,成功的团队应用这一系统可以组装有业务需求的复杂软件系统,并使系统在增大时仍然保持敏捷。 Eric现在是“Domain Language”组织的负责人。该组织是一个咨询小组,它指导和训练团队实施领域驱动设计,帮助他们使自己的开发工作对业务而言更有生产力和更有价值。

FranK Buschmann

德国慕尼黑西门子技术公司资深技术专家及负责人。Wiley软件设计模式系列图书主编。他的研究领域包括对象技术、软件架构、产品线、模型驱动软件开发和模式。他曾是ANSI C++标准化委员会x3J16的成员,于1996年发起了首届EuroPLoP会议。Frank Buschmann是Pattern-Oriented Software Architecture系列书籍的主要作者。

Fred George

Fred George先生在敏捷开发领域颇有声望,在业界有将近40年的开发经验,是国际敏捷领域大师级专家、咨询师、架构师。早年他在IBM工作。退出IBM之后,以独立咨询师的身份在美国工作了十多年。后来他加盟了ThoughtWorks,成为早期致力于推动敏捷开发的一批开发者。现在他离开了ThoughtWorks,在英国的TrafficBroker公司就任解决方案架构师一职。

推荐书籍

#####Release It!

推荐理由:Michael Nygard的Releast It!可以看做是处理软件系统质量属性的治病良方。本书常常会以一个具体的实例开始阐述某一个质量属性的关键性,并列出一系列的反模式作为参照和对比,最后再给出正确的模式列表。这种针对问题的叙事方法,使得读者往往能够照方抓药,又因为模式的叙述如此清晰而规范,所以常常能药到病除。正如本书书名所指,这些内容确乎与软件的发布息息相关。

Beautiful Architecture

推荐理由:全书涵盖的内容广博而宏大,涵盖了架构基本原则、企业级应用架构、系统架构、最终用户应用架构、语言与架构,分列为本书的五大部分,读之会让人产生目不暇接之感。尤其对于术有专攻的程序员来讲,要彻底吃透本书讲解的内容,无疑是一项艰巨的挑战。然而,如果从架构师所必须具备的技能来看,本书的内容其实并没有超出架构的范畴,因为架构师必须要见识广博,你才能针对不同的需求场景,面对不同的实现技术,选出最适合当前场景的恰如其分的架构方案。

Enterprise Integation Patterns

推荐理由:本书关注企业级软件系统的本质问题,那就是集成。对于采用异步消息传递的集成方案,本书针对不同场景给出了不同的解决方案,并以模式的方式进行概述与归纳。倘若你在设计软件系统时,需要使用异步消息传递的方式对系统进行集成,本书可以成为你的最佳指南。

Comments