天天看點

談談軟體設計

   先看一下軟體設計的四個案例:

   1.某項目要求在很短時間内完成,而且客戶對系統的目前認識還是比較初步的,你還打算怎樣設計這個系統?

   2.某軟體公司接了一個“網頁+資料庫”類型的項目,這類項目已經做過多個,但這次的業務卻是新的,你怎樣考慮這個項目的設計?

   3.某軟體公司已經成功的為n個醫院做了管理系統,現在需要為一家新的大醫院做類似這個系統,你會怎樣考慮這個系統的設計?

   4.你接到一個任務,要做一個即時戰略遊戲,目标是要在目前遊戲市場找中殺出一條血路,你怎樣考慮這個遊戲的設計?

   以上四個案例各種特點,分别代表4種“典型”:

   1.需求很朦胧,工期很緊,技術上基本上沒有積累。

   2.需求是心的,但可以重用“網頁+資料庫”的技術架構。

   3.需求是類似的,技術架構也是類似的,相信你會直接重用之前的系統。

   4.這是一個需求創意和高技術含量的遊戲,而遊戲軟體的需求和技術都是充滿挑戰的。

   上述4種情況,相信你采取的設計政策是不一樣的,你可能會發現所謂的優秀設計沒有固定的标準。

   通過你覺得優秀設計的标準是什麼?是“高效、可靠、易用、安全、可擴充、相容性強、移植性強……“麼,我覺得軟體設計應該随機應變,軟體就應該設計出高成本效益。

    優秀的設計應具備以下特點:

    1.優秀的設計都是需求驅動的,不熟悉需求就做出來的設計是不靠譜的

    2.優秀的設計應該是目前團隊能了解能實作的,太超前的設計項目團隊做不出來,這個設計隻能是擺設;

    3.優秀的設計應充分考慮目前各種限制條件,适當做出平衡,能保證達成項目的目标;

    4.優秀的設計能盡量降低項目的整體工作量,讓整個項目更加可控。

   優秀的設計是需要從分析需求開始的;架構設計是全面考慮各種需求、項目的工期限制預算限制,還有項目組人員水準後綜合做出來的一種平衡。

談談軟體設計

繼續閱讀