無論建築或是軟體開發,溝通不良都會造成專案的失敗。ZDNet有篇文章談到,建築師無法了解使用者的需求就相當於軟體系統架構師或專案經理不了解使用者的作業流程或習慣,結果就是建造出不合用的建築或軟體系統。
作者從災後學校重建的實例中看到建築師與校方的溝通上出了問題,她認為這是因為校方沒有積極地參與設計的緣故。我們很難知道這是否是實情,但如果在軟體專案碰到同樣的現象時,筆者認為不一定是因為使用者缺乏積極參與。從筆者的專案經驗顯示,即使使用者積極參與設計,開發者還是會因為與使用者之間存在觀念溝通上的藩離,而聽不見使用者的心聲。
組織邊界(boundary)的隔閡
傳統工業中,因為講求大量生產,客戶不須與製造者溝通,也沒有溝通的問題。但知識經濟客製化需要溝通,然而組織邊界的藩籬卻增加了溝通難度。
軟體開發者與使用者所遭遇的問題常常不一樣,並且受限於環境、背景、專業、能力等因素,對問題往往會有不同的表達方式或認知,這也就常常造就了先天上的溝通障礙。
為了讓彼此的溝通更加順暢,資訊部門常會擔任開發者與使用者之間的溝通橋樑。他們與使用者處於相同的組織,會比開發者更了解使用者的問題;同時資訊部門也比使用者更了解資訊技術的專業,與開發者溝通會比較不會因為技術背景不同而產生認知上的落差。
然而實際上卻不盡然如此,開發者與資訊部門的溝通還是會讓開發者不見得可以正確無誤地聽到使用者的心聲,其中的原因之一是因為組織邊界是相當不容易跨越的。筆者曾經與石頭成、喲哪桑討論過這個議題,提出了我們各自的經驗與看法。
筆者認為開發者與資訊部門之間,存在對專案不同的期待與目的,使得彼此很難建立共同目標,除非彼此之間存在足夠的信任。在沒有足夠的互信基礎下,彼此之間很難達成共識,而造成了交易成本的增加。
石頭成認為開發者與使用者之間,交易成本的增加是因為資訊部門與開發者的專業經理並不是真的系出同門。他提出了資訊部門的出身科系以資管系居多,開發者的專案經理的出身科系以資工系居多的假說。他認為如果此假說成立,正代表了資訊部門與專案經理之間互相不知道彼此在想什麼。也就是說專案經理不敢承諾資訊部門提出的需求;資訊部門不肯為專案經理提出的功能背書,因此產生了龐大的交易成本。
也有人,像是喲哪桑則根據他的觀察提出了另一種可能的觀點,也就是研發人員與資訊部門心中的技術階級制度在作祟。他發現很多人常常覺得系統管理的階級,比做研發人員的來得低。他提到:
如果大家都有這種心態,溝通起來就好像走在地雷區一樣,有的RD會覺得自己為顧客恩賜的五斗米而折斷了腰,有的MIS更成了從自卑感而產生的自大狂,大家都是未爆彈,衝突隨時一觸即發。
其實從筆者與石頭成與喲哪桑的討論來看,不難發現開發者與資訊部門之間的溝通問題,大致可分為彼此之間資訊不對稱的現象與利益衝突或不相容兩方面來看,而依筆者的觀察,這兩方面的原因彼此之間會相互增長,正如下面的系統思考圖所展現的動態系統模型所示:

如圖所示,資訊不對稱的現象會因為利益衝突而不斷加劇,當甲乙雙方的利害關係是不相容的,那麼就會有一方會想辦法增加資訊不對稱的現象,而另一方則想辦法減少資訊不對稱的現象,因此,資訊不對稱的現象不可能會被消除,而且我們更可以推想得知,雙方鬥法的結果,引發衝突是必然的結果,差別只在於是否浮上檯面。(待續)

