在「Yahoo!奇摩新聞」看到一篇報導, 有感而發。
半導體產業等其它產業為何愛用印度人我不得而知; 但軟體產業愛用印度人的原因應和 CMMI 有關。在政府和資策會大吹大捧 CMMI 的情況下, 印度這個除了美國之外擁有最多達到 CMMI Level 5 的國家便成了台灣軟體公司心中的「神」。於是大家便一窩蜂的聘請印度的軟體工程師, 以為有了這些人的加入便可幫助公司提升品質並且順利取得 CMMI 認證。
然而, 事情真的這麼的美好嗎? No! 國內軟體公司的開發流程及生態普遍相當低落, 就連號稱龍頭的資策會也還在摸索階段。政府和資策會吹捧 CMMI 的好, 老是以為 CMMI 可以有效提升國內軟體的品質; 能說他對, 也能說他錯! 因為 CMMI 最主要是透過流程的改造以確保你的產品能維持一定的水準, 也就是說如果公司的流程很差導致產品爛, 那麼 CMMI 只能確保你每次開發的產品品質能維持一致的爛 (而不是更爛)。加上國內 CMMI 根本是玩假的, 只為了拿到 CMMI 認證而 CMMI, 因此品質真能有所提升嗎?
CMMI 還有一個盲點, 那就是當你取得了該階段的認證後, 便不會再檢查了, 也就是說, 一家公司十年前拿到 Level 5, 十年後他仍擁有 Level 5 的認證, 然而這十年公司內部的變化有多大!?
我們再回到印度人身上。國內軟體公司除了因 CMMI 而引進印度人, 其實還有另一個原因, 那就是希望藉重印度公司 OOAD 的能力期使透過引進印度人才而使公司內部的 OOAD 能力能有所加強。然而結果為何? 往往是印度人孤軍奮戰, 畫了一堆 UML 卻沒人看得懂, 因為公司內部上上下下的所有人都沒有 OO 的概念。在沒有任何的基礎建設下, 往往變成印度人 OOAD 他們自己的, 程式開發人員仍照著自己的想法來 Coding。甚至還有公司主管誤認為六年級生 OO 的觀念比較強, 而要六年級生來導入 OOAD。天啊! 讓我死了吧!
印度人的引進其實沒有一定的對錯, 但, 要用對地方。印度人寫程式真的是像工廠生產線上的工人一樣, 可說是機械化動作, 該在檔頭留下修改日期及目的的註解他們一定會留, 該在某個地方特別說明的地方他們也會說, 這的確是值得國內許多軟體工程師們學習。但, 若是希望能透過印度人的引進而取得 CMMI 的認證或是提升公司 OOAD 的能力, 那就省省吧! 基礎建設先做好再說!
以上胡言亂語寫了一堆, 皆為我的認知, 有誤請指正。
延伸閱讀: