軟件架構(gòu)的藝術(shù)

出版時(shí)間:2009-4  出版社:電子工業(yè)出版社  作者:李偉,吳慶海  頁數(shù):318  
Tag標(biāo)簽:無  

內(nèi)容概要

架構(gòu)是設(shè)計(jì)一切系統(tǒng)的基礎(chǔ)和核心。隨著用戶需求的變化及技術(shù)的發(fā)展,我們身邊各式各樣的系統(tǒng)也日趨復(fù)雜。如何在萬象中剝離繁華,提煉事物的本質(zhì)和精髓,“系統(tǒng)架構(gòu)”正是化繁為簡、打通兩極世界的一門藝術(shù)?! 〖軜?gòu)之美,在于和諧。本套“架構(gòu)之美”系列叢書,以期從業(yè)務(wù)梳理、流程建模、軟件架構(gòu)、設(shè)計(jì)模式等方面進(jìn)行系統(tǒng)、全面地介紹。強(qiáng)調(diào)理論與實(shí)踐相結(jié)合,國外發(fā)展趨勢(shì)與國內(nèi)本地應(yīng)用相結(jié)合,打造華人精品書籍,給國內(nèi)讀者提供真正有指導(dǎo)意義的美食大餐?! ”緯劢褂谲浖軜?gòu)行業(yè),全面介紹軟件應(yīng)用系統(tǒng)架構(gòu)的基本原理、方法以及經(jīng)典的實(shí)踐經(jīng)驗(yàn)。把握共同的規(guī)律,預(yù)知未來的發(fā)展,選擇最佳的路徑,盡可能減少成長的煩惱,并保持成熟的穩(wěn)定,讓企業(yè)充分享受屬于架構(gòu)整個(gè)生命階段的華彩!

作者簡介

李偉,專家級(jí)顧問,西門子中國研究院首席架構(gòu)師。他具有廣博的系統(tǒng)架構(gòu)、設(shè)計(jì)、開發(fā)和咨詢的相關(guān)經(jīng)驗(yàn)。他在企業(yè)商業(yè)架構(gòu)、企業(yè)應(yīng)用架構(gòu)、創(chuàng)新規(guī)劃、流程優(yōu)化、IT應(yīng)用規(guī)劃、建筑信息及模擬系統(tǒng)、企業(yè)信息化系統(tǒng)、行業(yè)實(shí)時(shí)系統(tǒng)、分布式系統(tǒng)整合和架構(gòu)評(píng)審等眾多技術(shù)領(lǐng)域有過相關(guān)的實(shí)踐經(jīng)驗(yàn)。
  曾為西門子工業(yè)及自動(dòng)化A&D群組、西門子樓宇自動(dòng)化SBT群組、西門子交通TS群組、西門子IT服務(wù)SIS群組、Motorola中國、Nokia Siemens中國、中國移動(dòng)總公司、中國鐵道部、中國民用航空總局、中國國稅總局、中石化總公司、國家統(tǒng)計(jì)局等提供過服務(wù)。出任中國科學(xué)院系統(tǒng)架構(gòu)特約講師;中國建筑信息標(biāo)準(zhǔn)化特約專家;美國IEEE會(huì)員。先后在CSDN、計(jì)算機(jī)世界、中國計(jì)算機(jī)用戶、每周電腦報(bào)等眾多媒體上發(fā)表了多篇專題文章。

書籍目錄

第1章 軟件架構(gòu)介紹  1.1 引子  1.2 架構(gòu)的源起  1.3 系統(tǒng)架構(gòu)與軟件架構(gòu)  1.4 軟件架構(gòu)的歷程  1.5 軟件架構(gòu)的誤區(qū)  1.6 軟件架構(gòu)生命周期 第2章 企業(yè)中的架構(gòu)師  2.1 軟件架構(gòu)師的定義、分類和職責(zé)  2.2 軟件架構(gòu)師具備的素質(zhì)  2.3 架構(gòu)師與職能經(jīng)理  2.4 架構(gòu)師與開發(fā)人員 第3章 工作中的架構(gòu)師  3.1 解決商業(yè)問題  3.2 解決架構(gòu)問題  3.3 解決設(shè)計(jì)問題  3.4 解決編碼實(shí)施問題  3.5 工作中的溝通  3.6 運(yùn)用架構(gòu)框架及工具 第4章 軟件架構(gòu)與設(shè)計(jì)流程  4.1 構(gòu)建商業(yè)架構(gòu)概念  4.2 構(gòu)建應(yīng)用架構(gòu)概念  4.3 確立和穩(wěn)定架構(gòu)基線  4.4 子系統(tǒng)架構(gòu)及設(shè)計(jì)  4.5 構(gòu)件與單元設(shè)計(jì)  4.6 架構(gòu)/設(shè)計(jì)流程中的角色和職責(zé) 第5章 軟件架構(gòu)及軟件質(zhì)量  5.1 構(gòu)建符合質(zhì)量要求的系統(tǒng)架構(gòu)  5.2 架構(gòu)構(gòu)建重點(diǎn)考慮因素  5.3 衡量系統(tǒng)架構(gòu)的質(zhì)量 第6章 軟件架構(gòu)的評(píng)審  6.1 架構(gòu)評(píng)審目標(biāo)確定  6.2 架構(gòu)評(píng)審計(jì)劃制定  6.3 架構(gòu)評(píng)審輸入收集  6.4 架構(gòu)評(píng)審方法和技術(shù)選擇  6.5 架構(gòu)評(píng)審輸出匯總  6.6 架構(gòu)評(píng)審實(shí)踐指導(dǎo) 第7章 軟件架構(gòu)的恢復(fù)與重構(gòu)  7.1 反向工程和正向工程  7.2 架構(gòu)和設(shè)計(jì)恢復(fù)  7.3 架構(gòu)和設(shè)計(jì)重構(gòu)  7.4 系統(tǒng)代碼重構(gòu) 第8章 軟件產(chǎn)品線架構(gòu)  8.1 軟件系統(tǒng)產(chǎn)品線基本概念  8.2 共性和可變性分析  8.3 構(gòu)建軟件產(chǎn)品線架構(gòu)  8.4 軟件產(chǎn)品線架構(gòu)的演化  8.5 軟件產(chǎn)品線的管理因素 第9章 軟件架構(gòu)的未來  9.1 當(dāng)今架構(gòu)的潮流  9.2 未來架構(gòu)的發(fā)展 詞匯表 參考文獻(xiàn)

章節(jié)摘錄

  第1章 軟件架構(gòu)介紹  經(jīng)常,我們會(huì)涉及系統(tǒng)架構(gòu)、面向?qū)ο蟮募軜?gòu)(SOA)、軟件架構(gòu)等詞,那么到底什么是“架構(gòu)”?什么是“軟件架構(gòu)”?“系統(tǒng)架構(gòu)”與“軟件架構(gòu)”有著怎樣的區(qū)別和聯(lián)系?“系統(tǒng)架構(gòu)構(gòu)建”和“系統(tǒng)設(shè)計(jì)”之間有什么區(qū)別和聯(lián)系?  本章帶著這些問題,追本溯源,對(duì)于架構(gòu)及軟件架構(gòu)的一些基本概念及發(fā)展歷程做一番說明。同時(shí)對(duì)一些人們認(rèn)識(shí)上的誤區(qū)進(jìn)行分析,以還原事物的真實(shí)面目。  1.1 引子  時(shí)間就像一條奔騰不息的大河,大浪淘沙,方顯金石。翻開人類的建筑工程史,遍布世界各地,跨越幾千年的時(shí)空,我們可以看到許多輝煌成功的工程。但是,人們往往最容易遺忘那些被歷史長河所淹沒的慘痛失敗。而實(shí)際上,人類建筑的偉大成就,就是建立在這一系列失敗的教訓(xùn)之上。既然“失敗是成功之母”,那我們就以一個(gè)有代表性的失敗工程,作為我們走向成功的基石和開始。這個(gè)慘痛的教訓(xùn),就是塔科馬大橋(Tacoma Narrows Bridge)?! ∪绻F(xiàn)在從西雅圖國際機(jī)場(chǎng)附近的塔科馬前往華盛頓州的奧林匹亞區(qū),在16號(hào)公路上有一條必經(jīng)之橋,它如同一道美麗的鋼架彩虹跨過了普及特海峽。這就是著名的塔科馬大橋,如圖1-1所示?! 】⒐び?007年的塔科馬大橋是目前世界上最長的懸索雙橋,橋長1600米,懸索跨度850米。這真可謂是一項(xiàng)令人贊嘆的偉大工程。但是,幾乎每一個(gè)橋梁建筑設(shè)計(jì)人員都知道其大名的原因,并不是由于該橋像金門大橋那樣是橋梁史上最著名的大橋,而是由于其前身老塔科馬大橋(其綽號(hào)為Galloping Gertie)的倒坍,是橋梁史上最著名的失敗的緣故?! ±纤岂R大橋是普及特海峽上的第一座大橋,1938年11月開始建造,于1940年7月竣工,總耗資640萬美元,是當(dāng)時(shí)世界第三長跨度的橋梁。因?yàn)橄惹懊绹\娍紤]到附近海軍基地的需要,提供了部分建橋資金,并且舊金山金門大橋的設(shè)計(jì)者、著名的橋梁大師Joseph B. Strauss和Leon S. Moisseiff提供了設(shè)計(jì)咨詢意見。因此,老塔科馬大橋的竣工,使大橋成為了賓夕法尼亞州經(jīng)濟(jì)及軍事的重要門戶。它被當(dāng)時(shí)的媒體和橋梁行業(yè)美喻為“人類堅(jiān)定不移的獨(dú)創(chuàng)精神的結(jié)晶”,如圖1-2所示?! ∪欢髽蚪ǔ珊蟛痪?,駕車跨越大橋的人們就發(fā)現(xiàn)該橋會(huì)隨風(fēng)不停地左右搖擺。雖然橋中心線保持了相對(duì)的穩(wěn)定,可是整個(gè)橋面兩側(cè)卻在上下起伏。這樣有趣的現(xiàn)象竟吸引車輛排起了長隊(duì),競(jìng)相等待開上這座像醉漢一樣搖擺的索橋,去體會(huì)一下這奇妙的感覺。雖然橋梁設(shè)計(jì)師們也注意到了這樣的不穩(wěn)定現(xiàn)象,但是他們信誓旦旦地保證“橋梁是安全的”?! 〉鞘聦?shí)畢竟讓某些相關(guān)人員開始有些擔(dān)心,所以從1940年7月底開始,在華盛頓大學(xué)教授F.B. Farquharson的指導(dǎo)下,他們開始對(duì)橋梁的這種奇特振動(dòng)開始進(jìn)行研究。他們拍攝了大量的照片和影片,記錄下了大橋的振動(dòng)方式,并且在試驗(yàn)室里開始進(jìn)行一定規(guī)模的試驗(yàn),試圖找到相應(yīng)的方法來有效地降低橋梁的振動(dòng),如圖1-3所示?! 〗?jīng)過Farquharson教授所帶領(lǐng)團(tuán)隊(duì)的觀測(cè)和試驗(yàn),最初的解決辦法是在橋梁正中央的橋底部,安裝一些鋼纜,把這些鋼纜從橋底固定到地面??墒窃谑┕み^程中,這些鋼纜在風(fēng)力拉動(dòng)橋梁的作用力下完全斷裂,施工沒能成功。隨后,試驗(yàn)人員又給出了一系列其他相應(yīng)的固定橋梁的辦法。例如,在橋梁的側(cè)梁上鉆洞,這樣可以減小風(fēng)力對(duì)側(cè)梁的推拉力;或者在橋梁的側(cè)梁上安裝一些風(fēng)力導(dǎo)流器,這樣可以減小陣風(fēng)正面直接對(duì)側(cè)梁的推拉力。1940年11月初,橋梁的投資方最終同意了這些加強(qiáng)措施,并且打算在接下來的幾周內(nèi)完成施工?! ∵z憾的是,這樣的決定來得太遲了,風(fēng)平浪靜的假象下暗流涌動(dòng),甚至連F.B. Farquharson教授帶領(lǐng)的團(tuán)隊(duì)也始料不及?! ?1月7日清晨,順著海峽吹來越來越強(qiáng)勁的大風(fēng),大橋開始了人們熟悉的搖擺和振蕩。橋上車輛和行人依舊穿梭往來,享受著一如既往的那份愜意的晃動(dòng)。9點(diǎn)45分,大風(fēng)時(shí)速達(dá)到了68公里。橋面上下交替晃動(dòng),兩側(cè)落差急速增加,最大時(shí)達(dá)到一米多,整個(gè)橋面仿佛成了過山車回旋的軌道一樣。當(dāng)時(shí)Farquharson教授帶領(lǐng)的團(tuán)隊(duì)正在橋面中央拍攝大橋晃動(dòng)的場(chǎng)景,以便為即將開始的大橋風(fēng)力導(dǎo)流工程提供設(shè)計(jì)數(shù)據(jù)。他們拍攝到了一位記者Leonard Coatsworth正在駕車載著自己的愛犬Tubby非常緩慢而愜意地穿過大橋,一對(duì)夫婦也駕駛一輛小型貨車緊隨在記者的車后。教授拍攝的影片所記錄該景象的時(shí)間是10點(diǎn)13分左右。  10點(diǎn)14分,整個(gè)橋面的起伏急劇增加,兩側(cè)落差最大時(shí)達(dá)到兩米多。數(shù)千噸重的鋼鐵大橋仿佛變成了一條抖動(dòng)的緞帶,長長的波浪式起伏飄蕩在整體橋面上。情況還在繼續(xù)惡化,整個(gè)橋面開始無規(guī)則地扭曲在一起,給在場(chǎng)的人一種強(qiáng)烈的恐懼感。事后Leonard Coatsworth敘述說:“當(dāng)我剛剛開過橋頭進(jìn)入大橋時(shí),大橋就開始瘋狂地上下左右晃動(dòng)起來。我意識(shí)到必須馬上停車,否則轎車就會(huì)完全失去控制。我用力緊急停車,打開車門??梢哉f我是被扔出車廂的。我看到車子被強(qiáng)烈的晃動(dòng)推得左右搖擺,并且我開始聽到了水泥斷裂的可怕聲音……”Leonard Coatsworth的愛犬Tubby也緊隨著主人跳下了車,車后的那對(duì)夫婦也急忙跳下自己失控的卡車。這一切都被在現(xiàn)場(chǎng)拍攝的Farquharson教授看到并且記錄在影片中。當(dāng)教授和所有行人安全地回到橋頭時(shí),他們看到巍然屹立的大橋突然斷裂!束縛整個(gè)橋梁的鋼纜完全崩斷!整個(gè)橋面轟然倒塌!龐大的橋體拍落到下方普及特海峽的水面上。橋面上Leonard Coatsworth和那對(duì)夫婦的車子也仿佛電影中的慢鏡頭一樣,隨同橋體落入海峽。整個(gè)事件從發(fā)生到結(jié)束沒有超過兩分鐘。目睹整個(gè)過程的所有人都驚得目瞪口呆??蓱z的小狗Tubby也一同掉落進(jìn)普及特海峽,成為這次事故的唯一遇難者,所幸沒有其他人員傷亡?! ?940年11月7日早上11點(diǎn)15分(美國太平洋時(shí)間),塔科馬大橋轟然倒塌,如圖1-4所示。后人稱之為“橋梁建筑史上的珍珠港”。對(duì)普及特海峽來說,倒塌的大橋也成為了世界上最大的人造礁石之一。1940年11月28日,美國海軍的水文辦公室報(bào)告稱,橋梁遺骸的地理坐標(biāo)是(47.1600"N,122.3300"W),深度180英尺(55 m)?! ‘?dāng)人們從大橋的倒塌事件中回過神后,工程設(shè)計(jì)人員開始分析大橋被風(fēng)“吹”斷的原因?! ∈紫?,大橋的施工質(zhì)量是無可挑剔的:使用了高質(zhì)量的板型鋼材及性能穩(wěn)定的水泥,整個(gè)施工過程被嚴(yán)格監(jiān)督。整個(gè)橋梁是用板型碳鋼大梁堅(jiān)實(shí)地支撐著,大梁被深深地固定在巨大混凝土橋墩上。但可惜的是,這樣看似設(shè)計(jì)完美的懸鎖橋,卻忽略了一個(gè)重要的問題:由于風(fēng)力帶來的共振和扭力。可以理解,當(dāng)時(shí)的橋梁工程還沒有總結(jié)出這樣的設(shè)計(jì)實(shí)踐?! ≡谒岂R大橋之前,世界上其他的懸索橋大多采用具有開放式孔格結(jié)構(gòu)的大梁。這樣的大梁對(duì)風(fēng)力的擾流效果很好,所以不會(huì)使風(fēng)振的能量聚集。但是對(duì)于塔科馬大橋這樣板型鋼質(zhì)大梁的新型懸索橋來說,板型設(shè)計(jì)結(jié)構(gòu)會(huì)把風(fēng)力牽制在橋梁斷面上。這樣被牽制住的風(fēng)力,會(huì)造成兩種的扭轉(zhuǎn)模式:共振模式和扭力模式。共振是一種縱向的扭力,意味著振動(dòng)力沿著橋梁的長度發(fā)生作用,塔科馬大橋也不例外。所以出現(xiàn)了以大橋中央為分界點(diǎn),橋面順著橋長上下起伏的現(xiàn)象。這樣,司機(jī)會(huì)看見對(duì)面開來的汽車有時(shí)會(huì)消失在跌宕起伏的橋谷中?! 〉?,共振模式并不是導(dǎo)致橋梁坍塌的原因。當(dāng)時(shí)的風(fēng)速達(dá)到了每小時(shí)68公里,一旦風(fēng)力達(dá)到這樣的強(qiáng)度,第二種扭轉(zhuǎn)模式“扭力模式”就開始作用于大橋。當(dāng)時(shí)在坍塌現(xiàn)場(chǎng)的人們可以看到,橋上的路面出現(xiàn)了兩側(cè)路面交替上升、下降的現(xiàn)象。如圖1--5所示?! ?yīng)該這樣說,對(duì)所有橋梁設(shè)計(jì)來講,橋面與水面的長距離,造成了穿過橋梁的風(fēng)力對(duì)橋梁本身的振動(dòng)。因?yàn)楫?dāng)風(fēng)吹向橋梁時(shí),風(fēng)力將分流繞過其橋梁斷面而形成周期性交替的風(fēng)流。周期性交替的風(fēng)流繞過障礙物時(shí)會(huì)使橋身產(chǎn)生共振。當(dāng)風(fēng)速達(dá)到一定程度時(shí),風(fēng)力對(duì)橋梁這樣有明顯仰角的物體會(huì)產(chǎn)生強(qiáng)烈的扭力。周期性的共振加上扭力累積到一定幅度時(shí),就會(huì)引起橋梁的折斷。如果不能有效降低這種逐漸增大的振幅和扭力,橋梁的安全就難以得到保障?! 蛄航缱詈蠼o出的正式結(jié)論是震撼而有深遠(yuǎn)借鑒意義的:“塔科馬大橋使用了嶄新而沒有經(jīng)過驗(yàn)證的橋梁設(shè)計(jì)結(jié)構(gòu),使大橋建成后毀于風(fēng)力造成的風(fēng)振。”看來,正是由于橋梁設(shè)計(jì)(換成IT界的話來講,就是橋梁的架構(gòu))的原因,導(dǎo)致了這樣慘痛的工程失敗?! ±斫馑岂R大橋事件的原因,可以說只有在嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)分析下,結(jié)合空氣動(dòng)力學(xué)和系統(tǒng)結(jié)構(gòu)學(xué)才能完全搞清楚。在以后的研究和工程實(shí)踐中,建筑結(jié)構(gòu)工程界和航空工程界借鑒塔科馬大橋的失敗經(jīng)驗(yàn),進(jìn)一步完善了空氣動(dòng)力學(xué)。這對(duì)以后研究解決橋梁的風(fēng)振問題提供了很好的借鑒?! ∽源艘院?,橋梁界專業(yè)人士開始認(rèn)識(shí)到:為了解決風(fēng)振,首先要避免由于橋梁結(jié)構(gòu)所累積的風(fēng)力振動(dòng),而不是通過加強(qiáng)主梁或橋體的強(qiáng)度來抵抗風(fēng)力。為了減少累積的風(fēng)振,可以運(yùn)用具有開放的網(wǎng)格結(jié)構(gòu)使大梁和橋面的氣流順利通過,不致產(chǎn)生渦流和扭力的積累,這樣就大大減小了風(fēng)振?! 」适率橇钊苏鸷车?,背后的教訓(xùn)也是深刻的。雖然后續(xù)橋梁工程實(shí)施的質(zhì)量無可挑剔,但正是橋梁設(shè)計(jì)使用了全新的架構(gòu),并且該架構(gòu)沒有經(jīng)過實(shí)踐的檢驗(yàn),從而導(dǎo)致最終橋梁崩潰性災(zāi)難的發(fā)生。人類所有工程領(lǐng)域的進(jìn)步都是建立在這樣一系列失敗的基礎(chǔ)之上,并逐漸走向成熟和成功?! ?hellip;…

編輯推薦

  作者為西門子中國研究院首席架構(gòu)師,曾在德國西門子總部與世界知名的架構(gòu)大師Frank Buschmann共事多年。  聚焦軟件架構(gòu)行業(yè),全面介紹軟件應(yīng)用系統(tǒng)架構(gòu)的基本原理、方法及經(jīng)典的實(shí)踐經(jīng)驗(yàn)。  無論您是一位剛?cè)腴T的系統(tǒng)開發(fā)者,或是一位專業(yè)的系統(tǒng)架構(gòu)師,或是一位經(jīng)驗(yàn)豐富的資深企業(yè)CTO,可能都會(huì)面臨如下的一些困惑或挑戰(zhàn)……  如何構(gòu)建一個(gè)大規(guī)模復(fù)雜系統(tǒng)?  如何成長為一個(gè)職業(yè)架構(gòu)師?  如何確保系統(tǒng)架構(gòu)的質(zhì)量?  如何進(jìn)行架構(gòu)重構(gòu)?  如何進(jìn)行系統(tǒng)架構(gòu)評(píng)審?  如何構(gòu)建產(chǎn)品線架構(gòu)?  ……  架構(gòu)之美,在于和諧。作為《架構(gòu)之美》叢書之一,《軟件架構(gòu)的藝術(shù)》聚焦于軟件架構(gòu)行業(yè),全面介紹軟件應(yīng)用系統(tǒng)架構(gòu)的基本原理、方法以及經(jīng)典的實(shí)踐經(jīng)驗(yàn),并創(chuàng)新性地提出為確保高質(zhì)量的架柯設(shè)計(jì)而應(yīng)該遵循的“架構(gòu)生命周期(Archiecture Lifecycle)”的理論。把握共同的規(guī)律、預(yù)知未來的發(fā)展、選擇最佳的路徑,盡可能縮短成長的煩惱,盡可能保持成熟的穩(wěn)定,讓軟件研發(fā)企業(yè)充分享受到屬于架構(gòu)整個(gè)生命階段的華彩,正是研究架構(gòu)生命周期的目的之所在!

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    軟件架構(gòu)的藝術(shù) PDF格式下載


用戶評(píng)論 (總計(jì)6條)

 
 

  •   應(yīng)該還不錯(cuò),沒來得及看呢
  •   經(jīng)典,好好學(xué)習(xí),加油??!
  •   書很好看,質(zhì)量不錯(cuò),發(fā)送很快
  •   不錯(cuò) ,適合沒事的時(shí)候拿來翻翻
  •   真的狠一般
  •   希望提高自己架構(gòu)方面的知識(shí)
 

250萬本中文圖書簡介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7