l

2017年1月24日 星期二

阿嬤覺得你冷

Jan. 24 08:40~10:15

屏幕截图 2017-01-24 10.14.05

還在休育嬰假的老同學今年難得帶著小朋友從日本回台灣過年,昨天中午約了一起吃飯敘舊。同學推著嬰兒車和Teddy走在西門町前的中華路人行道上,昨天氣溫只有10幾度風又挺大的…

Teddy:風這麼大你不用把嬰兒車蓋起來嗎?

同學:喔…還好啦,讓小朋友透透氣。

Teddy:對喔,我去日本玩的時候看到日本小學生冬天也都是穿著短褲就上學了,日本人應該比較不怕冷。不過一般台灣家長在這種天氣帶小朋友出門一定包得緊緊的,深怕小朋友吹到風會感冒。

同學:你知道嗎,「有一種冷叫做阿嬤覺得你冷」,如果是他阿嬤在一定會叫我讓小朋友多穿幾件衣服。

未滿週歲的小朋友還不會開口說話,阿嬤覺得你冷,那你就冷瞜。

***

很多軟體專案也都存在這種「阿嬤覺得你冷」症候群:「有一種需要,叫做RD覺得你要(或覺得你不要)」(RD可以換成業務、行銷、PM、老闆,也都講得通)。客戶、Product Owner與開發人員雖然都有開口說話的能力,但卻不一定有機會經常溝通。就算專案跑Scrum,每個sprint都開planning meeting、review meeting,頻繁的溝通算是做到了,但卻不一定可以做到有效溝通。

敏捷開發的解法除了鼓勵頻繁溝通與回饋之外,還有一些「工具」可以搭配一起服用。例如這一陣子很熱門的「使用者故事對照 (User Story Mapping)」,透過視覺化以時間軸的方式展開用戶使用系統的歷程,讓所有專案相關人員對於要解決什麼問題(目標)、如何解決(功能)、何時解決(優先順序)可以產生共識

屏幕截图 2017-01-24 09.18.54

 

另一種常見而且可以搭配「使用者故事對照 (User Story Mapping)」一起服用的方式就是BDD(行為驅動開發)。依據《BDD in Action》的說法BDD可以分成以下幾個步驟:

  • 客戶與商業分析師透過談論具體例子來溝通系統功能應該做哪些事
  • 商業分析師與開發和測試人員將這些例子以固定格式轉成一組需求。常見的方式為採用Gherkin格式,也就是Given-When-Then。
  • 開發人員使用BDD工具將用Gherkin寫成的需求轉成自動化測試,並且透過這些自動化測試連結到程式碼,用來客觀地判斷需求是否開發完成。
  • 開發人員使用測試結果作為手動與探索測試(exploratory tests)的起點。
  • 自動化測試作為低階技術文件,並且提供系統如何運作的最新實例。客戶或PO可以檢視測試報告以便得知那些功能已經交付給客戶,以及功能是否如他所預期的工作。

把溝通的結果透用可執行規格(executable specification)來記錄與驗證,「理論上」造成誤解的機率應該大大降低。

***

雖然「阿嬤」的意見有時候是正確的,但總是依靠「阿嬤覺得你冷」來決定產品要做什麼以及不做什麼,似乎不太靠譜。如果你的專案需求大部分還是來自於「阿嬤覺得你冷」,除非「你阿嬤是賈伯斯再世」,否則是時候做些改變了。

***

友藏內心獨白:友藏也覺得好冷。

沒有留言:

張貼留言