噜噜噜综合,又色又爽又高潮免费观看,综合无码一区二区三区四区五区,中文字幕无码人妻aaa片,四虎成人精品永久网站

分析:項(xiàng)目團(tuán)隊(duì)需要重新認(rèn)識架構(gòu)師的職責(zé)

51CTO 發(fā)表于:12年08月21日 00:50 [轉(zhuǎn)載] 51CTO

  • 分享:
[導(dǎo)讀]架構(gòu)師是對所有重要事情做出決定的人。但是行業(yè)內(nèi)對于架構(gòu)師的負(fù)面認(rèn)識正越來越多,看來我們需要重新認(rèn)識架構(gòu)師的職責(zé) 成為一個優(yōu)秀的架構(gòu)師還有很長的路要走(軟件架構(gòu)案例分析和最佳實(shí)踐培訓(xùn)收獲)

架構(gòu)師是對所有重要事情做出決定的人。但是行業(yè)內(nèi)對于架構(gòu)師的負(fù)面認(rèn)識正越來越多,看來我們需要重新認(rèn)識架構(gòu)師的職責(zé)

成為一個優(yōu)秀的架構(gòu)師還有很長的路要走(軟件架構(gòu)案例分析和最佳實(shí)踐培訓(xùn)收獲)

2009-12-25到27日我們參加了某軟件培訓(xùn)機(jī)構(gòu)的的《軟件架構(gòu)案例分析和最佳實(shí)踐》課程培訓(xùn),開拓了眼界,收獲很多,劉老師講得不錯,非常有實(shí)戰(zhàn)經(jīng)驗(yàn),跟他學(xué)到了不少有關(guān)軟件架構(gòu)的知識,可惜的是3天的培訓(xùn)課程不可能完全掌握所有知識,師傅只是給我們打開了一扇門,指出了一個方向,成為一個優(yōu)秀的架構(gòu)師還有很長的路要走。

新視野 “軟件架構(gòu)”定義的決策因素

定義1:架構(gòu)是一系列重要決策的集合

一直以來,學(xué)習(xí)架構(gòu),使用架構(gòu),關(guān)注點(diǎn)都僅限于技術(shù)層面,沒有認(rèn)識到架構(gòu)和“決策”的關(guān)系,這說明架構(gòu)是一個很重要的概念,從軟件架構(gòu)概念產(chǎn)生的背景可以得出:

——-其實(shí),軟件架構(gòu)(Software Architecture,軟件體系結(jié)構(gòu))一詞早在20世紀(jì)60年代就被E.W.Dijkstra提出,但是直到20世紀(jì)90年代初才開始流行起來。為了提高軟件需求和軟件設(shè)計(jì)的質(zhì)量,軟件工程界提出了需求分析工程技術(shù)和各種軟件建模技術(shù)。但是在需求和設(shè)計(jì)之間仍然存在一條很難逾越的鴻溝,即缺乏能夠反映做決策的中間過程,從而很難有效地將需求轉(zhuǎn)化為相應(yīng)的設(shè)計(jì)。為此,軟件架構(gòu)的概念應(yīng)運(yùn)而生,并試圖在軟件需求與軟件設(shè)計(jì)之間架起一座橋梁,著重解決軟件系統(tǒng)的結(jié)構(gòu)和需求向?qū)崿F(xiàn)平坦過渡的問題。

定義2:軟件架構(gòu)為軟件系統(tǒng)提供了一個結(jié)構(gòu)、行為和屬性的高級抽象,由構(gòu)成系統(tǒng)的元素的描述、這些元素的相互作用、指導(dǎo)元素集成的模式以及這些模式的約束組成。

軟件架構(gòu)不僅指定了系統(tǒng)的組織結(jié)構(gòu)和拓?fù)浣Y(jié)構(gòu),并且顯示了系統(tǒng)需求和構(gòu)成系統(tǒng)的元素之間的對應(yīng)關(guān)系,提供了一些設(shè)計(jì)決策的基本原理。

還有很多其它的定義方式,但從這兩個定義可以看出,架構(gòu)對于決策的重要性,架構(gòu)師的工作對于項(xiàng)目的成功運(yùn)作具有決定性的作用。

“架構(gòu)師”不是空頭銜

——不是項(xiàng)目經(jīng)理,開發(fā)人員,測試人員的兼職角色

在軟件工程領(lǐng)域中,軟件架構(gòu)師實(shí)際上就是軟件項(xiàng)目的總體設(shè)計(jì)師,是軟件組織新產(chǎn)品的開發(fā)與集成、新技術(shù)體系的構(gòu)建者。Martin Fowler(著名軟件架構(gòu)和設(shè)計(jì)大師,軟件設(shè)計(jì)模式創(chuàng)始人)指出:

架構(gòu)師是對所有重要事情做出決定的人。

軟件架構(gòu)師在整個軟件開發(fā)過程中都起著重要作用,并隨著開發(fā)進(jìn)程的推進(jìn)而其職責(zé)或關(guān)注點(diǎn)不斷地變化。

在需求階段,軟件架構(gòu)師主要負(fù)責(zé)理解和管理非功能性系統(tǒng)需求,比如軟件的可維護(hù)性、性能、復(fù)用性、可靠性、有效性和可測試性等。此外,架構(gòu)師還要經(jīng)常審查客戶和市場人員所提出的需求,確認(rèn)開發(fā)團(tuán)隊(duì)所提出的設(shè)計(jì);在需求越來越明確后,架構(gòu)師的關(guān)注點(diǎn)開始轉(zhuǎn)移到組織開發(fā)團(tuán)隊(duì)成員和開發(fā)過程的定義上。

在軟件設(shè)計(jì)階段,架構(gòu)師負(fù)責(zé)對整個軟件架構(gòu)、關(guān)鍵構(gòu)件、接口的設(shè)計(jì)。

在編碼階段,架構(gòu)師則成為程序員的顧問,并且經(jīng)常性地要舉行一些技術(shù)研討會、技術(shù)培訓(xùn)班等。

隨著軟件開始測試、集成和交付,集成和測試支持將成為軟件架構(gòu)師的工作重點(diǎn)。

在軟件維護(hù)開始時,軟件架構(gòu)師就要開始為下一版本的產(chǎn)品是否應(yīng)該增加新的功能模塊進(jìn)行決策。

軟件架構(gòu)視圖

——軟件架構(gòu)是一種無法以簡單的一維方式進(jìn)行說明的復(fù)雜實(shí)體。

——多重軟件架構(gòu)之所以必不可少,是因?yàn)楦黝惿姹?用戶,客戶,開發(fā)人員,測試人員,維護(hù)人員,內(nèi)部操作人員,其他人員)需要從各自的角度理解和使用架構(gòu)。

常用的軟件架構(gòu)視圖:

功能視圖

開發(fā)視圖

進(jìn)程視圖

部署視圖

場景視圖

數(shù)據(jù)視圖

實(shí)現(xiàn)視圖

注:在我們的實(shí)際項(xiàng)目中,用的最多的是功能視圖,其次是開發(fā)視圖,沒想到還有這么多的視圖需要考慮。比如,在MB一期的設(shè)計(jì)中,我曾考慮過是否有必要作一個軟件的部署形式圖,最后猶豫中還是出了一個,現(xiàn)在看來是很有必要的了,至少讓運(yùn)維人員明白了MB的軟件部署是怎么回事。

新觀念

架構(gòu)的質(zhì)量屬性

在現(xiàn)實(shí)的系統(tǒng)中,決定系統(tǒng)成功或者失敗的關(guān)鍵因素中,滿足非功能需求往往比滿足功能性需求更為重要。從技術(shù)角度看,質(zhì)量屬性影響重要的架構(gòu)和設(shè)計(jì)策略。

質(zhì)量屬性分為系統(tǒng)質(zhì)量屬性和商業(yè)質(zhì)量屬性,其中系統(tǒng)質(zhì)量屬性又分為運(yùn)行時期的質(zhì)量屬性和開發(fā)時期的質(zhì)量屬性;商業(yè)質(zhì)量屬性包括政治因素,上市時間,成本和收益等。

我們雖然常常把性能,安全,可擴(kuò)展等詞掛在嘴邊,但往往在實(shí)際開發(fā)中這些因素都忽略了,為了趕工期,功能實(shí)現(xiàn)是第一位的,最后軟件做出來了,質(zhì)量卻不好,問題一堆。實(shí)際上,軟件的質(zhì)量不只是產(chǎn)品經(jīng)理應(yīng)該關(guān)注的,軟件架構(gòu)師也必須關(guān)注,給出建議,供管理層做出決策。MB的開發(fā)就是最明顯的例子,上頭規(guī)定了上線時間,滿足必須的功能,及時上線是附在開發(fā)人員身上的魔咒,開發(fā)人員只得加班加點(diǎn)的工作,最后軟件及時上線了,但后來在運(yùn)行效率,易用性等方面成為詬病。

架構(gòu)是有生命力的

運(yùn)維人員說:軟件運(yùn)行這么慢,架構(gòu)太爛了!

開發(fā)人員說:代碼這么難寫,架構(gòu)太不靈活了!

客戶說:軟件太不穩(wěn)定了,架構(gòu)有沒有問題啊?

XXX說:YYY架構(gòu)師太差勁了,怎么就沒有設(shè)計(jì)出一個好架構(gòu)?

在所有人看來,架構(gòu)必須是完美的,對所有人感覺都是良好的,能夠適應(yīng)未來的種種變化,能夠一勞永逸!

起初我也是這么認(rèn)為的,但是老師告訴了我們一個新觀點(diǎn):

架構(gòu)是有生命力的!

“架構(gòu)是有生命的,是不斷變化的。因此,設(shè)計(jì)架構(gòu)不能只想著要考慮到所有的問題,設(shè)計(jì)出一個能夠包容所有可能問題的架構(gòu),這幾乎是不可能完成的任務(wù)。因?yàn)樽兓墙^對的,架構(gòu)總是會修改,關(guān)鍵問題是何時修改?一定不能在系統(tǒng)問題頻出、已經(jīng)來不及補(bǔ)救的時候才去考慮修改,而要在潛伏的問題逐漸露出端倪之前展開行動。”

——FreeWheel CTO和聯(lián)合創(chuàng)始人 于晶純

亞馬遜,MySpace(進(jìn)行了6次架構(gòu)重構(gòu)),eBay,淘寶網(wǎng),這些大型網(wǎng)站都是不斷地對架構(gòu)進(jìn)行重構(gòu),對應(yīng)用進(jìn)行升級來應(yīng)對業(yè)務(wù)發(fā)展的需要的。

所以,我們不能一味的去指責(zé)FT的架構(gòu)如何差勁,MB的架構(gòu)如何糟糕,公司的這些產(chǎn)品線都是逐漸發(fā)展起來的,功能是一點(diǎn)點(diǎn)增加起來的,在功能開發(fā)第一的市場戰(zhàn)略下,架構(gòu)成了次要考慮的問題,所以我們不能說當(dāng)初的架構(gòu)設(shè)計(jì)的不好,問題是在于功能增加了,應(yīng)用變復(fù)雜了,而架構(gòu)沒有跟上變化。

架構(gòu)的思維

全局觀

首先,架構(gòu)師要有全局觀,不能瞎子摸象,要看到架構(gòu)的多個層面,多個角度。如架構(gòu)的多個視圖,架構(gòu)的質(zhì)量屬性,架構(gòu)設(shè)計(jì),架構(gòu)模式等,都是從項(xiàng)目的全局視角來看待問題的。

設(shè)計(jì)的本質(zhì)就是一種權(quán)衡,是各類相互制約的模塊間的一種權(quán)衡。明白這一點(diǎn),就要求架構(gòu)設(shè)計(jì)上對各個模塊應(yīng)有靈活的控制,以保證用戶期望目標(biāo)為設(shè)計(jì)出發(fā)點(diǎn),平衡各類資源的使用。

一個好的架構(gòu)的概念是完整的,模塊間的關(guān)系是清晰簡潔,弱耦合的,模塊的接口是抽象穩(wěn)定的,模塊的實(shí)現(xiàn)是強(qiáng)內(nèi)聚和可擴(kuò)展的。

[責(zé)任編輯:韓蕊]
Ruby
SAP分享了多年來對企業(yè)運(yùn)營變革的洞察,以及SAP Business Suite powered by HANA如何推動企業(yè)在對業(yè)務(wù)影響最小的情況下向?qū)崟r企業(yè)轉(zhuǎn)型,從而幫助企業(yè)實(shí)現(xiàn)更睿智的業(yè)務(wù)創(chuàng)新、更快速的業(yè)務(wù)流程和更簡化的業(yè)務(wù)交互。發(fā)布會現(xiàn)場,SAP公司宣布,中國最大的瓶裝水生產(chǎn)商——農(nóng)夫山泉成為基于 SAP HANA 的SAP Business Suite在中國的首家客戶。
官方微信
weixin
精彩專題更多
存儲風(fēng)云榜”是由DOIT傳媒主辦的年度大型活動;仡2014年,存儲作為IT系統(tǒng)架構(gòu)中最基礎(chǔ)的元素,已經(jīng)成為了推動信息產(chǎn)業(yè)發(fā)展的核心動力,存儲產(chǎn)業(yè)的發(fā)展邁向成熟,數(shù)據(jù)經(jīng)濟(jì)的概念順勢而為的提出。
華為OceanStor V3系列存儲系統(tǒng)是面向企業(yè)級應(yīng)用的新一代統(tǒng)一存儲產(chǎn)品。在功能、性能、效率、可靠性和易用性上都達(dá)到業(yè)界領(lǐng)先水平,很好的滿足了大型數(shù)據(jù)庫OLTP/OLAP、文件共享、云計(jì)算等各種應(yīng)用下的數(shù)據(jù)存儲需求。
聯(lián)想攜ThinkServer+System+七大行業(yè)解決方案驚艷第十六屆高交會
 

公司簡介 | 媒體優(yōu)勢 | 廣告服務(wù) | 客戶寄語 | DOIT歷程 | 誠聘英才 | 聯(lián)系我們 | 會員注冊 | 訂閱中心

Copyright © 2013 DOIT Media, All rights Reserved. 北京楚科信息技術(shù)有限公司 版權(quán)所有.