業務從何而生? 乙個具體的場景下遇到了問題不知道怎麼解決或解決的辦法很原始很笨拙,由此而產生了需求:在具體場景下需要解決某個問題,或者以更優的方式來解決。解決後,實現某事的效率大幅提公升,進而促進整體的效益。
對業務有整體而深入的理解, 才能設計出更好的系統架構來容納業務的有效處理和擴充套件。
業務抽象
業務可抽象為:1. 需求層面:使用者故事與需求; 2. 語義層面:實體、關聯、約束; 3. 實現層面:流程、規則與資料。
資料基礎
評估量級
通過對使用者故事的提煉和梳理,預估業務量級,可以在架構設計層面做出更好的決策,降低實現和運維成本。比如,限定時間範圍搜尋,限定某些篩選條件搜尋,減少需要考慮的活動業務量,就可以減少分庫分片的需要,同樣達到相同的目標。
概覽**組織結構
通讀配置檔案
熟悉使用的技術及框架
熟悉子系統之間的互動
從重要業務操作及**著手
熟悉系統的整體設計、主要技術棧以及執行部署;
持續溝通並理清業務處理邏輯;
仔細分析其中的重難點問題,確保在真正投入時有可接受的解法;
制定開發計畫和進度表;拆分任務,作出todo列表;
開發/測試/持續改進的交替進行;嚴格測試,保證 ut, ft 和 測試用例通過。
細緻周全地處理異常。
反饋、維護、改進和文件化。
細則業務處理模式
檢測許可權與可訪問性、日誌記錄(切面);
讀取請求,檢測引數有效性;業務處理邏輯、格式化處理結果並輸出;
**模式
從資料庫或快取中讀取資源記錄並檢測是否存在或是否合法;
對底層系統或第三方系統傳送指令, 做實際的業務處理;
根據指令結果更新資源記錄。
錯誤處理應牢記: 「開發軟體的本質是為了幫助他人」。如果所開發的系統已經能夠滿足人們的需要,即使它是不完美的,也是足夠有價值的;反之,如果系統不能滿足人們的需要,無法幫助到人們,即使它看上去很cool,也是沒有價值的。即使不程式設計,也可以通過其他方式去幫忙人們。
BUG經驗小談
公司運營後台出現了乙個特別奇怪的現象,乙個申請試用的活動狀態會自動莫名其妙的關閉。聽到這樣的問題描述的時候,我一臉不可置信。這個相關 是公司內的乙個研發同事寫的,運營後台的小夥伴找到我的時候我很納悶,為啥不去找寫的人?ps新運營後台的 最開始大部分都是我寫的。這個問題她們也不能重現,我就自己搗鼓著 ...
專案開發經驗談
我就大致描述一下我的專案團隊 算上美工5人 在這方面的情況 首先,介紹角色 專案組長 相當於專案經理吧,主要職責我就不多說了。2.介面工程師 是使用者介面互動方面的專家,決定與使用者互動的方式,當然很大程度也影響著介面 3.美工 設計和美化介面 4.高階程式設計師 設計總體程式結構,制定技術上的規範...
專案開發經驗談
做專案跟帶兵打仗一樣,需要在時間和空間上有乙個戰略布局。本人用打仗作為比喻,來說明專案策劃過程中,各項活動的重要性 一 戰略布局 瀑布模型是穩紮穩打的做法,步步為營,希望用乙個戰役解決全部問題。適合對敵人情況比較了解或者敵兵比較弱的情況。迭代模型是掃蕩,敵人在暗處,我在明處,怎麼打?集中優勢兵力,一...