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

成就職業(yè)理想:九十七條架構(gòu)師必知的事情

51CTO 發(fā)表于:11年06月29日 10:16 [轉(zhuǎn)載] 51CTO

  • 分享:
[導(dǎo)讀]本文是劉昆云編譯的,文中列舉了97條架構(gòu)師應(yīng)該了解的事情,希望對你有所幫助。

21. Avoid Scheduling Failures byNorman Carnovale

【避免延期】

人的工作能力是有限的。同樣的工期內(nèi)要增加工作量,就難免延期。不增加工作量但是強(qiáng)求縮短工期反而常常導(dǎo)致延期。因?yàn),趕工通常造成設(shè)計(jì)不良、缺陷數(shù)量上升、測試不足等問題,日后處理這些問題反而需要更多的時(shí)間。因此,碰到有人要求縮短工期,應(yīng)堅(jiān)決主張?jiān)üて。確實(shí)必須縮短工期的,就要將部分非必需功能從開發(fā)任務(wù)中剔除,留待下一期開發(fā)中去處理。這是一個(gè)協(xié)商談判的過程,架構(gòu)師要有一定的技巧才能處理好。

22. Architectural Tradeoffs by Mark Richards

【架構(gòu)中的取舍】

沒有哪個(gè)系統(tǒng)能同時(shí)做到高性能、高可用、高安全、高通用。架構(gòu)師要帶領(lǐng)同事和客戶開誠布公地溝通,先滿足重要的目標(biāo),再滿足次要的目標(biāo)。

23. Database as a Fortress by DanChak

【數(shù)據(jù)庫即堡壘】

開發(fā)團(tuán)隊(duì)的人員是流動的,用戶的人員也是來來往往的,但是架構(gòu)師要保證有一個(gè)東西不變,那就是數(shù)據(jù)庫結(jié)構(gòu)。從項(xiàng)目的第一天,就要抱著建造堡壘一樣的態(tài)度設(shè)計(jì)數(shù)據(jù)庫,使它能經(jīng)歷時(shí)間流逝和需求微調(diào)的考驗(yàn)。

24. Use uncertainty as adriver by Kevlin Henney

【以不確定為動力】

生活中人們期待有多種選擇,可如果自己設(shè)計(jì)軟件,卻往往喜歡省事,在幾個(gè)選項(xiàng)中只采用一個(gè)。如此一來,軟件對用戶就不那么平滑順手。一個(gè)設(shè)計(jì)是否良好,是用修改所需的成本來衡量的。當(dāng)遇到技術(shù)上的選擇時(shí),不要匆忙決定,要退一步想想有沒有不進(jìn)行選擇的辦法?只在是非分明、條件明確的情況下才需要選擇。

25. Scope is the enemy ofsuccess by Dave Quick

【項(xiàng)目規(guī)模是成功的敵人】

架構(gòu)師如果好大喜功,不切實(shí)際地?cái)U(kuò)充項(xiàng)目的范圍,在時(shí)間、人力、物力、功能、質(zhì)量等級、交付難度、風(fēng)險(xiǎn)系數(shù)、約束條件等方面不斷加碼,使項(xiàng)目變大、變復(fù)雜,那么就是在促使項(xiàng)目走向失敗。當(dāng)項(xiàng)目規(guī)模擴(kuò)充時(shí),失敗的可能性也在以更快的速度增加。以下是避免規(guī)模增長的幾個(gè)策略:

(1). 求真務(wù)實(shí):真實(shí)的需求是什么(客戶的底線在哪里)?

(2). 各個(gè)擊破:這個(gè)項(xiàng)目不能再分解成幾個(gè)各自獨(dú)立的小項(xiàng)目嗎?

(3). 主次有別:哪些是重要而穩(wěn)定的需求?哪些是次要而易變的需求?

(4). 及早發(fā)布:錯(cuò)誤是不可完全避免的,早點(diǎn)讓用戶見到作品就是給自己留下改正錯(cuò)誤的時(shí)間。

26. Reuse is about people andeducation, not just architecture byJeremy Meyer

【重用要靠受過教育的人員】

一個(gè)設(shè)計(jì)良好、漂亮、可重用的框架或者代碼庫,只能由了解它、會用它、相信它的人來使用。

(1). 了解:沒有人會去查找自己不知道的東西,只有在公司中將它的信息推送到開發(fā)人員和設(shè)計(jì)人員面前,他們才會了解它。

(2). 會用:一點(diǎn)便通的人很少,大多數(shù)人必須經(jīng)過培訓(xùn)才會使用它。

(3). 相信:新來的人往往瞧不起舊的東西,他們傾向于通過重頭編寫來證明自己的才能,要設(shè)法讓他們相信重用成熟穩(wěn)定的組件框架勝過自己編寫。

27. There is no 'I' inarchitecture by Dave Quick

【架構(gòu)中沒有“我”字】

不成熟的架構(gòu)師愛犯的毛病是:以為自己比客戶懂需求;把開發(fā)人員看作實(shí)現(xiàn)自己主張的資源;聽不進(jìn)和自己不同的意見。

以下認(rèn)識有助于架構(gòu)師的成長:

(1). 不是架構(gòu)師決定架構(gòu),是完整準(zhǔn)確的需求決定架構(gòu),因此要密切接觸客戶進(jìn)行需求分析。

(2). 架構(gòu)不是架構(gòu)師一個(gè)人的,是整個(gè)團(tuán)隊(duì)的,架構(gòu)師需要隊(duì)員遠(yuǎn)勝于隊(duì)員需要架構(gòu)師,因此要從心底尊重他們、團(tuán)結(jié)他們。

(3). 模型不算是架構(gòu),只有能用的模型才是架構(gòu),因此要和組員一起進(jìn)行演練以便檢查確認(rèn)模型能支撐需求。

(4). 自我肯定、自我保護(hù)是人的天性,遇到壓力便表現(xiàn)出來,因此要每天花幾分鐘審視自己:是否對他人表達(dá)了應(yīng)有的敬意和謝意?是否冷淡了他人的善意?是否真的明白他人為何與自己意見不同?

28. Get the 1000ft view by Erik Doernenburg

【生成低空視圖】

要了解地面的情況,需要適當(dāng)?shù)母叨。?0000英尺的高空只能看到大塊的輪廓,不能看到它的結(jié)構(gòu);在地面則迷失在身邊的細(xì)節(jié)里而失去整體感覺;在大約1000英尺的低空,剛好能看清楚地面的結(jié)構(gòu)。類似地,要了解軟件系統(tǒng)的質(zhì)量也要適當(dāng)?shù)木嚯x。系統(tǒng)架構(gòu)圖太宏觀,很多關(guān)系不清楚;源代碼又太微觀,關(guān)系太瑣碎;只有在類和方法這一級生成圖表,才能評估軟件的質(zhì)量。

29. Try before choosing by Erik Doernenburg

【試了再選】

選擇哪一個(gè)框架?使用哪個(gè)代碼庫?架構(gòu)師不能坐在象牙塔的頂端做出設(shè)計(jì)并頒布給開發(fā)人員使用。在做出技術(shù)選擇之前,他應(yīng)該放低身段,找開發(fā)人員商量,讓他們對可選的幾種方案分別實(shí)現(xiàn),再提出各自的建議,最后由架構(gòu)師綜合分析決定使用哪一種方案。

30. Understand The BusinessDomain by Mark Richards

【了解業(yè)務(wù)領(lǐng)域】

軟件架構(gòu)既要采用高超的技術(shù),又要深刻地反映業(yè)務(wù)領(lǐng)域的特點(diǎn),才能實(shí)現(xiàn)業(yè)務(wù)目標(biāo)。比如,保險(xiǎn)業(yè)適用面向服務(wù)的架構(gòu),金融業(yè)適用基于工作流的架構(gòu)。了解業(yè)務(wù)的最高標(biāo)準(zhǔn),就是能用業(yè)務(wù)語言和公司的老總級人物交流。業(yè)務(wù)領(lǐng)域的知識是不斷更新的,比如汽車保險(xiǎn)業(yè)新出現(xiàn)的一種臨時(shí)停車保險(xiǎn),就是一種新的業(yè)務(wù)動向。能夠把握領(lǐng)域發(fā)展動向,就能未雨綢繆,當(dāng)公司有需要時(shí)可以迅速提出解決方案。

31. Programming is an act ofdesign by Einar Landre

【編程是創(chuàng)意設(shè)計(jì),不是照圖施工】

汽車廠要出一輛新汽車,必須經(jīng)歷概念車創(chuàng)意設(shè)計(jì)、流水線生產(chǎn)這兩大階段。軟件編程中,主要的工作是都是創(chuàng)意設(shè)計(jì),很少照本宣科的。既然大家都知道設(shè)計(jì)新車型、開發(fā)新藥物這樣的工作往往不能按時(shí)完成,也不能確保成功,那么我們也不要指望軟件編程可以精確預(yù)測。

32. Time changes everything by Philip Nelson

【時(shí)間改變一切】

隨著時(shí)間的流逝,當(dāng)初各路高手所設(shè)計(jì)的高瞻遠(yuǎn)矚、機(jī)關(guān)算盡的框架、模式、范例、算法,有的如過眼云煙般消散得無影無蹤了,有的則最終流傳下來。歷史帶給我們?nèi)齻(gè)啟示:

(1). 堅(jiān)持有價(jià)值的領(lǐng)域:如果我們熟悉的領(lǐng)域已經(jīng)沒有價(jià)值,要勇于探索新的領(lǐng)域,即便早期的嘗試不成功,也要克服困難堅(jiān)持下去,正確的領(lǐng)域總會有正確的方案,盡管它也許來得很晚。

(2). 簡單規(guī)則:克服我們自身把問題復(fù)雜化的傾向,讓方案保持簡單。想一想,那些復(fù)雜的東西,如今哪個(gè)還在呢?

(3). 珍惜舊東西:雖然過去的東西不完全適合于現(xiàn)在的情景,可是把經(jīng)歷了時(shí)間考驗(yàn)的東西修一修,不是也很有把握滿足新的需要嗎?

33. Give developers autonomy by Philip Nelson

【讓開發(fā)人員自治】

架構(gòu)師的職責(zé)不是要對開發(fā)人員如何工作進(jìn)行指點(diǎn)。架構(gòu)師的責(zé)任是在開發(fā)人員致力于編制類和方法、進(jìn)行單元測試、創(chuàng)建數(shù)據(jù)庫時(shí),保證這些部分合在一起能正常運(yùn)行。了解他們的痛處,做出對應(yīng)的改進(jìn)。測試?yán)щy嗎?那就改善接口并減少依賴。領(lǐng)域抽象性不夠或過度?那就澄清它。開發(fā)順序不清楚?做個(gè)計(jì)劃吧。開發(fā)人員使用API時(shí)總犯相同的錯(cuò)誤?那要把API的設(shè)計(jì)調(diào)整得更簡單明白。人們真的理解設(shè)計(jì)嗎?和他們交流闡述吧。不確定哪些地方需要伸縮性嗎?去和客戶交流并了解他們的業(yè)務(wù)模型吧?傊,架構(gòu)師要給開發(fā)人員創(chuàng)造一個(gè)工作環(huán)境,而不是干涉開發(fā)人員份內(nèi)的工作。

34. Value stewardship overshowmanship by Barry Hawkins

【做管家,不做演員】

管家是為雇主精打細(xì)算的人,演員是為觀眾嘩眾取寵的人。

架構(gòu)師提出的解決方案,關(guān)系到公司的人力、財(cái)力、物力和時(shí)間。公司把架構(gòu)師職責(zé)授予一個(gè)人,他就要替公司平衡投入和產(chǎn)出比例。正如理財(cái)師要對客戶承諾收益率一樣,架構(gòu)師也要時(shí)刻考慮公司的收益,而不能把項(xiàng)目當(dāng)成自己顯擺的舞臺。

35. Warning, problems in mirror maybe larger than they appear by Dave Quick

【問題可能大于表象】

項(xiàng)目中出現(xiàn)問題,往往得不到重視,最后難于收拾。原因主要有:

對問題習(xí)以為常的溫水煮青蛙效應(yīng);

人們對新經(jīng)歷、新知識的畏懼心理;

開發(fā)人員不以為然的樂觀主義傾向;

組員只關(guān)心個(gè)人目標(biāo)不重視全局目標(biāo);

人都有盲點(diǎn),尤其是對自己的缺點(diǎn)視而不見。

要克服以上不利因素,可以從這幾方面著手:

建立組織級別的風(fēng)險(xiǎn)管理機(jī)制;

不搞少數(shù)服從多數(shù),要鼓勵(lì)悲觀論調(diào)并進(jìn)行討論,進(jìn)而提出中立的對策;

敞開心胸,不斷聽取客戶意見;

讓自己信任的人指出自己的盲點(diǎn)。

36. The title of software architecthas only lower-case 'a's; deal with it by Barry Hawkins

【軟件架構(gòu)師是新興職業(yè)】

軟件架構(gòu)師是一門新興的職業(yè),可是它具有律師、醫(yī)生、建筑師一樣的精英特質(zhì)。大家努力吧!

37. Software architecture hasethical consequences by Michael Nygard

【軟件架構(gòu)也有倫理后果】

說到人權(quán)、身份盜用、惡意程序等等,人們知道軟件架構(gòu)可以助人行善,也可以助人作惡。其實(shí)除了大是大非問題,平時(shí)很多地方都值得進(jìn)行倫理思考。比如說,一個(gè)軟件好用則千萬個(gè)用戶都省事,一個(gè)軟件難用則千萬個(gè)用戶都麻煩,他們的輕松愉快或者垂頭喪氣不就取決于我們架構(gòu)師嗎?為了他們長久的簡便,我們要承擔(dān)一時(shí)的幸苦。軟件影響太多的人了,不要設(shè)計(jì)違背倫理的軟件,哪怕一點(diǎn)點(diǎn)都不要做。

38. Everything will ultimatelyfail by Michael Nygard

【萬物皆會出錯(cuò)】

硬件會出錯(cuò),所以用冗余來對付。

軟件會出錯(cuò),所以用監(jiān)控軟件來對付?墒潜O(jiān)控軟件也是軟件啊,所以錯(cuò)誤還是不可避免。

網(wǎng)絡(luò)是由硬件和軟件組成的,所以網(wǎng)絡(luò)的錯(cuò)誤就是難免的了。

怎么辦?我們不能拒絕錯(cuò)誤,我們必須接受錯(cuò)誤。承認(rèn)萬物皆會出錯(cuò),接著設(shè)計(jì)出適當(dāng)?shù)氖∧J剑拍茏屛覀兊南到y(tǒng)安全地出錯(cuò)。例如,承認(rèn)汽車是會撞車的,然后設(shè)計(jì)可壓縮的部件來吸收撞擊的能量,起到保護(hù)乘客的作用。在軟件系統(tǒng)中,如果不設(shè)計(jì)失敗模式,失敗偏偏就會讓你措手不及。

39. Context is King by Edward Garson

【情景為王】

情景為王,簡單性是它謙恭的仆人。所謂情景,指的是業(yè)務(wù)驅(qū)動力、新興技術(shù)和思想潮流。首先要敞開思路,關(guān)注情景中各種各樣的因素,給它們排出優(yōu)先級,然后才能制定出簡單的解決方案。

40. It's all about performance by Craig L Russell

【處處都要考慮性能】

如果有一種車寬敞、舒適、省錢又環(huán)保,就一定賣得好嗎?非也。一輛牛車即使達(dá)到這樣的標(biāo)準(zhǔn)也未必有幾個(gè)人去買。原因就在于它速度太慢了。軟件設(shè)計(jì)也是一樣,功能重要,性能也一樣重要。性能不單單指系統(tǒng)響應(yīng)時(shí)間,還包括用戶操作步數(shù)、用戶思考時(shí)間、用戶輸入時(shí)間等。性能還包括那些自動執(zhí)行而不與人互動的部分,比如每日夜間處理任務(wù)。試想一下,如果一個(gè)每天夜間執(zhí)行的任務(wù)到了第二天的夜間還沒執(zhí)行完,將會帶來難以預(yù)料的后果。

[責(zé)任編輯:韓蕊]
Ruby
SAP分享了多年來對企業(yè)運(yùn)營變革的洞察,以及SAP Business Suite powered by HANA如何推動企業(yè)在對業(yè)務(wù)影響最小的情況下向?qū)崟r(shí)企業(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)所有.