軟體架構與架構師
架構一詞是舶來品,是Architecture的中文翻譯, 其英文的本意是來源於建築行業的建築藝術、建築(風格)和結構,引入到軟體領域裡面來以後,並沒有一個統一的定義。有的人將架構定義為:功能+設計+構造手段,我們可以通俗的理解為:總體設計和總體結構。
買過房子的人都知道5層以下的樓房一般是磚混結構,而高層和小高層的樓房都是框架結構,樓層越高對結構要求越高。軟體也是一樣,系統越龐大,生命週期越長,結構的重要性就越明顯。因此,隨著人們對軟體工程的深刻理解,將架構進行充分的強調是很自然的,正如人們越來越強調系統的需求分析,從而有了領域工程師和領域專家的概念一樣。其實強調軟體架構的最主要的目的有3個:
重用:人們希望系統能夠重用以前的程式碼和設計,從而提高開發效率;
擴充套件:人們希望在系統能夠保持結構的穩定的前提下很容易地擴充功能和效能,希望能夠“以靜制動“;
簡潔:常言道,簡潔就是美,好的架構一定易於理解,易於學習,易於維護,人們希望能夠通過一個簡潔的架構來把握系統;
正如我們可以很簡單地用磚混結構和框架結構來概括一幢大樓的結構,專家們也定義了一些術語來定義軟體的架構風格,如層次結構、B/S結構等。軟體架構設計是軟體設計的一部分,是其中的總體設計。軟體的架構設計有一定的創造性,但它畢竟是一個工程活動,架構的設計是有章可循的,有一定的規律性的,是可以重複的,有其穩定的模式。當然,在系統一開始很難可以建立一個完善的穩定的架構。迭代是軟體開發過程中必然的一個過程,這是人的思維活動的一個必然階段。
軟體架構師實際上就是軟體的總體設計師。首席設計師就是總設計師,打個通俗的比方:鄧小平是中國改革開放的總設計師,我們用現在的說法可以講,鄧小平是中國改革開放的首席架構師。架構師的形成一定是在實踐中積累起來的,而並非上了幾次培訓班,讀了幾本書就可以成功的,架構師是在工程實踐中培養出來的!
架構師也並非是萬能的。架構師是客戶需求和開發者之間的橋樑。在軟體行業中,一般提到的架構師是技術架構師,而忽略了領域架構師或者講是領域工程師的概念。一個好的領域專家一定是業務領域的架構師,他能夠給出某一個業務領域的架構,我們可以稱為業務架構,只有技術架構和業務架構緊密結合才有可能真正創造出一個好的系統!
【作者:任甲林,擅長於系統需求分析與設計,有豐富的專案管理經驗、研發管理經驗,曾管理過大型研發隊伍,現任北京賽柏科技有限公司諮詢師。本文轉自:http://dev.yesky.com/SoftChannel/72342376173010944/20050116/1901594.shtml】
【作者:劉偉 http://blog.csdn.net/lovelion】
相關文章
- 軟體架構師架構
- 軟體構架師之路
- 軟體架構與敏捷架構敏捷
- 架構之:軟體架構漫談架構
- API與軟體架構-介面API架構
- 軟體架構1.什麼是軟體架構架構
- TOGAF企業架構與軟體架構的對應圖架構
- 軟體架構模式之微服務架構架構模式微服務
- 軟體架構風格——規則架構架構
- 趣頭條 中介軟體架構師架構
- 中介軟體產品架構師招聘架構
- 軟體架構師之特殊視角架構
- 軟體架構師的工作職責架構
- IBM架構師分享:極簡主義軟體架構 - Neal HuIBM架構
- 趣頭條 架構部 急招 中介軟體研發工程師/架構師架構工程師
- 架構師修煉之道(二)——架構?設計?架構師?架構
- 架構學習筆記系列四——架構師軟文架構筆記
- 什麼是軟體測試架構師架構
- 軟體測試架構師的職責架構
- 軟體設計、架構與 UML 建模架構
- 關於軟體架構和業務架構的思考架構
- 『網際網路架構』軟體架構-mybatis體系結構(14)架構MyBatis
- 軟體架構師或解決方案架構師必讀的五本書 - javarevisited架構Java
- 微服務與架構師微服務架構
- 軟體架構簡介架構
- 軟體架構入門架構
- 軟體架構設計架構
- 架構師架構
- 架構實戰--軟體架構設計的過程架構
- 讀書筆記 之《軟體架構設計: 大型網站技術架構與業務架構融合之道》筆記架構網站
- 軟體測試架構師受歡迎嗎?架構
- Java軟體架構師所要需的東西Java架構
- 軟體測試架構師修煉之道 (一)架構
- 軟體測試架構師修煉之道 (二)架構
- Java軟體架構師-25個關注點Java架構
- 阿里架構師,講述基於微服務的軟體架構模式(附資料)阿里架構微服務模式
- 架構師所需的硬實力與軟技能架構
- 單體架構到垂直架構架構