汽車之家二手車依托平安集團資源,聯合天天拍車,通過數據和科技賦能行業,實現C2B2C全鏈條的打通,并打造車況和車價的標準,進一步鞏固中國最大線上二手車交易服務平臺的領導地位。在C端,通過提供線上+線下賣車服務閉環,以及以真實車源+車史檔案+車況保障為基的誠信車服務,并配套責任險/車險/分期貸等金融產品,為賣車、買車用戶創造透明、可信任的二手車消費環境;在B端,通過打造數字化、智能化、生態化的二手車云平臺,賦能車商客戶進、銷、存全場景,提升車輛周轉效率,真正為中國二手車市場帶來全新的活力,創造獨一無二的價值。
2022年伴隨著一站式賣車業務的推進,業務已經從相對簡單的用戶和車商的信息業務逐步轉變為用戶到車商全鏈條交易業務,業務呈現出了多種業態,既包括原有的信息業務,也包括了交易、O2O等。新年伊始,隨著業務的發展,用戶在二手車業務的生命周期獲得了延長,用戶端和商家端在業務上結合得越發緊密。在此基礎上,還有新舊業務功能持續集成,以此來產生協同效應。越來越多的業務流程也導致了管控難度的提升以及流程上下游之間銜接點的增多。在這個業務發展的背景下,技術系統在支撐業務功能迭代時發現,由于業務的廣度和深度的增加,技術系統在實現業務目標時,服務與服務之間的調用鏈路增長,關系增多,業務目標服務與服務之間的轉化難度也在逐步提升,技術系統領域的復雜度也產生了新的增長。這些技術系統的問題會直接反映在業務目標的轉化上,體現在是否更快速、更高效。
技術團隊的目標是開發新功能和保障技術系統穩定運行。業務的實現嚴重依賴于技術系統的運行狀況,而越是復雜的技術系統,就越需要技術團隊來掌控其運行狀態。只有當技術團隊很好地掌握了技術系統的運行狀況時,才能助力業務目標的實現。提高技術團隊的掌控能力需要深入洞察技術系統的運行狀態。隨著技術系統的復雜度不斷提高,二手車技術團隊面臨著三個關鍵性洞察力問題。從業務視角來看,技術層面的監控系統缺乏對業務的深度監測和評估,鏈路監控無法實現對業務轉化鏈路的串聯監測,而僅有的基礎資源類監控指標無法反映業務結果。
圖片
二手車技術團隊作為為商業側服務的技術團隊,其目標都是支撐業務實現商業價值。技術團隊的核心問題在于提升商業轉化路徑上各個業務節點的技術質量。二手車技術團隊在技術層面需要提升對技術系統的洞察力,在業務層面需要確保商業轉化路徑的質量。上述兩個方面的訴求歸根結底都與技術系統的質量相關,既橫向保障業務在商業轉化路徑上的質量,又縱向保障技術系統在系統調用鏈路上的質量。綜上所述,技術團隊的任務是實現商業價值,而商業價值的實現路徑需要有很好的質量保障。技術團隊需要解決的問題是提升系統的洞察力,以夯實實現商業價值的基礎。
圖片
技術團隊如何實現商業價值?技術團隊可以通過優化業務流程、開發和實施高效的業務流程來提高公司的整體運營效率。也可以通過創新產品或服務、研發新技術或新產品來滿足市場需求,從而帶來商業價值,或者通過降低成本、優化技術方案來降低公司的運營成本等多種方式來在實現商業價值中做出貢獻。通過拆解技術團隊的日常工作,技術團隊在實現商業價值中的核心是兩個事項:編寫代碼和運行代碼,然后實現新功能、改進現有功能、修復錯誤、提高性能或降低成本等。所有這些產生商業價值的事情只有在代碼運行時才能提供,而不是在編寫時就可以提供。因為即使代碼設計模式適用、代碼注釋詳盡、數據算法高效,如果沒有運行,對于業務而言仍然沒有實現任何商業價值。運行中的代碼才是有商業價值的。因此,為了為業務提供最大價值,技術團隊需要盡可能深入地了解代碼運行時的狀態,而技術系統的度量指標通常是實現這一要求的唯一方法。
圖片
二手車技術團隊作為服務于業務側的技術團隊,希望能夠通過對技術系統的持續改進在實現商業價值中做出更多的貢獻。結合團隊的訴求和現實情況,行業內有各種各樣的監控系統,能夠實現技術系統端到端的監控,比如Prometheus等。同時,汽車之家內部也有一些自研的監控系統,基本能夠實現全覆蓋的監控。然而,技術系統的持續改進與帶來商業價值之間總是缺乏一個有效的鏈接。我們逐漸認識到單純部署一個或是幾個監控系統不能解決我們的訴求,我們需要的是一種能夠建立在基于數據的決策思想之上的方法,旨在提高軟件質量、性能和可維護性,在整個軟件開發生命周期中持續收集、分析和利用各種度量和指標,通過與業務側深度協作,通過有益的決策來推動持續改進。這與度量驅動開發(Metrics-Driven Development,簡稱MDD)的理念不謀而合。
度量驅動開發主張整個應用開發過程由指標度量驅動,通過實時度量指標來驅動快速、精確和細粒度的軟件迭代。度量驅動開發的理念,不但可以讓技術團隊實時感知技術系統的狀態,及時跟蹤定位并解決問題,而且可以幫助業務和運維團隊一起關注相關的業務指標。
圖片
度量驅動開發(Metrics-Driven Development)的理念理早是在2011年3月12日Etsy公司舉辦的一次技術交流會上,由Etsy核心平臺部負責人Mike Brittain提出的。
業界對于度量驅動開發有許多應用的案例和實踐,來自Gartner的《2023年重要戰略技術趨勢》中的“應用可觀測性”也介紹了類似度量驅動開發一致的理念。
應用可觀測性是指,以高度協調和整合的方式 在業務職能部門、應用和運維(I&O)團隊中應 用可觀測的數據,盡可能縮短行動與響應之間 的延遲,實現業務決策的主動規劃。
Prometheus官網的宣傳標語是From metrics to insight(從指標度量到洞察力)。
圖片
度量驅動開發的理念是需求階段就考慮設置關鍵指標監控項,隨著應用上線,通過指標了解系統狀態,通過對現狀的數字化和可視化,幫助業務對未來進行規劃和預測,進而實現業務改善。而且度量驅動開發是一種文化的紐帶,對于敏捷開發、持續集成、持續交付,以及各個職能崗位提升合作共贏的意識具有很大的幫助。
圖片
度量驅動開發可使所有可以測量的東西都得到量化和優化,進而為整個開發過程帶來可見性,幫助相關人員快速、準確地做出決策,并在發生錯誤時立即發現問題并修復。我們希望通過感知技術系統的運行狀態,并且不斷根據運行時的數據提供改進策略,將上線、監控、調試、故障調查及優化等納入設計階段,而不是等到系統部署后再去補充。相對于通過制定各種復雜、嚴格的研發規定,以及各種評審會議來確保技術系統的安全可靠、穩定運行,度量驅動開發的理念的特別之處在于,通過采集必要的監控信息,通過持續交付方式進行快速迭代并進行反饋和修正,所有決定都是基于對不斷變化的情況的觀察做出的。
圖片
二手車技術團隊在采用度量驅動開發的實踐探索過程中,總體分為4個階段,首先,依據二手車業務的范圍進一步圈定核心領域。其次,通過核心領取構建度量指標體系。再次,通過對于度量指標的監控協同業務側推動部分指標的改善,我們在此采用了最小可行產品(Minimum Viable Product,MVP)的策略,通過構建具有最少功能的版本,盡早地推出產品以測試反饋并驗證概念的可行性。最后在驗證效果后建立可視化的技術系統來推動整體的實踐探索更具易用性、擴展性的落地和發展 。
圖片
度量驅動開發那么首先需要解決的問題就是度量,也就是度量指標體系的構建,回顧探索實踐的過程,在實踐探索的過程中遇到的困難的也是度量指標體系的構建。度量指標體系的構建我們的目標是做到覆蓋盡可能全面的覆蓋,我們對于全面覆蓋總結為橫向和縱向2個方向上的覆蓋。首先,橫向需要滿足業務的廣度盡可能的納入更多的核心關鍵業務,其次,縱向需要將業務-技術縱深進行深入的挖掘覆蓋盡可能多的核心關鍵技術系統。
圖片
團隊在度量指標體系的構建中,圍繞業務流程的服務樹,通過業務流程中各個關鍵節點的指標的下鉆和穿透到極致,再通過參考Google SRE中提出的系統監控的四個黃金指標,構造業務-技術的全覆蓋度量指標體系。
二手車技術在系統建設階段完成了一個覆蓋業務上用戶端到商家端,技術上客戶端到服務端的全景監控系統的建設,核心功能包括數據可視化、業務鏈路定制和監控預警。首先,我們復用公司的數據處理能力,包括數據收集、清洗、轉換和存儲等基礎數據處理服務,通過復用它們,我們能夠迅速獲取數據處理能力,確保數據的準確性和一致性。另外,我們通過接入前端性能監控、云監控以及質量羅盤等監控系統,我們實現對整個技術系統的實時監控。在系統建設的技術選型上,我們選擇了低代碼平臺作為開發工具。低代碼平臺提供了可視化開發環境,減少了開發工作的復雜性,不僅加快了構建和迭代速度,還提高了系統的靈活性和可擴展性。全景監控系統的建設不僅有助于團隊更好地理解和管理其業務和技術系統,還為未來的創新和擴展奠定了堅實的基礎。
圖片
在上部分中對 CLS 的基礎理論進行了介紹,并通過相關示例演示了 CLS 值是如何計算的,接下來我們看一下在瀏覽器中如何通過工具對 CLS 進行跟蹤測量。
完成基于二手車業務的度量指標體系構建,完成設計近400個相關數據指標,實現了二手車業務流程和技術系統的全面覆蓋,具有重要意義。這一成果為二手車業務提供了全面的數據洞察,幫助業務和技術人員更好地理解業務進展和技術系統,從而做出更明智的戰略決策、提高效率、優化資源分配、改善客戶體驗,最終實現競爭優勢和可持續增長。這些指標不僅提供了深刻的業務洞察,還為數據驅動的決策和創新奠定了堅實的基礎。
商業價值提升,用戶買賣車信息的處理效率提升240%,用戶賣車信息的從車輛信息的提交再到將車輛信息通知商家進行處理這其中要經歷很多業務流程以及技術系統,通過對車輛信息數據處理流程時長的監測發現問題點,通過與業務方協作的方式,改進車輛信息數據的處理流程,提高了數據留轉與處理的時效,通過技術系統的改善提升了業務的運轉效率,提升了商業價值。
商業價值挽回,攔截異常車況報告解析訂單2000單,在車況報告解析積壓和延時的及時預警發現問題點,通過對異常情況的的及時跟進處理攔截異常訂單,實現商業價值的挽回。
度量驅動開發(Metric-Driven Development,MDD)在軟件工程領域扮演著關鍵的角色。它強調了度量數據在軟件開發過程中的重要性,這些度量數據可以是關于代碼質量、性能、可維護性、進度等各個方面的信息。
首先,度量驅動開發有助于質量的改進。通過定期收集和分析度量數據,技術團隊可以更好地了解軟件質量的狀態。這包括了解代碼質量、性能表現、可維護性等各個方面。當度量數據揭示出問題或潛在的缺陷時,團隊可以采取措施來改進質量,確保軟件達到高標準。
其次,度量數據可以用于目標設定。技術團隊可以根據度量數據來設定明確的開發目標。例如,他們可以使用性能度量來設定性能目標,代碼質量度量來設定代碼質量標準。將這些目標加入到技術團隊開發過程中的指導原則,有助于確保項目朝著期望的方向前進。
此外,度量數據可以提供決策支持。項目管理和決策制定者可以根據度量數據做出明智的決策。例如,他們可以根據度量數據決定是否進行技術債務的償還、是否進行性能優化、是否進行安全漏洞修復等關鍵決策。
持續改進是度量驅動開發的核心原則之一。通過分析度量數據,團隊可以識別問題的根本原因,并采取措施來不斷改進開發流程、工具和實踐,以提高效率和質量。最后,度量數據還有助于提高透明度和溝通。團隊成員可以共享度量數據,讓每個人都了解項目的狀態和質量,有助于更好地協作解決問題。
下一個階段重點建設的方向是監控工具的通用化建設,通用化的工具建設將更加靈活,允許團隊根據其特定需求進行定制和擴展,能夠滿足不同團隊和業務的需求。通用化的工具建設將更易于擴展,支持集成新的數據源、第三方插件和自定義腳本,以適應不斷變化的技術棧和復雜性。這將為團隊提供更大的靈活性,使他們能夠構建適合其獨特需求的度量驅動開發的解決方案,從而更好地理解和管理他們的技術系統和業務。
人工智能在軟件領域有廣泛的應用場景,比如AIOps等,未來支持度量驅動開發的工具系統需要更加自動化和智能化。機器學習和人工智能技術將用于分析監測數據,自動檢測問題、異常和趨勢,并提供實時的反饋和建議。通過機器學習和人工智能技術的應用將更有助于更精準的定位問題,更快地響應和解決問題,減少人為干預的需求,提高效率、可用性和安全性,降低成本,推動團隊更好地進行資源利用。
正如現代管理學大師彼得·德魯克所說的“如果你無法度量它,就無法改進它”,度量幫助我們更深刻認識軟件工程領域中的方方面面,設定改進方向,并衡量改進效果。
Metrics-Driven-Development https://legacy.devopsdays.org/events/2012-italy/proposals/MetricsDrivenDevelopment/
An Intro to Metrics Driven Development: What Are Metrics and Why Should You Use Them? https://www.freecodecamp.org/news/metrics-driven-development/ Metrics-Driven-Development https://sookocheff.com/post/mdd/mdd/
Metrics-Driven-Development https://www.infoq.com/articles/metrics-driven-development/
■ 二手車事業部-技術部-專項團隊
■ 2022年加入汽車之家二手車事業部,現任二手車技術部專項團隊的負責人,在基礎架構、軟件工程等領域有相對深入的了解。
本文鏈接:http://www.tebozhan.com/showinfo-26-15232-0.html技術團隊運用度量驅動開發提升質量:策略與實踐
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
上一篇: 純前端也可以訪問文件系統!
下一篇: 常用性能優化手段及在風控系統中的應用