架構師:我們需要頂層設計

來源:互聯網
上載者:User
架構師:我們需要頂層設計 背景:

某公司,建立的程式又被推倒,外人覺得很奇怪,這個程式的主管非常敬業,關注到了程式每一個細節,甚至包括每一個按鈕的文字和位置。
這個主管很委屈,他說,他完全是按照客戶需求製作的,客戶怎麼說的,他就怎麼做了,難道有錯?!但是,這個程式還是被推倒了,當然也有其公司派系鬥爭的因素在裡面。但是,不得不引起我們的注意,這個程式敗就敗在了太拘泥於細節,而忽略了頂層設計被客戶牽著鼻子走,想知道客戶自己說什麼嗎?
||| |
客戶說:<我說的就一定對嗎?> 頂層設計——規劃。當提到這個詞的時候,很多程式員很不屑,規劃?不就是需求嗎?和架構設計有啥區別?就寫寫PPT有那麼重要嗎?我們說一個好的程式開發的設計應該包含如下層次,如所示:   一、設計分為三個層次1、第一層次,資訊系統規劃(項目或產品規劃)

我們稱之為規劃,這個層次是對整個系統在宏觀中的地位的把握。如果從一個大型企業的高度看,應該包含整個企業的時間與空間的集合體。

什麼是空間?空間就是涵蓋到企業中的各個資料環節以及保證關鍵的資料流走向的合理,並確保調度最佳化。頂層模組設計需要研究需要關注的各個業務塊之間的結構關係,研究業務架構的整合模式。
行業內比較有名的業務架構,如:eTom業務架構,ITIL等。 什麼是時間?
時間就是,企業未來發展以及企業所處行業的整體發展的預期,要兼顧發展才可以從規劃的角度使應用系統不過時。只有從時間和空間的三維角度進行思考,才可以得出合理的規劃。  2、第二個層次,是架構設計架構設計是從程式架構的設計方式角度出發,建立一種合理的程式邏輯的構架方式,也是時間與空間的集合體。 空間:滿足設計會話,利用架構設計適應各個模組的構建方法,使程式邏輯運行於程式的各個模組中而遊刃有餘,儘可能避免超出架構設計模組無法構建的應用需求。 時間:滿足頂層設計規劃,同時兼顧程式未來發展,好的架構設計構造出的程式可能會用很多年不會變。 3、第三層,是微觀設計 這個是程式員在處理具體應用程式編寫程式時的創新與設計,當然其首要前提是滿足上面兩個層次的設計。  二、架構設計與規劃的區別 架構設計是程式架構構建方式作為其關注點,更多的探討的是該程式如何滿足規劃需求的結構健壯性。而作為頂層設計的規劃,更多的是從產品、系統、業務,整體宏觀的角度考慮整體的模組地位與架構,並不關注其具體實現方法。比如,商務邏輯分為幾個層次這個問題是規劃,這幾個層次或模組之間的資料關聯方式用EAI還是EDI還是WebService還是什麼方式的問題就是架構設計。 三、忽略架構設計和規劃設計的危害

業內相當一部分人都認為,找幾個會編程式的程式員,就可以做出產品,就可以接活兒了。

可能可以,然而,如果是一個需要若干年持續進行的產品或系統,沒有架構設計是短視的,其前期很快搭建後期捉襟見肘。

還有想當一部分人認為,有了架構設計和幾個會編程的程式員就可以做出產品和搭建應用系統了。

這也確實可以,但是如果面對一個更複雜的系統,缺乏頂層設計就會陷入關注細節關注需求,被需求牽著鼻子走的路上去。

 我的微博:http://weibo.com/useway  鐘聲,《Java程式員,上班那點事兒》作者 2012-4-18   謝謝大家!!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.