如果作為設計師的你已經下定決心,要加入一個真正的產品團隊,那么懂一點技術相關的知識絕對是加分項!不如今天就從最基礎的開發模式起步吧。
“敏捷開發”(agile)是一個行業專用術語,它常常出現在雇主和招聘人員口中。而對沒有在軟件工程領域工作過的設計師來說,恐怕很難理解這到底是什么意思。所以有意往軟件工程領域發展的設計師,你可能需要了解什么是敏捷開發。作為一個網頁設計師,下面分享下我眼中的“敏捷”設計方法。
這不是一篇全面的設計指南,也不是什么關于“scrum”或“agile”的不二真理,但如果你正在準備參加一個互聯網產品或軟件的面試,本文可以幫你建立一些基本的認知。
我會就“敏捷開發”是什么、如何運作來做介紹,當然也包括其他相關術語,如“產品需求池”、“迭代需求列表”、“每日Scrum Meeting”以及“潛在可交付產品增量”等概念。
當我們談論“敏捷開發”時,我們在談什么?
在2001年的一次軟件開發者的團體討論中,“敏捷開發(Agile)”一詞首次出現。他們一致認同需要一種全新的工作流程,并為此設立了12條原則,將之整合為一份宣言。
這份關于敏捷開發的宣言描述了一種工作流程、一種方法論。
敏捷開發
下圖演示了一個敏捷開發的典型過程,在一系列的“sprints”中完成(不知道“sprints”是什么?點擊查看《谷歌內部方法!快速做創新設計并驗證的DESIGN SPRINT》。
(圖1 敏捷開發迭代過程)
敏捷開發的定義中包含了其他更細分的方法,其中大概最熱門的就是“scrum”了。Scrum是一種迭代式增量軟件開發過程,通常用于敏捷軟件開發。迭代是指把一個復雜且開發周期很長的開發任務,分解為很多小周期可完成的任務,這樣的一個周期就是一次迭代的過程;同時每一次迭代都可以生產或開發出一個可以交付的軟件產品。
不管在什么案例中,敏捷開發的方法都意味著迭代式、周期性的開發工作。把它和“瀑布流”式方法對比著看,會更有助于理解。
瀑布流式開發
對產品開發來說,瀑布流是一種更傳統的方式。它意味著整個開發過程必須是連續性的,也因此更嚴格、死板,甚至更低效。
(圖2 瀑布流式產品開發過程)
與瀑布流相比,敏捷開發的好處就在于它的最終產品能更快地對接市場,需要更多團隊協作和增量投資。另一方面,因為它的靈活可變,它常常使利益相關者感到緊張,也常常被誤解。
它是如何工作的?
現在讓我們看一下在實際設計場景下,敏捷開發流程(agile workflow)到底是怎樣的吧。
產品需求池(Product Backlog)
(圖3 產品需求池)
上圖是一個產品需求池,它包含最終產品需要的所有功能。基于用戶的需求,提煉產品功能點,并轉化為一些相應收益。將每個功能列在一個單獨的卡片上;為了保證功能描述的一致和清晰,通常從人物角色的角度出發,以一定語義結構描述某個功能點;舉個例子:“作為Bob,我可以……以致于我可以……”
迭代需求列表 (Sprint Backlog)
對于每一張功能卡片,設計師和開發者都需要預估各自完成時間,并給出相關排期——而這只是一個估計值。在第一個“迭代(sprint)”完成后,對下一個“迭代”所需花費的時間,你會更加心中有數。通常來講,在一次”迭代“中,每一張功能卡片都會按優先級被給予一個“T恤尺寸”(XL, L, M, S),而它們各式各樣。
一般來講,迭代需求列表,除了項目需求還有狀態顯示,例如“迭代前”、“評審中”、“項目受阻”等。這些卡片被張貼在Kanban墻上(Kanban在日語中寫作“看板”),從而將所有功能開發進展“可視化”。當然你也可以用網上的工具來實現類似的目的,比如Tower、Teambition等。
(圖4 迭代需求列表 )
每日Scrum Meeting
每日Scrum Meeting類似于每日總結會。根據我的經驗,組內的每一個人都清楚知道自己在做的事情,Scrum Meeting使得大家在早上互相了解對方的相關情況,了解項目進度,為即將到來的一天設定工作方向。
潛在的可交付(Shippable)產品增量
在每一次需求迭代后,按理說你應該能夠提交可交付的產品增量(shippable increments)。這個術語適用于很多領域,但理論上很難實現。它表示在功能上做出改進的產品部分。
作為設計師你應該知道的
與產品打交道
盡管敏捷開發來自軟件工程領域,但該方法論對于網站和應用開發都非常有效。比如說,從你所創建的人物角色中,你可以勾勒出目標用戶的需求,并基于此挖掘所需的功能點。
鍛煉準確預估能力
你將需要與產品經理,或敏捷開發的高手合作(當然和誰合作取決于你在什么樣的組織/公司)。通常他們負責確保事情按計劃發展,因此會讓你盡可能準確地進行預估完成時間。你將會發現你很容易做出過于樂觀的預估,所以請現實一些吧 —— 沒有人會記仇的。
高度協作
敏捷開發的一個最大好處,在于它是一種高度協作化的工作方式。例如,在傳統的瀑布流式開發中,一般你把設計交給開發者后,你就再也見不到它們了。但在敏捷開發的迭代工作流程中,你會和程序員肩并肩坐在一起工作,完成每一次產品迭代。
結論
作為設計師,從自由工作者成為大公司的一員,與多個團隊合作、參與敏捷迭代項目,這可以說是一個非常大的轉變。根據我的經驗,敏捷開發是一個很有效的工作模式,它的原則甚至可以應用到你的個人項目中。通過理解協作式的工作方式以及如何評估完成時間,你將會更加高效與設計團隊協作。
作者| Joel Diaz
翻譯| 高雨滴、甄海宇
校對 |梁伊鑫
歡迎關注譯者(特贊Tezign)微信公眾號:
「UI 設計師想更好與團隊合作,直接學開發最方便!」
- 《提高設計還原度!寫給設計師的IOS前端教程(一)》
- 《提高設計還原度!寫給設計師的IOS前端教程(二)》
- 《提高設計還原度!寫給設計師的IOS前端教程(三)》
- 《提高設計還原度!寫給設計師的IOS前端教程(四)》
【優設網 原創文章 投稿郵箱:yuan@uisdc.com】
================關于優設網================
"優設網uisdc.com"是國內人氣最高的網頁設計師學習平臺,專注分享網頁設計、無線端設計以及PS教程。
【特色推薦】
設計師需要讀的100本書:史上最全的設計師圖書導航:http://hao.uisdc.com/book/。
設計微博:擁有粉絲量150萬的人氣微博@優秀網頁設計 ,歡迎關注獲取網頁設計資源、下載頂尖設計素材。
設計導航:全球頂尖設計網站推薦,設計師必備導航:http://hao.uisdc.com
復制本文鏈接 文章為作者獨立觀點不代表優設網立場,未經允許不得轉載。
發評論!每天贏獎品
點擊 登錄 后,在評論區留言,系統會隨機派送獎品
2012年成立至今,是國內備受歡迎的設計師平臺,提供獎品贊助 聯系我們
標志設計標準教程
已累計誕生 729 位幸運星
發表評論
↓ 下方為您推薦了一些精彩有趣的文章熱評 ↓