软件架构的艺术

出版时间:2009-4  出版社:电子工业出版社  作者:李伟,吴庆海  页数:318  
Tag标签:无  

内容概要

架构是设计一切系统的基础和核心。随着用户需求的变化及技术的发展,我们身边各式各样的系统也日趋复杂。如何在万象中剥离繁华,提炼事物的本质和精髓,“系统架构”正是化繁为简、打通两极世界的一门艺术。  架构之美,在于和谐。本套“架构之美”系列丛书,以期从业务梳理、流程建模、软件架构、设计模式等方面进行系统、全面地介绍。强调理论与实践相结合,国外发展趋势与国内本地应用相结合,打造华人精品书籍,给国内读者提供真正有指导意义的美食大餐。  本书聚焦于软件架构行业,全面介绍软件应用系统架构的基本原理、方法以及经典的实践经验。把握共同的规律,预知未来的发展,选择最佳的路径,尽可能减少成长的烦恼,并保持成熟的稳定,让企业充分享受属于架构整个生命阶段的华彩!

作者简介

李伟,专家级顾问,西门子中国研究院首席架构师。他具有广博的系统架构、设计、开发和咨询的相关经验。他在企业商业架构、企业应用架构、创新规划、流程优化、IT应用规划、建筑信息及模拟系统、企业信息化系统、行业实时系统、分布式系统整合和架构评审等众多技术领域有过相关的实践经验。
  曾为西门子工业及自动化A&D群组、西门子楼宇自动化SBT群组、西门子交通TS群组、西门子IT服务SIS群组、Motorola中国、Nokia Siemens中国、中国移动总公司、中国铁道部、中国民用航空总局、中国国税总局、中石化总公司、国家统计局等提供过服务。出任中国科学院系统架构特约讲师;中国建筑信息标准化特约专家;美国IEEE会员。先后在CSDN、计算机世界、中国计算机用户、每周电脑报等众多媒体上发表了多篇专题文章。

书籍目录

第1章 软件架构介绍  1.1 引子  1.2 架构的源起  1.3 系统架构与软件架构  1.4 软件架构的历程  1.5 软件架构的误区  1.6 软件架构生命周期 第2章 企业中的架构师  2.1 软件架构师的定义、分类和职责  2.2 软件架构师具备的素质  2.3 架构师与职能经理  2.4 架构师与开发人员 第3章 工作中的架构师  3.1 解决商业问题  3.2 解决架构问题  3.3 解决设计问题  3.4 解决编码实施问题  3.5 工作中的沟通  3.6 运用架构框架及工具 第4章 软件架构与设计流程  4.1 构建商业架构概念  4.2 构建应用架构概念  4.3 确立和稳定架构基线  4.4 子系统架构及设计  4.5 构件与单元设计  4.6 架构/设计流程中的角色和职责 第5章 软件架构及软件质量  5.1 构建符合质量要求的系统架构  5.2 架构构建重点考虑因素  5.3 衡量系统架构的质量 第6章 软件架构的评审  6.1 架构评审目标确定  6.2 架构评审计划制定  6.3 架构评审输入收集  6.4 架构评审方法和技术选择  6.5 架构评审输出汇总  6.6 架构评审实践指导 第7章 软件架构的恢复与重构  7.1 反向工程和正向工程  7.2 架构和设计恢复  7.3 架构和设计重构  7.4 系统代码重构 第8章 软件产品线架构  8.1 软件系统产品线基本概念  8.2 共性和可变性分析  8.3 构建软件产品线架构  8.4 软件产品线架构的演化  8.5 软件产品线的管理因素 第9章 软件架构的未来  9.1 当今架构的潮流  9.2 未来架构的发展 词汇表 参考文献

章节摘录

  第1章 软件架构介绍  经常,我们会涉及系统架构、面向对象的架构(SOA)、软件架构等词,那么到底什么是“架构”?什么是“软件架构”?“系统架构”与“软件架构”有着怎样的区别和联系?“系统架构构建”和“系统设计”之间有什么区别和联系?  本章带着这些问题,追本溯源,对于架构及软件架构的一些基本概念及发展历程做一番说明。同时对一些人们认识上的误区进行分析,以还原事物的真实面目。  1.1 引子  时间就像一条奔腾不息的大河,大浪淘沙,方显金石。翻开人类的建筑工程史,遍布世界各地,跨越几千年的时空,我们可以看到许多辉煌成功的工程。但是,人们往往最容易遗忘那些被历史长河所淹没的惨痛失败。而实际上,人类建筑的伟大成就,就是建立在这一系列失败的教训之上。既然“失败是成功之母”,那我们就以一个有代表性的失败工程,作为我们走向成功的基石和开始。这个惨痛的教训,就是塔科马大桥(Tacoma Narrows Bridge)。  如果您现在从西雅图国际机场附近的塔科马前往华盛顿州的奥林匹亚区,在16号公路上有一条必经之桥,它如同一道美丽的钢架彩虹跨过了普及特海峡。这就是著名的塔科马大桥,如图1-1所示。  竣工于2007年的塔科马大桥是目前世界上最长的悬索双桥,桥长1600米,悬索跨度850米。这真可谓是一项令人赞叹的伟大工程。但是,几乎每一个桥梁建筑设计人员都知道其大名的原因,并不是由于该桥像金门大桥那样是桥梁史上最著名的大桥,而是由于其前身老塔科马大桥(其绰号为Galloping Gertie)的倒坍,是桥梁史上最著名的失败的缘故。  老塔科马大桥是普及特海峡上的第一座大桥,1938年11月开始建造,于1940年7月竣工,总耗资640万美元,是当时世界第三长跨度的桥梁。因为先前美国海军考虑到附近海军基地的需要,提供了部分建桥资金,并且旧金山金门大桥的设计者、著名的桥梁大师Joseph B. Strauss和Leon S. Moisseiff提供了设计咨询意见。因此,老塔科马大桥的竣工,使大桥成为了宾夕法尼亚州经济及军事的重要门户。它被当时的媒体和桥梁行业美喻为“人类坚定不移的独创精神的结晶”,如图1-2所示。  然而,大桥建成后不久,驾车跨越大桥的人们就发现该桥会随风不停地左右摇摆。虽然桥中心线保持了相对的稳定,可是整个桥面两侧却在上下起伏。这样有趣的现象竟吸引车辆排起了长队,竞相等待开上这座像醉汉一样摇摆的索桥,去体会一下这奇妙的感觉。虽然桥梁设计师们也注意到了这样的不稳定现象,但是他们信誓旦旦地保证“桥梁是安全的”。  但是事实毕竟让某些相关人员开始有些担心,所以从1940年7月底开始,在华盛顿大学教授F.B. Farquharson的指导下,他们开始对桥梁的这种奇特振动开始进行研究。他们拍摄了大量的照片和影片,记录下了大桥的振动方式,并且在试验室里开始进行一定规模的试验,试图找到相应的方法来有效地降低桥梁的振动,如图1-3所示。  经过Farquharson教授所带领团队的观测和试验,最初的解决办法是在桥梁正中央的桥底部,安装一些钢缆,把这些钢缆从桥底固定到地面。可是在施工过程中,这些钢缆在风力拉动桥梁的作用力下完全断裂,施工没能成功。随后,试验人员又给出了一系列其他相应的固定桥梁的办法。例如,在桥梁的侧梁上钻洞,这样可以减小风力对侧梁的推拉力;或者在桥梁的侧梁上安装一些风力导流器,这样可以减小阵风正面直接对侧梁的推拉力。1940年11月初,桥梁的投资方最终同意了这些加强措施,并且打算在接下来的几周内完成施工。  遗憾的是,这样的决定来得太迟了,风平浪静的假象下暗流涌动,甚至连F.B. Farquharson教授带领的团队也始料不及。  11月7日清晨,顺着海峡吹来越来越强劲的大风,大桥开始了人们熟悉的摇摆和振荡。桥上车辆和行人依旧穿梭往来,享受着一如既往的那份惬意的晃动。9点45分,大风时速达到了68公里。桥面上下交替晃动,两侧落差急速增加,最大时达到一米多,整个桥面仿佛成了过山车回旋的轨道一样。当时Farquharson教授带领的团队正在桥面中央拍摄大桥晃动的场景,以便为即将开始的大桥风力导流工程提供设计数据。他们拍摄到了一位记者Leonard Coatsworth正在驾车载着自己的爱犬Tubby非常缓慢而惬意地穿过大桥,一对夫妇也驾驶一辆小型货车紧随在记者的车后。教授拍摄的影片所记录该景象的时间是10点13分左右。  10点14分,整个桥面的起伏急剧增加,两侧落差最大时达到两米多。数千吨重的钢铁大桥仿佛变成了一条抖动的缎带,长长的波浪式起伏飘荡在整体桥面上。情况还在继续恶化,整个桥面开始无规则地扭曲在一起,给在场的人一种强烈的恐惧感。事后Leonard Coatsworth叙述说:“当我刚刚开过桥头进入大桥时,大桥就开始疯狂地上下左右晃动起来。我意识到必须马上停车,否则轿车就会完全失去控制。我用力紧急停车,打开车门。可以说我是被扔出车厢的。我看到车子被强烈的晃动推得左右摇摆,并且我开始听到了水泥断裂的可怕声音……”Leonard Coatsworth的爱犬Tubby也紧随着主人跳下了车,车后的那对夫妇也急忙跳下自己失控的卡车。这一切都被在现场拍摄的Farquharson教授看到并且记录在影片中。当教授和所有行人安全地回到桥头时,他们看到巍然屹立的大桥突然断裂!束缚整个桥梁的钢缆完全崩断!整个桥面轰然倒塌!庞大的桥体拍落到下方普及特海峡的水面上。桥面上Leonard Coatsworth和那对夫妇的车子也仿佛电影中的慢镜头一样,随同桥体落入海峡。整个事件从发生到结束没有超过两分钟。目睹整个过程的所有人都惊得目瞪口呆。可怜的小狗Tubby也一同掉落进普及特海峡,成为这次事故的唯一遇难者,所幸没有其他人员伤亡。  1940年11月7日早上11点15分(美国太平洋时间),塔科马大桥轰然倒塌,如图1-4所示。后人称之为“桥梁建筑史上的珍珠港”。对普及特海峡来说,倒塌的大桥也成为了世界上最大的人造礁石之一。1940年11月28日,美国海军的水文办公室报告称,桥梁遗骸的地理坐标是(47.1600"N,122.3300"W),深度180英尺(55 m)。  当人们从大桥的倒塌事件中回过神后,工程设计人员开始分析大桥被风“吹”断的原因。  首先,大桥的施工质量是无可挑剔的:使用了高质量的板型钢材及性能稳定的水泥,整个施工过程被严格监督。整个桥梁是用板型碳钢大梁坚实地支撑着,大梁被深深地固定在巨大混凝土桥墩上。但可惜的是,这样看似设计完美的悬锁桥,却忽略了一个重要的问题:由于风力带来的共振和扭力。可以理解,当时的桥梁工程还没有总结出这样的设计实践。  在塔科马大桥之前,世界上其他的悬索桥大多采用具有开放式孔格结构的大梁。这样的大梁对风力的扰流效果很好,所以不会使风振的能量聚集。但是对于塔科马大桥这样板型钢质大梁的新型悬索桥来说,板型设计结构会把风力牵制在桥梁断面上。这样被牵制住的风力,会造成两种的扭转模式:共振模式和扭力模式。共振是一种纵向的扭力,意味着振动力沿着桥梁的长度发生作用,塔科马大桥也不例外。所以出现了以大桥中央为分界点,桥面顺着桥长上下起伏的现象。这样,司机会看见对面开来的汽车有时会消失在跌宕起伏的桥谷中。  但是,共振模式并不是导致桥梁坍塌的原因。当时的风速达到了每小时68公里,一旦风力达到这样的强度,第二种扭转模式“扭力模式”就开始作用于大桥。当时在坍塌现场的人们可以看到,桥上的路面出现了两侧路面交替上升、下降的现象。如图1--5所示。  应该这样说,对所有桥梁设计来讲,桥面与水面的长距离,造成了穿过桥梁的风力对桥梁本身的振动。因为当风吹向桥梁时,风力将分流绕过其桥梁断面而形成周期性交替的风流。周期性交替的风流绕过障碍物时会使桥身产生共振。当风速达到一定程度时,风力对桥梁这样有明显仰角的物体会产生强烈的扭力。周期性的共振加上扭力累积到一定幅度时,就会引起桥梁的折断。如果不能有效降低这种逐渐增大的振幅和扭力,桥梁的安全就难以得到保障。  桥梁界最后给出的正式结论是震撼而有深远借鉴意义的:“塔科马大桥使用了崭新而没有经过验证的桥梁设计结构,使大桥建成后毁于风力造成的风振。”看来,正是由于桥梁设计(换成IT界的话来讲,就是桥梁的架构)的原因,导致了这样惨痛的工程失败。  理解塔科马大桥事件的原因,可以说只有在严谨的数学分析下,结合空气动力学和系统结构学才能完全搞清楚。在以后的研究和工程实践中,建筑结构工程界和航空工程界借鉴塔科马大桥的失败经验,进一步完善了空气动力学。这对以后研究解决桥梁的风振问题提供了很好的借鉴。  自此以后,桥梁界专业人士开始认识到:为了解决风振,首先要避免由于桥梁结构所累积的风力振动,而不是通过加强主梁或桥体的强度来抵抗风力。为了减少累积的风振,可以运用具有开放的网格结构使大梁和桥面的气流顺利通过,不致产生涡流和扭力的积累,这样就大大减小了风振。  故事是令人震撼的,背后的教训也是深刻的。虽然后续桥梁工程实施的质量无可挑剔,但正是桥梁设计使用了全新的架构,并且该架构没有经过实践的检验,从而导致最终桥梁崩溃性灾难的发生。人类所有工程领域的进步都是建立在这样一系列失败的基础之上,并逐渐走向成熟和成功。  ……

编辑推荐

  作者为西门子中国研究院首席架构师,曾在德国西门子总部与世界知名的架构大师Frank Buschmann共事多年。  聚焦软件架构行业,全面介绍软件应用系统架构的基本原理、方法及经典的实践经验。  无论您是一位刚入门的系统开发者,或是一位专业的系统架构师,或是一位经验丰富的资深企业CTO,可能都会面临如下的一些困惑或挑战……  如何构建一个大规模复杂系统?  如何成长为一个职业架构师?  如何确保系统架构的质量?  如何进行架构重构?  如何进行系统架构评审?  如何构建产品线架构?  ……  架构之美,在于和谐。作为《架构之美》丛书之一,《软件架构的艺术》聚焦于软件架构行业,全面介绍软件应用系统架构的基本原理、方法以及经典的实践经验,并创新性地提出为确保高质量的架柯设计而应该遵循的“架构生命周期(Archiecture Lifecycle)”的理论。把握共同的规律、预知未来的发展、选择最佳的路径,尽可能缩短成长的烦恼,尽可能保持成熟的稳定,让软件研发企业充分享受到属于架构整个生命阶段的华彩,正是研究架构生命周期的目的之所在!

图书封面

图书标签Tags

评论、评分、阅读与下载


    软件架构的艺术 PDF格式下载


用户评论 (总计6条)

 
 

  •   应该还不错,没来得及看呢
  •   经典,好好学习,加油啊!
  •   书很好看,质量不错,发送很快
  •   不错 ,适合没事的时候拿来翻翻
  •   真的狠一般
  •   希望提高自己架构方面的知识
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7