2009年9月21日 星期一

X03 定義出正確的客戶並找出全部的需要

已知有一個重要的功能即將交給自己開發,這個時候在心裡盤算的是些什麼呢?大多技術人員都知道需要定義出功能清單作為開發的基準,功能清單應由提出需求的人認可才算數。但是若承接的功能是屬於底層架構的功能,未來會有許多專案人員根據這個功能來開發許多程式,這個時候心裡應該盤算什麼呢?

優先考慮的當然是誰來驗收這個功能?從句意來看很明顯地有兩類客戶:
●使用者:需要這個功能可以正常執行的人。
●專案人員:基於這個功能來開發其他程式的人。



做出可正常執行的功能給使用者驗收是一定要的,因為你的東西一定要先能用才有可能收得到錢。但是專案人員是使用自己產出的功能予以加工而包裝出使用者要的東西,需要考慮的項目就多很多。像是:
●功能的目的與限制條件
●使用方式與範例
●定義檔的格式
●設計的過程與想法(維護需要)
●輔助的設定工具(使用方式太複雜時需要)

雖然對專案人員來說提供這些是正常的,但要讓專案人員能熟練地使用必須要額外付出不少努力。聰明的人自然會提出能讓自己信服的理由:“這個功能最終目的是要讓使用者正常地執行,因此只要符合這個目標即可”,所以就縮小了客戶的範圍與要做的事;主管們當然很高興聰明的人可以用很短的時間“做好”這個功能而且驗收,可以繼續處理下一個功能創造更多的產能。

主管只看產能且設計者只看驗收的情形下,專案人員需要的東西大半被忽視,難以訓練成用快速的方法做出正確的東西,工作久了自然會有嚴重的倦怠感。專案人員在主管眼中僅是可被取代的生產工具而已,發出的聲音幾乎都被忽略,在此狀況之下公司的開發團隊文化就只能取決於聰明的人怎麼做了。

沒有留言:

張貼留言