經驗說|如何從“0”到“1”構建產品?
當你在哺育產品的同時,產品也在哺育你。
在互聯網混了幾個年頭,經歷了從設計——程序——產品的工作歷程,期間經歷過2個項目,都是從頭開始構建的。當然作為一個半路出家的產品,成長的過程不可謂不痛,從一開始連原型圖都不知道怎么畫,到后來建立起自己的一套方法論,在這個過程中不斷加深了對產品崗的認知。我很欣喜看到自身上的一些變化,也希望通過分享自己的一些感悟,為那些剛入行的新人或者想轉行做產品的兄弟姐妹們帶來幫助。
從何處開始——首先得清晰的認識自我
從筆者的經驗來看,產品這個崗位,不同公司有不一樣的要求,所以大家在學習產品的相關知識的時候,并不是越多越好,前期我們的學習重點必須聚焦,這樣你才能在短期內獲得比較強的競爭力。
自身能力模型
上圖是筆者早期剛從事產品的時候做的一張自身能力模型表。這張圖能很直觀的看出筆者目前所處的階段和想要達到的階段,并且給出了籠統的可執行方案。筆者當時因為是做TO B產品的并且對業務一無所知,所以把當下最需要補齊的知識和技能優先級調高,以滿足工作的需要。自身能力模型表前期真的很重要,只有當你清晰了認識了自我,才能知道你努力的方向和意義所在。
開始出發——走上產品設計之路
(1)構建底層的數據結構
可能大家會比較奇怪,為什么要先做數據結構?
筆者列出兩點原因:
- 數據結構是用來作為數據庫的設計依據的,在早期和DB的溝通中能盡早的發現問題
- 數據結構里所包含的信息為原子級的信息,特點是不可拆分,互相獨立,相對于信息結構更加精練
那怎么做數據結構?筆者通常的做法是從角色、業務的維度上來構建數據結構,構建數據結構要按照完全窮盡,互相獨立的原則來設計。
比如拿教育類的項目做個例子——首先從角色上來說,我們要分為【學?!俊緳C構】【教員】【家長】【學員】;從業務上來說,需要最基礎的【課程】【班級】信息(這里我們只需要基礎業務數據)
筆者簡單的梳理了一個數據結構:
數據結構
這個數據由于是底層的數據,所以命名的時候必須嚴謹。而我們在表現層里看到的數據可以從這些數據里通過組合的方式得到,這也就是為什么這些數據必須是完全窮盡,相互獨立的。舉個栗子:我們在終端上需要看到【當日盈利】這個數據,而這個數據是通過【消費金額】【授課收入】組合而來。
(2)開始畫流程圖
流程圖是體現產品經理對業務理解能力的最好判斷依據,好的流程圖讓人一目了然,甚至對整個項目的推進起到至關重要的作用。而關于如何畫好流程圖,相信站里已經有好多人做過類似的分享,我這里就不再贅述了。筆者在這里推薦一篇關于流程圖的系統性文章,講的很好,也讓筆者學到了不少東西。
以下是文章的鏈接:《產品的三種流程圖,你都知道嗎?》
(3)梳理產品結構/信息結構
產品結構需要你把整個產品的大框架想清楚,并且排好優先級,在開發資源有限的情況下,可以分階段實現。信息結構則用于進行頁面中的數據展示,一般是在產品結構完成后進行梳理。這里筆者繼續以教育項目為例,產品結構圖如下
我個人的習慣是會把B端和C端的結構圖放在一起,然后通過連線的方式找出對應關系。關于信息結構的圖我這里就不貼了,相似的層級關系,大家以此類推。
(4)輸出原型(文檔)
這一塊大家應該在熟悉不過了吧,很多小伙伴可能以前一上來就畫原型,沒有經過深度思考的原型是經不起推敲的,容易返工不說,還會被開發和設計鄙視。具體的畫法我就不說了,這里我分享一下關于我畫原型時候的心得:
- 不要過于糾結于工具的選擇,每個原型工具都有它的優缺點,Axure就目前來說在功能實現方面是最牛的,但是有時候為了速度,也可以選擇輕量級的原型工具;
- 類似通用的組件,比如文本框、彈窗、按鈕,必須給出規范,這樣能給你省大半時間,也為開發和設計省大半時間;
- 有設計功底的產品同學可能會畫高保真原型,這里筆者建議不要這么做,因為高保真原型不僅費時費力,而且設計拿到你原型的時候會一臉懵比,并會限制了他的思維;
- 不要做過多的交互,直接注明就好,因為開發不會拿著你的原型一個個點下來,有時候一句話能說清楚的事,咱就不要浪費時間了。
結語
設計產品不是一蹴而就的,好產品是在正確的引導下自我生長起來的,但這需要大家對生活要留心觀察,多體驗不同的產品,多問幾個為什么。因為當你在哺育產品的同時,產品也在哺育你。
本文由 @吃肉變瘦 原創發布于人人都是產品經理。未經許可,禁止轉載。
作者你好,關于構建數據結構部分,你是自己獨創的方法還是在什么書本上總結的?我讀完后還是不能完全理解。因為我覺得數據結構與信息結構所涉及的內容幾乎是一樣的,只是在呈現方式上有所不同。而且在一開始就構建這樣的結構,是否會容易出現部分數據結構多余或者缺少的情況?相反,如果是按正常流程去梳理信息結構時,可以根據已經梳理好的流程圖去完善信息結構,就不容易出現結構多余或缺少的情況。
也是前輩教我的,數據結構我一般是作為程序員設計表的依據,信息結構我一般作為每個頁面下要放的數據集合。數據結構當然也會出現多余或者缺少的情況,和程序員設計表結構邏輯一樣,感覺缺了多預留幾個字段,感覺多余,那這個字段就不要去用了。你可以把數據結構當做A/B/C這樣孤立的字母,但是信息結構就是用字母組成的單詞。我也不經常看到產品畫數據結構,基本都是產品結構+信息結構,畫這些東西的最終目的是傳達你的想法給開發,設計和測試,最終的交付產物就是你的原型,所以不要糾結畫不畫,用適合你自己的方式去做吧
更想看看信息結構是怎么梳理的,“層級關系”?是按什么劃分層呢?
層級的建議:【頁面-功能點-數據】這種方式分。我劃分信息結構的依據是以【頁面】為單位,會梳理出這個頁面下面有多少功能點,需要展示什么數據,一般就做到這一步;當然還可以繼續細分下去了——比如你點一個【新建用戶】按鈕,彈出一個【新建用戶】的對話框,里面包含了很多信息,但是我一般不會寫在結構圖里,因為一個功能點都要寫的話,那整張圖就會非常大,看起來也費勁。
學習了
學習了。
吃肉變瘦我同意!
哈,貴文有點形式化了,太簡單,沒太多啟迪呀,繼續加油好伐?
?? 好,謝謝你的建議,我會繼續努力的
非常難得的好文章?。?!謝謝分享哈!
學習了