你還在問產(chǎn)品結(jié)構圖到底是信息結(jié)構圖還是功能結(jié)構圖嗎?這里有微信的實際例圖幫助你更好地理解這組命運三姐妹圖類。
在寫PRD、競品分析文檔中,我們常常會看到產(chǎn)品結(jié)構圖、產(chǎn)品功能結(jié)構圖或者產(chǎn)品信息結(jié)構圖的身影,但需要講清楚他們的定義和作用也真沒看上去那么簡單,這里作者嘗試分享一下自己的觀點。
特別聲明:由于篇幅和其他因素限制,本系列中所有的實例圖在完整性上有省略和簡化,僅作為舉例講解用,請讀者不要糾結(jié)圖表是否描述完整、是否有缺失模塊,主要是給讀者來對比3類圖表的聯(lián)系與區(qū)別。
一、功能結(jié)構圖
1、定義
功能結(jié)構圖就是按照功能的從屬關系畫成的圖表,在該圖表中的每一個框都稱為一個功能模塊。功能模塊可以根據(jù)具體情況分得大一點或小一點,分解得最小功能模塊可以是一個程序中的每個處理過程,而較大的功能模塊則可能是完成某一個任務的一組程序。(百度定義)用通俗的話來說,功能結(jié)構圖就是以功能模塊為類別,介紹模塊下其各功能組成的圖表。
2、作用
產(chǎn)品概念設計的運用工具之一,能夠?qū)Σ煌耆_定的設計問題或相當模糊的設計要求,以一種較為簡潔和明確的方法表示。在繪制的過程中,能夠幫助PM思考并清晰產(chǎn)品的功能模塊及其功能組成;
梳理需求,以鳥瞰的方式對整個產(chǎn)品頁面中的功能結(jié)構形成一個直觀的認識,防止在產(chǎn)品需求轉(zhuǎn)化為功能需求的過程中出現(xiàn)功能模塊和功能點缺失的現(xiàn)象。
3、注意事項
在區(qū)分功能結(jié)構、信息結(jié)構圖、結(jié)構圖前,有一個重要的前提需要大家達成共識:軟件產(chǎn)品本身就是傳遞信息和提供功能的載體,完全絕對的信息類或功能類產(chǎn)品是不可能存的在,信息往往伴隨著功能,我們很難劃一條界限將兩者徹底分開。從某種意義上,信息傳遞甚至就是軟件產(chǎn)品最主要的核心功能。鑒于此,通常我們默認地把信息展示功能獨立了出來,作為信息架構的一部分去思考,在產(chǎn)品功能結(jié)構時不考慮信息展示功能。
這里舉一個信息與功能糾纏的例子更好理解,如微信的個人信息模塊(如下圖),“名字”字段在這里既是信息又提供著修改設置的功能。
所以我們不難理解許多功能結(jié)構圖中出現(xiàn)了信息結(jié)構的要素,但由于功能結(jié)構圖的使用目的(即上文中的作用)要求我們專注于產(chǎn)品功能這個維度,在功能結(jié)構圖中我們最好盡量減少信息結(jié)構要素出現(xiàn)的可能性。
就用上面功能與信息糾纏的例子來說,在其功能結(jié)構圖中許多朋友會直接用“名字”來表示其功能點,畫圖人可能本人清楚,但看圖人就會產(chǎn)生疑惑:這個“名字”到底是指提供可查看名字的功能還是可查看并修改名字的功能。
在這里介紹一個小訣竅,形容一個功能點時建議多采用“動詞+名詞”的語言描述形式,這種方式不僅信息傳達更加準確而且可以避免讀者不必要的困惑。如上面的例子中我們就可以把“名字”改為“設置名字”或“查看并設置名字”來描述功能點。
4、如何繪制功能結(jié)構圖
在實際應用時,產(chǎn)品功能結(jié)構圖通常在以下2種情況下繪制:
對未完成的產(chǎn)品在設計階段繪制,確定產(chǎn)品功能結(jié)構;
對已完成的某個版本的產(chǎn)品繪制,用于分析并傳遞該產(chǎn)品的功能結(jié)構;
1)在產(chǎn)品的設計階段,如何挖掘并確定功能結(jié)構圖中的主功能模塊呢?
首先主功能模塊應該是產(chǎn)品在完整業(yè)務流程中的各個核心功能模塊,我們可通過業(yè)務流程中所涉及到的功能需求去提煉出主功能模塊,提煉完成后再通過業(yè)務流程走查一次,看是否有遺漏的主功能模塊。
舉個例子,假設我們參與了微信的早期功能設計,其產(chǎn)品初期定位是一款移動社交軟件,那么其對應的核心業(yè)務可以簡化為
這樣我們就很容易得出產(chǎn)品設計階段微信的主功能模塊,如下:
結(jié)合下面現(xiàn)有版本的微信功能結(jié)構圖對比一下,經(jīng)過上百次迭代,其主功能結(jié)構幾乎沒有發(fā)生變化,我們不得不佩服其功能結(jié)構的拓展性;
當通過業(yè)務流程將主功能模塊確定下來后,再根據(jù)業(yè)務需求對其進行功能的詳細設計即可,在此就不再展開了。
2)對于已確定產(chǎn)品來說如何繪制功能結(jié)構圖呢?
對一款已確定產(chǎn)品繪制功能結(jié)構圖,最快捷的方法便是參考產(chǎn)品的Tab功能模塊找出產(chǎn)品主功能模塊,然后按照層級歸屬關系詳敘該功能模塊提供的下一級功能模塊或功能,如有必要,其顆粒度可一直細化到功能操作的描述程度。
那上圖“微信功能結(jié)構圖(V6.5.21)”的主功能模塊為什么不是“微信”、“通訊錄”、“發(fā)現(xiàn)”、“我”這四大標簽功能模塊?
在這里作者希望傳達一個概念,結(jié)構圖中的主功能模塊不一定就是Tab中的標簽功能模塊,許多時候產(chǎn)品受限于移動端的空間限制,不得不把功能分為3到4個Tab中,這是一種務實的妥協(xié)。當然正常情況下以Tab標簽名作為主功能模塊的做法沒有錯,只是當產(chǎn)品功能復雜時,產(chǎn)品功能結(jié)構圖采用這種劃分有點粗糙。而繪制已確定產(chǎn)品的功能結(jié)構圖能夠幫助我們?nèi)ネ诰蜻@個產(chǎn)品的核心功能模塊,梳理產(chǎn)品的功能架構。我們建議作圖人可以嘗試脫離Tab標簽用自己的語言去挖掘并描述主功能模塊。
這樣說來我們就可以隨意將標簽功能模塊中的次級功能模塊劃分出來作為主功能模塊嗎?
其實也不是,一款不管多復雜的應用其主功能模塊的劃分數(shù)量都不能太多(5-9個為佳),一般情況下當對產(chǎn)品功能結(jié)構進行分析后,我們?nèi)匀粫捎肨ab功能模塊作為主功能模塊然后對其下屬的功能模塊進行整理。只有當我們認為某個次級功能模塊在業(yè)務上太過重要且產(chǎn)品價值較高時,我們才可以將其劃分出來作為一個單獨的主功能模塊。
這里介紹一個小秘訣,當一個次級功能模塊反復出現(xiàn)在不同的Tab功能模塊中的時候,我們就可以考慮將其拆分出來作為主功能模塊,因為這個時候意味著這個次級功能模塊在產(chǎn)品的業(yè)務流程中來說十分重要,而且這也可以讓我們的產(chǎn)品功能結(jié)構圖更加簡潔清楚。如上面“微信功能結(jié)構圖(V6.5.21)”中的搜索模塊就同時出現(xiàn)在了Tab中的微信功能模塊和通訊錄功能模塊。
最后如何確定功能結(jié)構圖中的顆粒度呢?
功能結(jié)構圖中的顆粒程度需要根據(jù)具體應用場景來定,由畫圖人根據(jù)需要自行把控即可。比如說在產(chǎn)品設計的過程中,功能結(jié)構的建立是設計者的設計思維由發(fā)散趨向于收斂的過程,剛開始的顆粒度一般比較大,可能僅涉及到某個功能模塊,隨著設計的不斷推進,功能結(jié)構圖的顆粒度會不斷細化,最終可以拆分至某個具體的功能操作。這里作者將“微信模塊-個人對話”功能模塊作了細化,僅供參考:
二、信息結(jié)構圖
1、定義:指脫離產(chǎn)品的實際頁面,將產(chǎn)品的數(shù)據(jù)抽象出來,組合分類的圖表。
2、作用:
幫助PM梳理復雜內(nèi)容的信息組成,避免信息內(nèi)容在展示過程中出現(xiàn)遺漏、混亂、重復;
作為開發(fā)工程師建立數(shù)據(jù)庫的參考依據(jù);
信息結(jié)構圖的繪制通常晚于功能結(jié)構圖,往往是在產(chǎn)品設計階段的概念化過程中,在產(chǎn)品功能框架已確定、功能結(jié)構已完善好的情況下才對產(chǎn)品信息結(jié)構進行分析設計。
在這里,我們需要強調(diào)的是脫離實際頁面這個概念,在一些產(chǎn)品相關文章中,我們會看到作者將信息結(jié)構圖完全按照頁面的邏輯順序來進行分類組合,嚴格意義上來說,這種圖表不是一份合格的信息結(jié)構圖。
我們用微信的個人信息模塊舉例,如下圖所示:
其結(jié)構信息圖在這部分的繪制就需要脫離產(chǎn)品的實際頁面,如下:
最后需要強調(diào)的是:信息結(jié)構圖主要適用于產(chǎn)品信息構成比較復雜需要考慮優(yōu)化的情況,如內(nèi)容型產(chǎn)品(博客、web門戶網(wǎng)站等),產(chǎn)品的信息結(jié)構對于用戶體驗就十分重要,需要用信息結(jié)構圖作為工具進行分析思考。
這里作者簡單繪制了一下微信的信息結(jié)構圖作為參考
三、結(jié)構圖
相較于功能結(jié)構圖和信息結(jié)構圖,產(chǎn)品結(jié)構圖的定義就很混亂和模糊了,為什么會出現(xiàn)這種情況呢?
一方面產(chǎn)品結(jié)構圖從文字理解上來說就容易讓人困惑:產(chǎn)品信息結(jié)構圖、產(chǎn)品功能結(jié)構圖不都可以簡稱為產(chǎn)品結(jié)構圖嘛。
另一方面現(xiàn)有網(wǎng)上流傳的競品分析文檔、產(chǎn)品體驗文檔、PRD文檔有不少是由產(chǎn)品新人模仿前輩流傳出來的文檔模板來寫的。但讓人尷尬的是,有部分同學沒有進行細致深入地了解。經(jīng)常在一篇文章中,前面說是產(chǎn)品的功能結(jié)構圖,結(jié)果圖中是產(chǎn)品功能有,產(chǎn)品信息要素也有,沒有理解功能結(jié)構圖的定義。而后來的初學者又從這些文章中去了解學習產(chǎn)品功能結(jié)構圖、產(chǎn)品信息結(jié)構圖,導致惡性循環(huán);
最重要的原因是:對于產(chǎn)品結(jié)構圖,產(chǎn)品從業(yè)人員這個群體自身都還沒有達成共識啊。作者在網(wǎng)上搜了搜相關文章,對于產(chǎn)品結(jié)構圖大家的主要理解有3種:
大部分產(chǎn)品人認為:產(chǎn)品結(jié)構圖即產(chǎn)品功能結(jié)構圖的簡稱,可能在產(chǎn)品沒有強調(diào)信息結(jié)構的概念時,有部分PM開始簡稱產(chǎn)品功能結(jié)構圖為產(chǎn)品結(jié)構圖,之后便默認了這種稱呼,當出現(xiàn)產(chǎn)品信息結(jié)構圖后,概念就產(chǎn)生了混淆;
一部分產(chǎn)品人認為:產(chǎn)品結(jié)構圖是綜合展示產(chǎn)品信息和功能邏輯的圖表;
少部分產(chǎn)品人認為:產(chǎn)品結(jié)構圖就是產(chǎn)品信息架構圖。
在這里,作者更認同第2種觀念:
產(chǎn)品結(jié)構圖是綜合展示產(chǎn)品信息和功能邏輯的圖表,簡單說產(chǎn)品結(jié)構圖就是產(chǎn)品原型的簡化表達。它能夠在前期的需求評審中或其他類似場景中作為產(chǎn)品原型的替代,因為產(chǎn)品結(jié)構圖相較于產(chǎn)品原型,其實現(xiàn)成本低,能夠快速對產(chǎn)品功能結(jié)構進行增、刪、改操作,減少PM在這個過程中的實現(xiàn)成本。
產(chǎn)品結(jié)構圖就是通過信息架構設計,將功能和信息以一種合理自然的邏輯,把功能結(jié)構圖和信息結(jié)構圖中的內(nèi)容放入產(chǎn)品中的每一個頁面的結(jié)果。而現(xiàn)在許多PRD、競品分析中提到的信息結(jié)構圖、功能結(jié)構圖其實大多數(shù)都是同時含有功能和信息元素的簡化版產(chǎn)品結(jié)構圖。如下圖所示:
總結(jié)
在一款產(chǎn)品的設計過程中,功能結(jié)構圖是必須的,信息結(jié)構圖視產(chǎn)品和PM自身而定,通常我們初步確定了產(chǎn)品功能結(jié)構圖(產(chǎn)品功能框架)之后才開始繪制產(chǎn)品信息結(jié)構圖。
在產(chǎn)品設計流程中,產(chǎn)品功能結(jié)構圖是產(chǎn)品概念化階段的初期輸出,產(chǎn)品結(jié)構圖是產(chǎn)品概念化的尾期階段輸出物,當產(chǎn)品結(jié)構圖完成后,我們對產(chǎn)品的基本模樣在心理就有了一個輪廓。同時以產(chǎn)品結(jié)構圖作為繪制原型的依據(jù),可以避免我們在產(chǎn)品設計中邊畫邊改,跳進死掐細節(jié),不見森林的陷阱。
到這里,你是否還對功能結(jié)構圖、信息結(jié)構圖、結(jié)構圖傻傻分不清呢?
掃一掃關注微信公眾號
掃一掃訪問手機站
掃一掃打開小程序