close

互聯網產品重構 -網頁設計


  1、為什么要進行產品重構
  舊系統人員流失,系統的業務規則、原始需求誰都不清楚,需求文檔、使用文檔、架構文檔極其缺乏,成為一個無底洞,可維護性很差。

  舊系統越來越復雜,潛規則太多,原本修改一個小需求,一不小心搞得上線后影響一堆用戶

  舊系統的業務架構、技術架構無法滿足新的業務模式需要

  舊系統性能無法滿足公司業務高速發展的需要

  舊系統的產品生命周期已經到頭,需要延長期生命周期

  等等

  2、產品重構 VS. 重做新產品
  對現有產品進行重構還是重新做一套全新的系統并沒有標準答案。技術人員們都傾向于重做新系統,并都傾向于高估自身的管理能力、架構設計能力,大家都會承諾完美的架構、完美的產品規劃。但如果沒解決根本性的管理問題,重構或是重做宿命都是一樣的。這些管理問題包括產品規劃能力、業務架構能力、項目管理能力、架構管理能力、架構設計能力等等。

  在管理能力尚未改善的情況下,怎樣保證重做新系統時候不落入舊系統“新做系統,承諾完美架構->管理失衡,系統維護陷入混亂->再重做新系統”同樣的命運。好的架構是管理出來的,不是設計出來的。

  產品重構第一困難的是反向工程過程階段,必須搞清楚現有系統的遺產狀況。對于一個在線運營的系統,不管是重構還是重做都必須經歷此過程

  產品重構第二困難的是舊系統遷移到重構系統的過程。怎樣做到不影響現有客戶使用的情況下完成灰度切換,這是最大的挑戰。不管是重構或是重做都必須經歷此過程


  3、關于產品重構的思考

 

 

  4、參考資料

  The Product Re Architecture

  利用 RUP 對遺留系統進行逆向工程

  軟件架構的藝術

  源文:http://www.yeeach.com/2010/07/18/%e4%ba%92%e8%81%94%e7%bd%91%e4%ba%a7%e5%93%81%e9%87%8d%e6%9e%84-2/


arrow
arrow

    Greenspark 發表在 痞客邦 留言(0) 人氣()