永遠在乎User需要什麼

相信只要是寫軟體的都會有這種經驗 ,就是花了好幾個月和 USER確認完 SPEC的程式 ,也花了好幾個月開發完了以後 ,USER看完 DEMO之後又?要大幅度改系統的邏輯。
這樣來來回回改了幾十次 ,這種經驗也有過十幾次之後 ,軟體工程師就會開始慢慢不在乎 USER一開始的意見了 (所以學術界一直在研究所謂的彈性設計都沒什麼具體結果 )。  就像很多曾經有雄心壯志的畢業生五六年來被這樣來來回回程式改來改去之後變成隨波逐留的上班族。下面?的發生在我身上的真實故事和我上面?的完全相反 ,是一個完全不在乎 USER觀點的系統的故事。我盼望從自己的這個經驗裡撿回一點當初對系統開發的熱情。 (也請求各位 USER儘量一次把規格想清楚 ,不要把軟體工程師教成可以重演這種故事 )。

我在部隊裡的工作是在軍事法院裡面做雜工。就是薪水該報的時候我來報 ,電腦網路壞了我修 ,人事資料管理。。。因為早上部隊裡有早課 ,所以從下午開始做一定做不完 ,?天加班到一兩點是很正常的事情。如果加上做安全士官的時間 ,?天只睡兩三個小時。 (下次誰再?司令部的工作很輕鬆的請去我的職缺做做看看 )。

陸軍聯勤總部 (國軍的兵工廠,負責全國國軍的補給 )是陸軍最有資源的單位之ㄧ。他們再我當兵的第一年招集了全國資訊科系的高材生去替他們寫了一套專門管理志願役軍官的裝備管理系統。在我破冬 (就是做滿一年兵的意思 )的時候要求全國的經理單位 (負責發裝備的單位 )負責人 key in所在單位的志願役軍官裝備資料到資料庫裡面去好做管理。方法很簡單,就是在 PE2上面打類似下面的 data

A12345667;78;174;30;23.5;34;1;1;…….

你們一定看不懂這是什麼,這第一欄是兵號,第二三欄是體重身高,然後在之後是頭和腳的大小等等。不要說什麼 user interface,連個欄位都沒有,有時候因為要填很多空的值進去。所以會有一大堆的分號,多到我會算錯。聯勤總部要求兩個檔案。一個是人的基本資料,另一個是這個人的裝備歷史資料。一個軍官大概要寫二十幾行 (因為有這麼多種類的裝備 ),然後一行有七八十個欄位 (雖然不是每一欄都一定要有數字 )。

 

這工作交給我做的時候我只有一個半月的時間。所以我把查帳修電腦的工作移到凌晨去做,下午趁軍官還沒下班以前替他們量深高三圍手腳長度。後來花了三個多禮拜終於把軍法組裡四十幾個人的資料弄齊。送去聯勤總部之後被退件,說資料不符。回來檢查過以後才發現 (我那時候真的體會 Excel的偉大 ,因為部隊裡沒有 )少打了兩個分號。改過以後送過去,又發現還是不過,可是我就是找不出原因。時間用掉了一半,我連比基本資料多二十倍的裝備資料都還沒開始做。我開始緊張了,本來很內向的我嘗試著在一次吃飯的時候問到其他的處組和我做一樣工作的同袍。 ”早就弄好啦 ”我嚇了一跳,大部分的這個工作負責人都已經做完了。 ”可是為什麼我送兩次都沒過 ?”我慌張的問。 ”唉呦 哪個測試程式寫錯了,他多檢查一個分號,和規定的不一樣,其實那個程式只有檢查分號而已,很容易騙 ”。我這個學資訊的很驚訝的問他為什麼會知道這個 BUG”因為我送了五六次,然後和驗收官搞嘛幾一點他就跟我說了 ”。我又問他他為什麼在這麼短的時間之內把軍官資料拿到 ”笨,我隨便亂寫的,每一行都 copy然後把兵號換掉就好啦。你一個人一個人量你還有時間睡覺喔 ?”後來我又問了另外一個同袍,他說 ”我就 copy那個 XXX的,然後把兵號換掉。你該不會笨到真的去找軍官量吧 ?你瘋啦 ”那時候又有一個台科大資管系的來插話 ”大家都是學資訊的,你會寫一個系統沒有介面叫 user自己去寫 text file嗎 ?當然是要亂大家來亂啦,等他們發現的時候我們已經退伍了 ”。

 

哪天晚上我心情很沉重,我去問我的老闆 (一個年輕法官 )我可不可以和他們一樣。 ”大家都亂搞的話就不差你一個,皓洋,當兵就是這樣,學一次乖 ”我老闆對我很好,我也依照他的意見,和我同袍借一個 file來作弊。為了爭取在軍中寶貴的睡眠。

 

後來,到我退伍以後都沒有再聽過聯勤總部叫我們用任何一套新系統,我們換發新裝備或是新進人員發裝備也一直都依循傳統的紙上作業。一個沒有 User支持的系統,就只是一堆破電腦和程式碼而已。 ”永遠要在乎 User需要什麼 ”這是我在上課的時候 常常聽老師說的。不過一年來我親身和 USER爭執;討論;妥協之後。我真的忘記這個信念,我也差點忘記我也曾經是 User。