產(chǎn)品進(jìn)階設(shè)計(jì)思路:業(yè)務(wù)的抽象建模

12 評(píng)論 21317 瀏覽 98 收藏 8 分鐘

很多新手朋友經(jīng)常會(huì)聽(tīng)到一個(gè)詞叫抽象建模,那么這個(gè)抽象建模到底是什么意思呢?本篇文章我們就來(lái)為大家來(lái)解釋一下這個(gè)詞。

回顧我之前所設(shè)計(jì)的系統(tǒng),我最大的感受就是產(chǎn)品經(jīng)理需要不斷地對(duì)復(fù)雜業(yè)務(wù)進(jìn)行抽象建模,從而讓復(fù)雜非理性的事物(需求)變得有非常明確的規(guī)則,各個(gè)業(yè)務(wù)之間有清晰的劃分。

那么很多新手朋友經(jīng)常會(huì)聽(tīng)到一個(gè)詞叫抽象建模,那么這個(gè)抽象建模到底是什么意思呢?本篇文章我們就來(lái)為大家來(lái)解釋一下這個(gè)詞。

1. 業(yè)務(wù)組件提?。ǔ橄蠼#?/h2>

其實(shí)抽象建模是產(chǎn)品設(shè)計(jì)中的一個(gè)很重要思路,它能幫助我們將一些看似沒(méi)有任何規(guī)律的業(yè)務(wù)進(jìn)行一個(gè)標(biāo)準(zhǔn)化,就拿我們產(chǎn)品經(jīng)理來(lái)說(shuō),現(xiàn)在相信大家都知道產(chǎn)品經(jīng)理的工作流程是如下的這幾步:

用戶(hù)訪(fǎng)談、分析用戶(hù)場(chǎng)景、梳理需求優(yōu)先級(jí)、需求版本規(guī)劃、需求設(shè)計(jì)、需求評(píng)審。

但是大家有沒(méi)有想過(guò)是誰(shuí)當(dāng)初第一個(gè)提出這樣的標(biāo)準(zhǔn)工作流程?這樣的人就很厲害了。

那么說(shuō)了這么多,到底抽象建模的本質(zhì)是什么?這里我可以用一句話(huà)來(lái)進(jìn)行概括:業(yè)務(wù)組件提取。

所謂業(yè)務(wù)組件提取,就是指我們?cè)谶M(jìn)行業(yè)務(wù)分析過(guò)程中,不斷將業(yè)務(wù)劃分成若干個(gè)小的組件與模塊。例如我們可以將電商系統(tǒng)劃分為商品中心、訂單、支付、物流、會(huì)員這五大組件,通過(guò)這五大組件共組建起了一個(gè)完整的電商系統(tǒng)。

那么在這過(guò)程中我們將一個(gè)完整的在網(wǎng)上下單購(gòu)物的流程拆分成這五大部分就是一個(gè)業(yè)務(wù)組件的提取,當(dāng)然,這里的又組建提取并不是只是在系統(tǒng)層面的劃分,我們很多時(shí)候在產(chǎn)品內(nèi)部設(shè)計(jì)的時(shí)候也會(huì)遇到很多業(yè)務(wù)組件的提取。

2. 一個(gè)案例

下面我用一個(gè)案例來(lái)給大家示范一下如何進(jìn)行業(yè)務(wù)組件提取。

假設(shè)我們要設(shè)計(jì)一個(gè)在線(xiàn)教育平臺(tái)APP,首先分析這個(gè)教育平臺(tái)的系統(tǒng)框架,我們會(huì)發(fā)現(xiàn)在這里本質(zhì)上就是要對(duì)三個(gè)對(duì)象進(jìn)行管理,如下圖所示:

  • 課程資訊:實(shí)時(shí)推送最新資訊;
  • 課程電商:顯示出售的課程;
  • 學(xué)生題庫(kù):供學(xué)生選擇適合自己的習(xí)題冊(cè)進(jìn)行練習(xí)。

面對(duì)這樣的一個(gè)需求,我們想一想平時(shí)我們會(huì)怎么樣去進(jìn)行產(chǎn)品設(shè)計(jì)?

我相信絕大多數(shù)的產(chǎn)品經(jīng)理都會(huì)按照將這三個(gè)對(duì)象視為三個(gè)完全不同的模塊進(jìn)行獨(dú)立的信息架構(gòu)與頁(yè)面結(jié)構(gòu)進(jìn)行產(chǎn)品設(shè)計(jì),例如設(shè)計(jì)資訊中心時(shí)的思考路徑如下:

那么如果用組件化的思維來(lái)進(jìn)行思考的話(huà),我們其實(shí)可以完全去將這三個(gè)對(duì)象視為三組數(shù)據(jù),那么站在數(shù)據(jù)視角上來(lái)看,此時(shí)我們需要設(shè)計(jì)的產(chǎn)品實(shí)際上就是為這些數(shù)據(jù)去尋找可以承載的組件。

那么這個(gè)時(shí)候,我們就可以得出這些數(shù)據(jù)都有如下三類(lèi)承載需求:

  • 信息分類(lèi)選擇的需求:劃分不同功能入口;
  • 集合類(lèi)展示的需求:列表展示多個(gè)對(duì)象個(gè)體以供選擇;
  • 個(gè)體類(lèi)展示的需求:展示詳情。

這樣我們就將看似毫無(wú)關(guān)聯(lián)的三個(gè)對(duì)象抽取出了一個(gè)標(biāo)準(zhǔn)的頁(yè)面組織架構(gòu),也就是:

按照這樣的設(shè)計(jì)結(jié)構(gòu),我們就可以將這三個(gè)數(shù)據(jù)對(duì)象。定義為如下的數(shù)據(jù)組織:

集合類(lèi)數(shù)據(jù):

集合1:

  • 課程資訊集合
  • 資訊記錄集合

集合2:

  • 課程電商集合
  • 課程記錄集合

集合3:

  • 學(xué)生題庫(kù)集合
  • 題庫(kù)記錄集合

對(duì)象實(shí)例數(shù)據(jù):

  • 本條記錄的數(shù)據(jù)摘要;
  • 本條記錄的數(shù)據(jù)屬性;
  • 本條記錄的數(shù)據(jù)詳情;

根據(jù)這樣的數(shù)據(jù)結(jié)構(gòu),我們就能得出最終的產(chǎn)出:

我們可以看到通過(guò)這樣的設(shè)計(jì),我們成功的將這三類(lèi)對(duì)象合并到了一套程序組件載體中,此時(shí)如果我們需要進(jìn)行迭代,只需要調(diào)整一次三個(gè)數(shù)據(jù)對(duì)象都會(huì)發(fā)生改變,大大節(jié)省了開(kāi)發(fā)人力。此外這樣的設(shè)計(jì)也讓后臺(tái)系統(tǒng)在某種意義上只需要進(jìn)行數(shù)據(jù)源格式的不同管理即可,而數(shù)據(jù)接口等都可以高度復(fù)用。

那么我們?cè)僭O(shè)想一下,如果沒(méi)有按照這樣的頁(yè)面組織架構(gòu)進(jìn)行產(chǎn)品設(shè)計(jì)會(huì)遇到什么樣的問(wèn)題?

首先我們對(duì)這三個(gè)對(duì)象需要定義完全不同的跳轉(zhuǎn)路徑,需要維護(hù)各自相互獨(dú)立的頁(yè)面結(jié)構(gòu)與路徑,導(dǎo)致我們需要對(duì)這三類(lèi)數(shù)據(jù)在前臺(tái)維護(hù)三組不同的頁(yè)面代碼。

在后臺(tái)則對(duì)于這三組對(duì)象我們還需要有不同的表結(jié)構(gòu)、數(shù)據(jù)接口以及數(shù)據(jù)消息體格式,因此很多時(shí)候開(kāi)發(fā)的工作量就是因?yàn)楹芏喈a(chǎn)品經(jīng)理在設(shè)計(jì)功能模塊的時(shí)候沒(méi)有按組件進(jìn)行規(guī)劃,導(dǎo)致增加了整個(gè)系統(tǒng)的開(kāi)發(fā)成本。

3. 最后

我們?cè)谌粘5漠a(chǎn)品設(shè)計(jì)過(guò)程中一定要學(xué)會(huì)使用組件化的思考方式對(duì)每一個(gè)業(yè)務(wù)單元進(jìn)行抽象建模,從而使我們抽象出的組件變的標(biāo)準(zhǔn)且統(tǒng)一,從而降低整個(gè)系統(tǒng)的開(kāi)發(fā)成本。

#專(zhuān)欄作家#

三爺,微信公眾號(hào):三爺茶館,人人都是產(chǎn)品經(jīng)理專(zhuān)欄作家。曾萬(wàn)達(dá)高級(jí)產(chǎn)品、MBA特約講師、獨(dú)立創(chuàng)業(yè)者,現(xiàn)某支付公司產(chǎn)品線(xiàn)負(fù)責(zé)人,擁有多款集團(tuán)項(xiàng)目從零到一經(jīng)驗(yàn)并帶領(lǐng)實(shí)現(xiàn)商業(yè)化布局。

本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來(lái)自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 舉的例子是為了抽象而抽象,沒(méi)有現(xiàn)實(shí)意義

    回復(fù)
  2. 舉的例子感覺(jué)是有前提的,這三個(gè)業(yè)務(wù)的邏輯大概是一致的,都是從列表到明細(xì),并不適合更常見(jiàn)的三個(gè)不同業(yè)務(wù)邏輯的情況。該思路對(duì)B端更有幫助一些,C端感覺(jué)不太適用。

    來(lái)自北京 回復(fù)
    1. 那三個(gè)不同對(duì)象用一個(gè)結(jié)構(gòu)來(lái)承載,太勉強(qiáng)了,尤其是三個(gè)對(duì)象的屬性差異很大的時(shí)候

      回復(fù)
  3. 沒(méi)有很了解透徹啊,有沒(méi)有再講的更透徹點(diǎn)的文章?

    來(lái)自北京 回復(fù)
  4. 受教了。正好這兩天開(kāi)始學(xué)習(xí)如何抽象業(yè)務(wù)組件。以前從沒(méi)接觸過(guò),真的是難以想象。。。請(qǐng)教個(gè)問(wèn)題,抽象業(yè)務(wù)模型的需求應(yīng)該是什么樣子的?我會(huì)寫(xiě)功能需求,但業(yè)務(wù)組件沒(méi)接觸過(guò)。。。這點(diǎn)總是被開(kāi)發(fā)挑戰(zhàn)。

    來(lái)自浙江 回復(fù)
    1. 抽象目的不是為了復(fù)用,復(fù)用只是附屬品,不要被帶偏了。我認(rèn)為抽象是用來(lái)了解整個(gè)系統(tǒng)、業(yè)務(wù)的方法,使用抽象可以將系統(tǒng)進(jìn)行拆解,可以客觀的進(jìn)行描述加以封裝。

      來(lái)自浙江 回復(fù)
    2. 說(shuō)的對(duì)!

      來(lái)自福建 回復(fù)
    3. 嗨你好啊 我也遇到一樣的問(wèn)題,咱們私聊一下呢

      來(lái)自中國(guó) 回復(fù)
  5. 從橫向展示功能,轉(zhuǎn)換為從縱向量化標(biāo)準(zhǔn)

    來(lái)自山東 回復(fù)
    1. 哈哈,總結(jié)到位!

      來(lái)自上海 回復(fù)
  6. 另外,圖片中的 習(xí)題1那里的文案應(yīng)該是寫(xiě)錯(cuò)了吧,望更正。

    來(lái)自廣東 回復(fù)
  7. 看完后有很多不明白的地方,簡(jiǎn)單點(diǎn)的理解就是將思考的維度從功能思維,轉(zhuǎn)換為數(shù)據(jù)思維去理解,是這個(gè)意思嗎?

    來(lái)自廣東 回復(fù)