【逆向工程】信息架構推演:微信消息列表的步驟細節+新手掃盲

22 評論 22772 瀏覽 1486 收藏 12 分鐘

無數小伙伴分析過微信的產品、交互設計,然而,這個億萬人使用的社交軟件,它的「信息架構」到底是如何的?消息列表,是微信客戶端的主界面,今天就來分析一下,管中窺豹!本文富含大量圖表,實在是互聯網小白和老鳥應該必讀的,請不要吝惜流量。

流程方法論

逆向工程,請自行搜索相關概念。簡言之,如果非常喜歡一款產品,又無法身臨其境的感受設計過程,逆向推演就成為了非常好的學習方法,堅持經常,必有提高。

你像工程的工作流程

分析樣本輸入

每次打開微信,最經常使用的界面就是[消息列表],把它先收入囊中,截圖取樣。截圖還是有一些技巧的,盡量把更多交互控件狀態都保留下來(在諸多小伙伴的配合下完成,感謝?。?。

微信消息列表樣本

微信消息列表樣本

還原高保真RP

對于原型的保真度,每個交互設計師的理解不同,如果有3年以上經驗,都不會比下面這個差吧

還原之后的高保真RP

還原之后的高保真RP

輸出《交互設計說明文檔》

此刻,變身微信的交互設計師,將產品還原成相對標準的文檔。

首先,整個界面由三部分組成:標題欄Title、消息列表MsgList、標簽式下導航TabNavi;主要操作有對話搜索、添加(+)、Tap點擊進入消息對話界面等。

微信消息列表高保真原型交互模式區分

微信消息列表高保真原型交互模式區分

其次,消息列表中,某一對話的通欄區塊定義為[對話Block]交互組件,包含一個隱藏操作行為:切換已讀/未讀、刪除對話。

微信消息列表對話block隱藏交互操作

微信消息列表隱藏交互操作

再次,[對話Block] 這個組件包含圖片Image、交談對象Interlocutor(s) 、當前對話摘要Current Digest 、日期時間Date&Time、未讀提示Unread Alert五個交互控件;五個控件并且會根據交談主體、新消息種類、開通免打攪功能而相互影響變化,交互規則異常復雜,于是將規則逐個列出。

交互文檔片段對話Block圖片

交互文檔片段對話Block圖片

交互文檔片段對話Block交談對象

交互文檔片段對話Block交談對象

交互文檔片段對話Block當前對話摘要

交互文檔片段對話Block當前對話摘要

交互文檔片段對話Block日期時間

交互文檔片段對話Block日期時間

前面這些都是鋪墊,信息架構推演剛剛開始!

司空見慣,三人成虎

詳盡的交互文檔已經完成,反推信息架構應該不是什么難事了吧,這也未必。

比如,經過千辛萬苦,可能是下面這張圖。

高大上但不及格的信息架構設計范例

為什么這貨不是「信息架構」?

根本原因,信息是抽象的,而不是圖上這些表象內容。

這貨究竟是什么?

姑且可以稱為“某個界面之中的內容關系”。

這貨有什么用?

用處還挺大的,譬如

  1. 標注給UI設計師/開發人員,讓他們對內容邏輯一目了然
  2. 放在簡歷和Work Show里,讓非專業人士唏噓贊嘆,讓一切看起來井井有條

這貨有什么害處?

  1. 沒有深入到信息的靈魂,削弱了關聯,難免以偏概全
  2. 固化了思維,無從著手優化和創新(最后只能大家抄來抄去)
  3. 用結果代替原因,本末倒置,混淆視聽

反正,不知道何日起,大家居然、居然、居然認為這貨就是「信息架構」了……

產品經理、UI設計師、前端開發如果這么理解也就算了;絕大部分交互設計師也是這樣認為,堂而皇之把這貨放入Portfolio,也是醉了!

開始前的復習

2009年,Hozin發表過一篇《從概念設計到信息架構 》,今天繼續沿用其中的思路和方法。

《從概念設計到信息架構》,經過6年前,被非授權轉載了無數次(坐等收網),原版請看這里

復習一下圖例先,很重要的。

信息架構設計圖例

第一步,核心概念

「信息架構」是一種準確的抽象,研究抽象事物,那就是擺弄“概念”。

微信消息,本質上是「對話」,即“我和其他人之間的信息來往”,核心概念至少有兩個:用戶User和會話Dialog

信息架構設計步驟Step01核心概念

于是,得到了非常簡單的雛形,未來的一切都由這個“受精卵”發育而成,既然是核心,那就越簡單越好。

第二步,概念的延伸

從概念延伸出子概念,辨別概念之間的關系。對于微信消息,不難發現:「對話者」可能是自然人、一群自然人,還可能是機器人,所以增加了一個核心概念“系統System”;「對話」是一種用戶間行為,被傳遞的是「消息」,于是又增加了一個核心概念“消息(單條)A Single Message”。

信息架構設計步驟Step02概念的延伸

經過這些延伸增益,「信息架構」已經從母體分娩,成為“小嬰兒”啦!

第三步,概念合并打包

概念之前的關系非常復雜,已經占用了太多的連線,為了避免影響到以后的步驟,先要對概念進行整理,無非包含兩種情況:概念之間是兄弟平行關系,把它們分配同組;概念之間是父子支配關系,把它們分配同組;一言蔽之“打仗親兄弟,上陣父子兵”。

信息架構設計步驟Step03概念合并打包

“小嬰兒”當然不曉得自己便便咯,經過慢慢訓練,終于有一天離開紙尿褲,養成飯前便后要洗手等習慣,茁壯成長為 “有秩序感的兒童”。

思考題

父子概念同組,兄弟概念同組,這些合并打包,在Step#03圖中分別是如何表示的?

第四步, 概念實例化

從抽象概念,邁向內容載體的中間過程,就是實例化。

有些抽象概念根本無法實例化,比如“道德”;有一些就很容易啊,“鳥類”的實例化就是鴕鳥、大公雞……

無論是IM還是社交軟件,聊天這個產品,在實例化之前都是差不多的概念,Step #03那張圖對于QQ/Skype/陌陌同樣有效,從實例化開始,這些產品才開始分化。

只有實例化,才能具體化,才有可能生成最后的界面。

信息架構設計步驟Step04概念實例化

“兒童”終于上了幼兒園,開始接受K12的各種教育培養,找到自己的興趣方向,成為“恰同學騷年”!

思考題

Step#04的這個局部,為什么設計成這個樣子的

信息設計實例化思考題

第五步,填充屬性與操作

實體,看得見摸得到;系統的分析實體,無非就是有哪些屬性,如何改變這些屬性(操作)。

信息架構設計步驟Step05填充屬性與操作

謝天謝地,這步驟的操作方法很普及了,就是“這貨”的功勞!

“同學騷年”終于開始要參加高考,無論怎樣,算是邁入高等學府的“大學生”了。

至于為什么會“三人成虎”,很簡單吶,“應試教育”大抵也算教育的一種類型吧……

第六步,標定內容,添加關聯,終成「信息架構」

在互聯網產品設計中,信息架構是為了界面呈現而存在,界面是由內容構成的。標定內容的種類和數量,決定了界面的復雜度,甚至決定了“需要多少個界面”。

映射,通常意味著[等效關系],原理略去三百字,主要是用起來方便些。

最終結果,如下圖

2204626544

現在,那個“受精卵”,終于熬到了“大學畢業”,然并個卵,[畢業就意味著失業],有木有?畢竟只有少數人像微信一樣有那么牛的“親爹”。

 

本文由@鴻津 ?公眾號:Hozin?(hozin-com)授權發布于人人都是產品經理?,未經許可,禁止轉載。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 最后一張圖(第六步) 加載不出來了,求作者重新上傳??!感恩

    來自廣東 回復
  2. 硬核,贊

    來自福建 回復
  3. 小白一枚,真心理解不了

    回復
  4. 這種概念設計對于表示概念之間的關聯確實更強烈,但是未免不夠直觀,和較難理解。
    只能說兩種信息架構方式各有利弊吧,方法論談不上對與錯,只能說那種方法更合適吧

    來自上海 回復
  5. 這不錯

    來自浙江 回復
  6. 好厲害 真心受教 感謝!

    回復
  7. 真心受教了!正在仔細研讀,謝謝您!

    來自浙江 回復
  8. 剛看的幾篇文里,也就這篇體現出專業性了 hozin加油

    來自廣東 回復
  9. 做了一年的產品了,才知道規范是這個樣子,繼續學習~~

    來自北京 回復
  10. 小白路過 ?

    來自山東 回復
  11. Thanks for your share.

    來自四川 回復
  12. 好棒~~

    來自北京 回復
  13. 思路很清晰,期待更多好文!順便問問鹵煮這些圖是不是用og畫的

    來自北京 回復
    1. Hi,我是本文撰寫者,文中的圖是用Visio設計的,關注我的微信公眾號 回復 胡蘿卜 可以下載源文件 用og也可以打開

      來自日本 回復
    2. 微信公眾號是多少? ??

      來自北京 回復
    3. 公眾號 hozin-com

      來自日本 回復
    4. 可以發到我的微信公眾號嗎? pingyaonr

      來自北京 回復
    5. 你好,能再次公開一下源文件嗎?微信公眾號的分享已經失效了。

      來自廣東 回復
    6. 更新啦 可下載http://pan.baidu.com/s/1mgXM5Bi

      來自天津 回復
  14. 真心好啊

    來自四川 回復
  15. 哈哈,專業又風趣,路人轉粉,能關注你就好了。

    來自北京 回復
  16. 很強大 受教了 ??

    來自廣東 回復