住手!你們不要再打了!設計師與工程師的愛恨情仇大解密

原文為 How to bridge the gap between Design and Development,本文章已經過作者同意翻譯並轉載,歡迎分享文章連結。

原作者 Florian Popescu 為來自羅馬尼亞的設計師,文章散見於 Muzli, UX Design Colective, The Startup。有興趣的朋友可以前往他的網站了解更多。AAPD 另有收錄他的優質好文設計師必看:簡單四步驟,讓你提升創造力

為什麼挑選這篇文章?設計師與工程師的愛恨糾葛其實呈現了同一件事的一體兩面,Florian 精巧地比較兩方根本上的差異處及相似處,也點出了他們相生相息的緊密關係。不論是設計師或是工程師,讀完這篇都會對自己的角色有更深一層的認識,同時更清楚如何與彼此配合。

本文譯者為 AAPD 編輯 Vincent,若有疏漏及錯誤請不吝指教,歡迎隨時來信討論翻譯上的眉眉角角。

大家都知道設計師與工程師之間常有衝突,但這起因不僅是因為兩方做的是不同的事情,更確切地來說,是因為在相同情況下,兩方解決問題的方式不一樣。

為了真正理解設計師與工程師之間到底發生了什麼事,我們必須先好好檢視雙方各自的目標及思考方式,在什麼情況下它們相似,在什麼時候卻又截然不同。

目標上一個做好整合、一個做出流程

設計的目標是在同一個方案中顧及越多元素越好(例如:視覺吸引力、易達性、易用性、行銷、品牌打造、歷史及地理背景等等),讓最多數的消費者能輕易理解並使用;而開發的目標則是運用精密的特定演算法,讓同樣最多數的消費者能最有效率地使用產品。

設計師在專案中要面對的是一堆毫無組織的複雜難題,相反地,工程師則是得建立一個有組織、有規則的電腦程式,也就是開發一個演算法,讓人們之後可以應用在生活中。設計師整合這些複雜難題並打造出一個實驗性的框架:原型(prototype),而工程師則在這個框架下運用電腦程式做出進一步的實驗性產品原型(functional prototype)。

少了開發,有設計也沒有用;但少了設計,即便開發了也不好用。

如果你剛入行,這點值得銘記在心。一個「有用」的解決方案必須實現承諾並且具備效能及效率。若要同一解決方案「好用」,則必須對消費者具有吸引力,讓他們在不必學習產品背後複雜的運作方式下,就能夠輕鬆理解使用方法。冰箱就是一個例子,多數人都不清楚冰箱實際的科技運作規則,但卻家家戶戶都有一台,而且人人都會用,這是因為冰箱的控制方法在如此安排設計下,可以輕易觸發背後的運作程式,讓每一個人都能快速上手使用。

思維上一個包容兼顧、一個只找出最佳解

從思考方式來看,設計和開發之間最大的差別在於:設計是具包容性的(inclusive),必須在解決方案中顧及越多要素越好;而開發則是具排他性的(exclusive),藉由排除其他所有的可能性找出最佳解。然而,為了要同時兼顧許多的要素及排除其他的可能性,不論是設計師或是工程師,他們都必須得深入分析、理解這一個又一個的元素,兩者相似的地方便在於此,這個過程是沒有終點的,總是會有新的發現,這也是為什麼設計師及工程師大概永遠都無法到達全知的境界。

設計與開發在本質上都屬於探索性的領域(explorative domains),因此,永無止境的學習與發現是不可或缺的。

近幾年由於越來許多人投入持續學習的行列,造就了 Behance 及 Github 等大型網路社群的興起,設計與開發的交錯關係也越顯複雜。但兩者的相似處並不僅止於此,設計與開發同時也是創造性的領域(creative domains),需要投入大量的腦力及想像力,推動著它們的正是想要解決問題、想讓世界更進步的人們。

那設計與開發的衝突究竟何來呢?為什麼這麼多團隊及公司在追求更大的目標時,卻發現這兩個理應合作的領域這麼難整合呢?

解決問題時一個聚焦在影響範圍、一個強調可行性

問題的核心就在於 — — 兩者解決問題的方式。設計是使用者導向的 (user-oriented),主要聚焦在「人」以及產品如何在每個層面影響使用者。開發則是解決方案導向 (solution-oriented),重心放在問題本身的限制及如何排除不可行的方案。有趣的是,兩邊都會強調他們的作法才是解決問題之道,開發認為專注在使用者身上並不是在解決問題,而設計則認為開發所謂的問題根本不是問題。事實是,雙方都沒有錯。

假如設計師用工程師的方式解決問題,我們的冰箱會開始對我們解釋它們是多麼精密厲害的科技、又是怎麼運作的,還會特別強調:「看看我這三種漸層閃亮亮的門吧!」,另一方面,如果工程師用設計師的方法解決問題的話,我們就會得到一堆排版非常漂亮,還有表情符號跟花裝飾的資料庫模型了。

在這種情況下,怎麼可能有辦法讓設計師跟工程師增加共識呢?在各自的領域中,他們處理問題的方法合情合理。設計師包羅萬象、複雜又花俏的工作性質正巧適合使用者導向的解決方案,而工程師系統化、使用運算並逐步排除可能性的工作性質則瞄準以解決方案為導向的演算法。因此,要求他們用相反的方式完成任務是完全不合理的。

理解彼此思維的歧異才能讓溝通更順暢

那,到底該如何消除設計與開發間的歧異呢?不如先讓他們看看這篇文章吧!讀完之後就會知道,不論是什麼專案,即便是同一個問題,設計與開發處理的方式本來就不一樣,清楚彼此的侷限性後,便能避免雙方因為不了解而引起的衝突,另一方面,多鼓勵設計師與工程師坐下來聊聊,讓他們談談各自遇到的難題,而不是互相較勁。

我高中讀的是資工相關的學校,表現好的同學們後來理所當然地都成為了工程師。我記得,每當我在資工課遇到問題時,我的老師總是要我自己找出答案,這對有著設計師思維的我來說非常難以理解,因為我想跟老師好好討論、並理清我所遇到的瓶頸,最後再寫個漂亮的程式解決它們。我花了整整三年才理解這並不是這個產業解決問題的方式,又花了另外四年才明白高中這些年對我的思考方式所帶來的影響。

當我的工程師好友準備搬到荷蘭時,我做的第一件事就是送他一本詳盡的設計參考書。這就是消除設計與開發間歧異的實際做法,藉由增進對彼此觀點的了解,讓雙方都能暢談彼此處理問題的方法,溝通便能更順暢。

理解彼此的限制才能發揮合作的潛力

在大型專案中,設計師通常是那個想要打造複雜功能的角色,但工程師往往無計可施,雙方因此鬧得不愉快;工程師覺得設計師夢做得太多太大,而設計師則認為工程師一點都不想試著去了解這些功能會為使用者帶來什麼幫助。

真正的挑戰是:只有當雙方都理解彼此的侷限性後,才能發揮每個人的最大潛力。這也是為什麼讓你的工作夥伴認知到這點是如此重要,試著去了解你不會使用的方法或是工具,之後你便可以整合你會使用的技能及知識來解決問題,而這正是追求卓越的不二法門。

AAPD是 As A Product Designer 的簡寫我們希望提供產品設計師所需要的各種資訊,並且致力在平台上創造更多的交流與互動。我們關注於UI設計、UX設計、設計師的個人成長、設計趨勢與產業動態等並分享這些資訊,期望降低每位設計師成長的過程中所遇到的阻礙。我們期待這裡成為一個設計知識的媒介,讓每一位來到這裡的人都可以得到滿滿的收穫,並且讓每一位身為產品設計師的人都能為自己正在創造的事物感到驕傲。

--

--

AAPD — As A Product Designer
AAPD — As A Product Designer

We share digital product design experiences & help designers find their purpose and passion. Follow our Medium Publication ↑ and Facebook http://fb.me/aapd.tw