重构业务系统,我是这样做的
重構,是任何一個技術團隊都無法繞過和回避的話題。
重構的原因有很多,可能是伴隨著業務的發展與升級,系統無法快速支持需求迭代,這時就有了重構的念頭,一般情況下不建議對老系統進行重構,畢竟重構是有代價的。
我最近參與了一個重構項目,接下來給大家分享下,我在重構業務系統過程中的經驗總結。
1. 了解系統
接到重構任務后,不要立刻動手執行重構,而是對當前的業務流程和架構狀態有個清晰的了解,如果開發過當前系統的同事還在公司,一定要拉著同事好好討論。
我們要知道系統一定是給人用的,是給哪些人用的?不同的人使用系統的側重點有哪些不同?他們使用系統主要是解決什么問題?這些問題我們一定要弄清楚。
要知道怎么給自己創建不同角色的用戶,然后登錄系統進行操作使用,如果涉及到了一些專有名詞,一定要和團隊成員溝通并達成一致。
2. 業務流程圖
通過了解系統之后,清楚業務的核心流程,這時要按照理解繪制 業務核心流程圖,這里面涉及到與各系統的交互,需要考慮跨系統之間的交互可否使用異步完成,盡量減少循環調用的情況,同時還要確定出當前系統的邊界。核心流程圖畫好了,還要根據不同的業務分支繪制 業務各分支流程圖。
這種圖有很多工具都可以畫,軟件可以使用 EdrawMax,在線版可以使用 ProcessOn。
3. 業務功能模塊圖
根據業務流程圖、業務各分支流程圖,我們要確定出哪些功能模塊?各功能模塊之間是如何交互的?原來數據是如何存儲的?根據以上問題,我們要繪制 業務功能模塊圖 ,然后再繪制 業務各模塊詳細圖。
根據模塊詳細圖,需要畫出清晰的層次結構,梳理出 提供給他方的接口(約定接口名稱) 和 依賴他方的接口,這時還要考慮規劃出系統需要的基礎服務功能,比如日志記錄,監控預警等,然后根據功能點考慮分工,并評估出排期。
4. 約定時間
接口文檔約定完成時間
開發完成時間
聯調完成時間
自測完成時間
提測時間
上線時間
如果開發時間比較長,開發期間還要約定 “里程碑時間” ,整體采取前緊后松的節奏,先往前趕,保證在 “里程碑時間” 符合預期。
5. 約定規范
編碼規范
代碼管理規范
例會規范(早、晚會制度)
例會規范,讓項目人員輪流主持,鼓勵每人發言,及時給予反饋。
6. 非技術問題
舒緩團隊的壓力,給予團隊更多的鼓勵,定期向團隊同步狀態,得到大家的理解和支持,還有一些無法把控的各系統間交互溝通,我們要做到與各對接方坦誠溝通。
7. 上線準備
上線前做好上線準備,充分準備出需要提前配置的東西,同時想好 B 方案。
8. 上線后復盤
這個點非常重要,總結這過程中的經驗與不足,同時表揚大家做了一件很牛X的事情,團建一波 Happy 起來。
小結
以上,僅供參考。
上面的這個過程,其實是重點關注了 研發計劃管理 和 研發項目管理 ,關于 研發質量管理 如果沒時間的話,可以上線后再制定計劃完善。
總結
以上是生活随笔為你收集整理的重构业务系统,我是这样做的的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RC专题:阻容串并联电路
- 下一篇: 融资租赁系统-覆盖业务全场景数据服务