Home > 【奇譚篇】 > 銀彈迷思

銀彈迷思

Thursday, May 11, 2006 Leave a comment Go to comments

Blog.gif自從20世紀電腦研究和發明以來,科技持續進步,人們的生活方式因此而完全改觀, 『Information』 成了所謂的『新經濟』。專家學者將其稱之為資訊革命 (Information Revolution),是繼農業與工業革命之後的第三次革命。資訊革命當中變化最大的,莫過於 『數位產品(Digital Products)』 的誕生 —— 一種異於 『實體』 觀念的產品 —— 也就是我們所說的 『Software』 ,『軟體』 或 『軟件』。

對於這種新型態的產品,或許是因為仍在襁褓之年,我們始終無法像控制 『實體』 產品般,有效率的掌握其完成日期(Due Date)與良率(Quality)。當然,眾多的專家學者提出各種學說與方法,想要改善這種問題,而且更進一步提升生產力。不過 Fred Brooks 在 1986 提出了一篇 『No Silver Bullet』 的文章,吹皺眾專家學者們的一池春水,但也一語中的,點醒他們偏離實際的大夢。

雖說如此,銀彈(Silver Bullet)迷思一直存活在大頭們的心中,彷彿是種能夠醫治百病的 『靈丹聖藥』。

※ ※ ※ ※ ※ ※ ※ ※

果園管理系統的開發,已經進入膏肓期…呃…後期階段。全公司總動員的情況下,古專員當然也不能例外的捲進產品修補大事。然而在眾人焦頭爛額的 『救火』 過程中,古專員發現了不少離奇古怪的系統需求 (Requirements) 與資料庫設計 (Database Design)。秉持著 『爛,但不可以更爛』 的心態下,古專員不得已向大頭提出了這些弊端,看看能不能藉機挽回一些劣勢,不過換來的是另一場中高級幹部的『高峰』會議。

會議室裏,大頭一號再度語重心長的說道:「看到古專員的 Email 才瞭解到,我們這套果園管理系統有不少弊病。白課長,你說說看這是怎麼一回事?」

白課長裝出一副受盡委屈的小媳婦兒臉孔:「偶們的 Resources 有些不足,加上前一陣子又有同冷(同仁)離職,才會這樣……」

每次看到白課長這副模樣,古專員便氣從中來:「照你這種不審核 Requirements 的作法,再加幾百個人也永遠不會足夠的!還有你們資料庫每天都在改,叫 Developers 怎麼做啊!」

為了避免沒完的爭執,大頭一號中斷兩人的對話,一副胸有成竹的向大家說道:「關於這些問題,我已經有解決的方法了。」

全場鴉雀無聲,摒息以待。

「軟體界龍頭 Macrosoft 公司剛剛發行一套幫助軟體開發管理的系統 —— Crew System 。系統內含數百種,依照產品開發時期分類的樣版文件,我們只要照著做,問題應該都可以解決。此外,這套系統還提供和開發環境整合的工具庫,可以更進一步提升程式 (Programs) 開發效率;它更提供工作項目追蹤和測試工具,確保我們能夠順利完成所有項目,消除所有的 Bugs ,更進一步提高產品的品質……」說話同時,大頭一號嘴角泛起淺淺的微笑,彷彿這套 Crew System 是上天賜與的仙丹妙藥,一切產品開發的問題與阻撓將灰飛湮滅。

古專員試著把大頭一號從夢境拉回現實,說著:「我瞭解 『工欲善其事,必先利其器』 ,我想這套系統絕對能夠改善我們開發產品的一些窘境,不過問題的根源還是時間與人啊。數百種文件格式,我們不知道有沒有那麼多資源與能力一一照著做。而且,像是 Engineer Side 人員和 Customers 溝通的技巧,或是不經過濾審核,就把 Requirements 丟給 Developers 去做,可能結果還是一樣的啊……」

大頭一號彷彿沈浸在服用仙丹妙藥後,如入雲端的美夢中,一副百思不解望向古專員說道:「總而言之,這套系統必定可以解決你所說的所有問題。說不定,系統中有一份 『顧客面談技巧』 的密笈啊!」

說完,駕著雲朵向南天門飛去,留下古專員這個凡夫俗子傻楞楞的站在那兒。

※ ※ ※ ※ ※ ※ ※ ※

如果細讀 Fred Brooks 的文章,會瞭解他的 『沒有銀彈』 指的是沒有簡單的方法可以讓軟體工程 (Software Engineering) 的生產力在十年內提高十倍。他的論點是必要與次要複雜度 (Accidental Complexity and Essential Complexity) 的差異。程式語言 (Programming Language) 這類由人們所創造出來的工具,屬於次要複雜度,可以隨時間進步被改良。然而必要複雜度,像是軟體本身要解決的問題,則無法移除。如果軟體需要提供30種功能 (或所謂的 Features),那麼這30種功能都是必要的,程式就必須做出這30種功能。

在我看來,除了產品的 Features 之外, 『人』 本身的複雜度也是必要的,正所謂 『成也蕭何,敗也蕭何』 。不論多麼好的方法或是工具,問題總是在 『人』 身上。

到底這世上有沒有萬靈丹呢?只在神話故事裡吧!

Categories: 【奇譚篇】
  1. No comments yet.
  1. No trackbacks yet.

Leave a comment