產(chǎn)品架構(gòu)的本質(zhì)
本文主要講述了產(chǎn)品架構(gòu)設(shè)計(jì)的核心理念和方法,強(qiáng)調(diào)了在產(chǎn)品開發(fā)過程中,如何通過對具體業(yè)務(wù)場景的抽象和概括,構(gòu)建出一套具有高度靈活性和可擴(kuò)展性的產(chǎn)品架構(gòu),從而更好地服務(wù)于多樣化的業(yè)務(wù)需求。
業(yè)務(wù)場景要具象,系統(tǒng)場景要抽象。從這句話可以看到一個(gè)漏斗,從大量的具象化需求中,抽象出一個(gè)模型,就好比人類一樣,我們能夠完成各種各樣的工作,取決于我們系統(tǒng)的各個(gè)器官的通力合作。不管我們做什么工作,是不是都是這幾個(gè)器官。當(dāng)然人的構(gòu)造也在逐步進(jìn)化中,不斷適應(yīng)系統(tǒng),不斷用進(jìn)廢退。
各個(gè)抽象化模塊的連接。
所以,產(chǎn)品架構(gòu)本質(zhì)上,是將各種具象化的場景進(jìn)行歸類總結(jié),形成一個(gè)通用化的框架,這個(gè)框架可以做到以不變應(yīng)萬變。
舉個(gè)例子,電商運(yùn)營需要配置商品進(jìn)行上架銷售,但不管怎樣,都離不開品牌、分類、屬性、SKU、SPU、價(jià)格,各個(gè)模塊相互獨(dú)立,但彼此又有聯(lián)系。
不管運(yùn)營要做多少種運(yùn)營動(dòng)作,都可以抽象出這么多模塊出來,兩兩組合就可以產(chǎn)出各種花樣出來。
要做到這一點(diǎn),產(chǎn)品經(jīng)理需要具備幾個(gè)能力:
一、很強(qiáng)的業(yè)務(wù)前瞻性
做一個(gè)需求,就需要把未來的整體業(yè)務(wù)藍(lán)圖描繪出來,也就是未來業(yè)務(wù)要做成什么樣,業(yè)務(wù)場景會(huì)有哪些,需要快速識(shí)別出來,特別是各種異常場景。
業(yè)務(wù)梳理是產(chǎn)品架構(gòu)完善的第一個(gè)前提,有人說直接照搬業(yè)界成熟系統(tǒng)不就好了,那這樣就沒產(chǎn)品經(jīng)理什么事了,業(yè)界經(jīng)驗(yàn)只能是參考,即使業(yè)務(wù)做法做得再對,我們也需要通過業(yè)務(wù)的輸入進(jìn)行方案的驗(yàn)證。
所以,業(yè)務(wù)的場景的梳理和完善是輸出完善的產(chǎn)品架構(gòu)的關(guān)聯(lián)。
這個(gè)要求產(chǎn)品經(jīng)理要懂業(yè)務(wù),還要懂業(yè)務(wù)的本質(zhì),才能夠抽象出本質(zhì)。
二、抽象能力
業(yè)務(wù)場景這么多,哪些是正確的業(yè)務(wù)流程,哪些是錯(cuò)誤的業(yè)務(wù)流程,怎么評判業(yè)務(wù)流程的對與錯(cuò)。
有幾點(diǎn):
- 這個(gè)業(yè)務(wù)流程能不能使得多角色的運(yùn)營效率不斷提高,實(shí)現(xiàn)1+1大于2
- 這個(gè)業(yè)務(wù)流程可以和其他流程更好的串聯(lián)
- 這個(gè)業(yè)務(wù)流程盡可能不會(huì)破壞當(dāng)前的產(chǎn)品模型
就好比人類一樣,祖先是有多么大的智慧能夠?qū)⑷祟惖倪@么多操作動(dòng)作抽象出了大腦、肺、心臟、胃、肝等等器官,各個(gè)器官之間還能各司其職。
從具象化的場景,抽象出產(chǎn)品模型出來,這個(gè)很關(guān)鍵。
怎么做到?
類比,學(xué)習(xí),模仿,歸納總結(jié),多深挖問題本質(zhì),多問幾個(gè)為什么。
三、劃清模塊之間的邊界
既然模型要抽象,那業(yè)務(wù)的場景盡可能不要耦合到模型當(dāng)中,不然一旦業(yè)務(wù)場景一變,模型就要跟著調(diào)整。
所以考驗(yàn)一個(gè)模型做得好不好,就看夠不夠抽象,做這個(gè)功能的時(shí)候,是不是把未來的七八個(gè)場景都考慮進(jìn)去了。
記得我大廠工作的時(shí)候,領(lǐng)導(dǎo)經(jīng)常會(huì)問一個(gè)問題,這個(gè)功能其他場景能復(fù)用嗎,萬一需求變了,我們的方案要調(diào)整嗎?
既然模型要抽象,方便組合成不同的具象化場景,那模塊之間要分清界限,分清界限的標(biāo)準(zhǔn)是
- 模塊內(nèi)容發(fā)生變更,不會(huì)影響到其他系統(tǒng),各系統(tǒng)之間要解耦
- 各模塊之間相互組合更加的簡便
總結(jié)一下,產(chǎn)品架構(gòu)就是把具象的場景抽象化,抽象成各個(gè)獨(dú)立的模塊,再通過各個(gè)模塊之間的聯(lián)系組合成不同的功能,進(jìn)而滿足業(yè)務(wù)的各種場景。
模塊越抽象,越解耦,我們能夠滿足的業(yè)務(wù)場景就越多,也更有利于系統(tǒng)的延展。
當(dāng)然,有時(shí)候也要結(jié)合業(yè)務(wù)的實(shí)際情況,不能因?yàn)橐紤]一個(gè)完整的架構(gòu)花了大量的時(shí)間做業(yè)務(wù)調(diào)研,但是市場的先機(jī)已經(jīng)被他人占領(lǐng)了。有時(shí)候系統(tǒng)也是可以演化出來的,沒有對錯(cuò),只有合不合適。
本文由人人都是產(chǎn)品經(jīng)理作者【蔡錦?!?,微信公眾號(hào):【錦海說】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
很受用,想提個(gè)建議,如果文章配合一些具體實(shí)例寫出來,應(yīng)該會(huì)更好的幫助理解~~~