最終選擇了單體應(yīng)用,放棄了微服務(wù)架構(gòu)
1 前言
今年年初,劉潤(rùn)老師在他的一個(gè)短視頻號(hào)上發(fā)布了一段視頻:《錢(qián)越來(lái)越難賺了,怎么辦》,在他看來(lái)錢(qián)越來(lái)越難賺了的原因主要有五個(gè):效率被技術(shù)推動(dòng)、行業(yè)稀缺性流動(dòng)、消費(fèi)者需求變化、組織內(nèi)部熵增、經(jīng)濟(jì)形勢(shì)不好;他認(rèn)為的最佳應(yīng)對(duì)策略是:卷與熬,鞏固基礎(chǔ)、修煉內(nèi)功,讓自己別死掉,直到春天來(lái)臨。
這段視頻在企業(yè)內(nèi)部激起了不小的討論,在當(dāng)前的這個(gè)錢(qián)越來(lái)越難賺的行業(yè)背景下,數(shù)禾應(yīng)該如何卷和熬成為了數(shù)禾人必須思考的問(wèn)題, 聚焦到技術(shù)團(tuán)隊(duì)內(nèi)部,呼應(yīng)公司層的決策,也采取了一系列舉措:建立BizDevops流程體系、引入DDD指導(dǎo)應(yīng)用架構(gòu)實(shí)踐、建立研發(fā)效能度量體系;然而這些舉措還是無(wú)法清晰回答“研發(fā)投入和系統(tǒng)完備度之間的關(guān)系”,例如:信貸核心系統(tǒng)做了這么久,為什么還是需要投入這么多研發(fā)資源 ?
2 如何解產(chǎn)研這道題?
我們雖然有研發(fā)效能度量,但是這套度量指標(biāo)主要是針對(duì)BizDevops流程的多、快、好、省而制定的指標(biāo),能夠反饋出來(lái)我們的研發(fā)資源投入情況,但是很難回答為什么需要投入這些研發(fā)資源;而要回答這個(gè)問(wèn)題,就需要結(jié)合系統(tǒng)建設(shè)情況做關(guān)聯(lián)分析。
在結(jié)合系統(tǒng)建設(shè)情況做關(guān)聯(lián)分析的時(shí)候,我們又遇到了新的問(wèn)題,我們每天都在說(shuō)“應(yīng)用、系統(tǒng)、領(lǐng)域、產(chǎn)品”,這些詞到底是不是同一個(gè)意思?再基礎(chǔ)性的概念問(wèn)題都沒(méi)有說(shuō)清楚的時(shí)候,我們更加無(wú)法回答,資源投到哪里去了?
為了解決這一系列產(chǎn)研的問(wèn)題,我們經(jīng)過(guò)無(wú)數(shù)次的探討,總結(jié)了一套思路,我們稱(chēng)之為“產(chǎn)品化體系建設(shè)”,本文主要是介紹產(chǎn)品化體系建設(shè)的三步主要是怎么做的,并且在文末給出了一個(gè)詳細(xì)的產(chǎn)品梳理的案例。
產(chǎn)品化體系建設(shè)三步走
3 基于企業(yè)架構(gòu)做要素拆解
3.1 什么是企業(yè)架構(gòu)
企業(yè)架構(gòu)是定義企業(yè)各個(gè)組成部分如何構(gòu)建,企業(yè)各個(gè)組成部分之間的關(guān)系以及企業(yè)各個(gè)組成部分演變的原則和規(guī)定,主要包括:業(yè)務(wù)架構(gòu)、數(shù)據(jù)架構(gòu)、應(yīng)用架構(gòu)、技術(shù)架構(gòu)。
企業(yè)架構(gòu)是戰(zhàn)略和數(shù)字化項(xiàng)目的橋梁,向上銜接戰(zhàn)略規(guī)劃,向下連接項(xiàng)目實(shí)施?!皡f(xié)調(diào)”與“對(duì)齊”是企業(yè)架構(gòu)的重要特性和作用之一,縱向協(xié)調(diào)戰(zhàn)略、規(guī)劃、實(shí)施、運(yùn)營(yíng)各層級(jí)一致性。橫向?qū)R業(yè)務(wù)、數(shù)據(jù)、應(yīng)用與技術(shù)。
企業(yè)架構(gòu)在企業(yè)中的位置
3.2 數(shù)禾企業(yè)架構(gòu)框架(SEAF)
數(shù)禾企業(yè)架構(gòu)框架(SEAF):是一個(gè)符合數(shù)禾的企業(yè)現(xiàn)狀的,參考了TOGAF和華為企業(yè)架構(gòu)而形成的一套輕量化、可落地的企業(yè)架構(gòu)方法??蚣鼙旧硇枰裱旅娴乃臈l原則:
- 戰(zhàn)略和業(yè)務(wù)價(jià)值驅(qū)動(dòng):一切從業(yè)務(wù)出發(fā),以?xún)r(jià)值驅(qū)動(dòng),是架構(gòu)設(shè)計(jì)的重要的原則和基礎(chǔ)
- 符合數(shù)禾現(xiàn)狀可落地:企業(yè)架構(gòu)框架和產(chǎn)研流程緊密融合,讓所有企業(yè)架構(gòu)框架中的要素都在產(chǎn)研中被嚴(yán)格遵從
- 輕量化:概念簡(jiǎn)化,只保留工作中需要的要素,去除不必要的要素
- 產(chǎn)品化:以產(chǎn)品為中心打造4A架構(gòu)體系,流程通過(guò)產(chǎn)品實(shí)現(xiàn)線(xiàn)上化、應(yīng)用實(shí)現(xiàn)產(chǎn)品功能并歸屬于產(chǎn)品,產(chǎn)研流程以產(chǎn)品化開(kāi)發(fā)模式,通過(guò)組合各個(gè)產(chǎn)品功能, 交付符合業(yè)務(wù)期望的解決方案。
3.3 數(shù)禾企業(yè)架構(gòu)模型
企業(yè)架構(gòu)模型:是對(duì)于架構(gòu)核心概念要素的精確定義和描述,元模型構(gòu)成了架構(gòu)設(shè)計(jì)的“基本語(yǔ)言要素”,通過(guò)元模型及其關(guān)系的表達(dá),就可以通過(guò)結(jié)構(gòu)化的方式對(duì)于架構(gòu)進(jìn)行描述和展現(xiàn),元模型是企業(yè)級(jí)架構(gòu)框架的核心,是對(duì)于架構(gòu)描述的“統(tǒng)一語(yǔ)言”。
3.3.1 數(shù)禾企業(yè)架構(gòu)元模型
數(shù)禾企業(yè)架構(gòu)元模型
3.3.2 數(shù)禾企業(yè)架構(gòu)核心要素解釋
企業(yè)架構(gòu)核心要素
3.4 產(chǎn)出企業(yè)的產(chǎn)品地圖
對(duì)公司已有的產(chǎn)品資產(chǎn)進(jìn)行梳理,形成一個(gè)產(chǎn)品全景圖基線(xiàn),并且建立完善的產(chǎn)品生命周期管理體系,以提高產(chǎn)品成熟度為過(guò)程目標(biāo),最終實(shí)現(xiàn)三大目標(biāo):減少產(chǎn)研投入人力、提高產(chǎn)研質(zhì)量、沉淀科技能力。
每一個(gè)產(chǎn)品的梳理都應(yīng)該做到:梳理業(yè)務(wù)流程,識(shí)別業(yè)務(wù)對(duì)象、業(yè)務(wù)過(guò)程和使用的業(yè)務(wù)規(guī)則。首先實(shí)現(xiàn)對(duì)象、過(guò)程的系統(tǒng)化管理,記錄業(yè)務(wù)對(duì)象的全量、全生命周期數(shù)據(jù),記錄業(yè)務(wù)活動(dòng)的執(zhí)行或操作軌跡,實(shí)現(xiàn)業(yè)務(wù)規(guī)則的結(jié)構(gòu)化、配置化管理。然后進(jìn)一步向業(yè)務(wù)流程自動(dòng)化、業(yè)務(wù)決策智能化的方向發(fā)展。
金融科技企業(yè)產(chǎn)品地圖
4 產(chǎn)品標(biāo)準(zhǔn)
產(chǎn)品標(biāo)準(zhǔn)是通過(guò)經(jīng)驗(yàn)積累,將一個(gè)產(chǎn)品必備的能力組合形成一套用于指導(dǎo)產(chǎn)品如何變好的標(biāo)準(zhǔn)。但是并不是符合產(chǎn)品標(biāo)準(zhǔn)就一定是一個(gè)好產(chǎn)品, 產(chǎn)品標(biāo)準(zhǔn)是用于提高產(chǎn)品下限的,要做好產(chǎn)品,還需要產(chǎn)品經(jīng)理不斷探索,把產(chǎn)品做精做透。
產(chǎn)品標(biāo)準(zhǔn)框架
5 產(chǎn)品化運(yùn)營(yíng)體系
- 對(duì)標(biāo)阿里的 “BIzDevops”方法,整理數(shù)禾的產(chǎn)研流程,和產(chǎn)品的生命周期匹配。
- 建立產(chǎn)品/應(yīng)用架構(gòu)資產(chǎn)庫(kù),沉淀架構(gòu)資產(chǎn),提高產(chǎn)研流程的運(yùn)行效率。
- 建立以產(chǎn)品為中心的運(yùn)營(yíng)團(tuán)隊(duì), 技術(shù)委員會(huì)為牽頭組織, 每個(gè)產(chǎn)品任命對(duì)應(yīng)的產(chǎn)品負(fù)責(zé)人和技術(shù)負(fù)責(zé)人。
- 建立產(chǎn)品標(biāo)準(zhǔn)和度量體系,指導(dǎo)產(chǎn)品建設(shè),提高產(chǎn)品的成熟度。
產(chǎn)品運(yùn)營(yíng)體系
6 應(yīng)用架構(gòu)實(shí)踐案例
本案例是以貸后催收業(yè)務(wù)為背景,從催收業(yè)務(wù)流程觸發(fā),逐步分析最后產(chǎn)出一套基于企業(yè)公共能力、滿(mǎn)足催收業(yè)務(wù)場(chǎng)景的解決方案。
6.1 基于業(yè)務(wù)流程總結(jié)功能模塊
1. 從業(yè)務(wù)流程中識(shí)別業(yè)務(wù)活動(dòng)和業(yè)務(wù)對(duì)象
2. 基于業(yè)務(wù)活動(dòng)和業(yè)務(wù)對(duì)象劃分業(yè)務(wù)功能模塊
核心業(yè)務(wù)功能模塊
業(yè)務(wù)功能模塊類(lèi)型
- 核心模塊:由主業(yè)務(wù)流程中的業(yè)務(wù)活動(dòng)形成,如“催收數(shù)據(jù)處理”、“規(guī)則碼分案”
- 支撐模塊:支撐核心模塊的對(duì)象管理模塊,如用于支撐“坐席分案”的“坐席管理”,支撐非主業(yè)務(wù)流程的模塊,如“賬務(wù)處理”、“質(zhì)檢管理”
- 通用模塊:各業(yè)務(wù)線(xiàn)都需要的功能模塊,通常有比較標(biāo)準(zhǔn)的實(shí)現(xiàn)方案,如“系統(tǒng)管理”、“數(shù)據(jù)大盤(pán)”
6.2 梳理業(yè)務(wù)功能矩陣
從業(yè)務(wù)功能模塊進(jìn)一步分解到業(yè)務(wù)功能,可以參考以下方法:對(duì)于基于業(yè)務(wù)活動(dòng)劃分的功能模塊,通??梢园凑諛I(yè)務(wù)場(chǎng)景來(lái)劃分功能點(diǎn),如“分案”業(yè)務(wù)模塊按照業(yè)務(wù)場(chǎng)景可以分為“規(guī)則碼分案”、“坐席分案”等 對(duì)于基于業(yè)務(wù)對(duì)象劃分的功能模塊,通常包括一組相關(guān)對(duì)象的生命周期管理,如“通知管理”包括“短信模板配置”、“AI提醒模板配置”等。
業(yè)務(wù)功能矩陣
6.3 劃分產(chǎn)品
將上一步梳理出來(lái)的業(yè)務(wù)功能各類(lèi)到各個(gè)產(chǎn)品中。
產(chǎn)品業(yè)務(wù)功能矩陣
6.4 產(chǎn)出產(chǎn)品架構(gòu)
產(chǎn)品架構(gòu)由產(chǎn)品功能模塊和產(chǎn)品功能組成。 面向特定業(yè)務(wù)領(lǐng)域的產(chǎn)品往往只出現(xiàn)在單一解決方案中,其產(chǎn)品架構(gòu)形態(tài)也與業(yè)務(wù)功能矩陣比較類(lèi)似。
產(chǎn)品架構(gòu)
6.5 產(chǎn)品功能拆分到應(yīng)用
產(chǎn)品架構(gòu)中的每個(gè)產(chǎn)品功能都應(yīng)該有明確的應(yīng)用來(lái)承載。從產(chǎn)品架構(gòu)到應(yīng)用架構(gòu)只是將產(chǎn)品功能劃分到對(duì)應(yīng)的應(yīng)用?;趹?yīng)用架構(gòu)設(shè)計(jì)原則,結(jié)合技術(shù)架構(gòu)標(biāo)準(zhǔn),進(jìn)一步拆分應(yīng)用,形成最終版本的應(yīng)用清單,輸出最后的應(yīng)用架構(gòu)圖。
應(yīng)用架構(gòu)
6.6 形成面向業(yè)務(wù)領(lǐng)域的解決方案
解決方案由產(chǎn)品+實(shí)施組成。 一套解決方案通常包含N個(gè)產(chǎn)品,在此基礎(chǔ)上完成產(chǎn)品配置和集成的實(shí)施工作,從而實(shí)現(xiàn)特定領(lǐng)域內(nèi)的業(yè)務(wù)能力。 產(chǎn)品所屬領(lǐng)域劃分:
- 核心域:實(shí)現(xiàn)核心業(yè)務(wù)功能,承載核心業(yè)務(wù)流程處理 支撐域:支撐核心業(yè)務(wù)功能,增強(qiáng)業(yè)務(wù)處理能力
- 通用域:業(yè)務(wù)屬性較弱,在多個(gè)業(yè)務(wù)領(lǐng)域都可能需要通用能力,往往有比較標(biāo)準(zhǔn)的實(shí)現(xiàn)方式
- 數(shù)據(jù)域:業(yè)務(wù)實(shí)現(xiàn)數(shù)字化、智能化必不可少的功能領(lǐng)域
解決方案架構(gòu)
7總結(jié)
架構(gòu)管理是一個(gè)復(fù)雜的系統(tǒng)工程,只靠一套方法論和少數(shù)運(yùn)動(dòng)式的項(xiàng)目是無(wú)法達(dá)成目標(biāo)的;要達(dá)到期望的目標(biāo)既需要企業(yè)架構(gòu)這樣的方法論,從頂層做好規(guī)劃,也需要敏捷開(kāi)發(fā)這樣的實(shí)踐方法,創(chuàng)建MVP而不是追求完美,在實(shí)踐過(guò)程中快速迭代。我們的應(yīng)用架構(gòu)管理實(shí)踐之路才剛剛開(kāi)始,路漫漫其修遠(yuǎn)兮,在實(shí)踐的過(guò)程中自我迭代也是非常重要的, 只有自我認(rèn)知跟得上,才是實(shí)踐成功的最大保障。