雖然我沒有歷經知識的前十年,但可以體會知識十年的歷程是滿足內心創造事物的渴望又符會數位市場的需要與變遷所產生的公司,與一群熱愛程式的工程師們,將創意願景的產品具體化的實現出來,讓產品更符合市場也讓工程師們得到創造的樂趣與滿足感。
但未來的十年或廿年知識在製造市場需要的產品上需要做更整體化、垂直化的管理、架構設計、實作和實現。當然這樣的做法也沒有抺滅掉知識創造的初衷,但需要加入更制度化的管理元素,但在這制度化的過程需要付出代價,這麼說好了,依人月神話一書學說的車庫開發程式年產值會在1000行 以上,但正規團隊的開發速度據說是年產約有1000行內的程式碼為什麼會有這樣的差距,經過了閱讀的瞭解和經身體驗程式開發過中如何讓程式更通用性、維護性高、文件齊全、完成測試、介面系統整合性高而後產出符合市場的產品,所以這些必須要制度化才可以達成公司未來的目標,但制度化過程必需要要花費以前3倍的時間產出產品必須花到9倍的時間,所以知識的十年前或現在的產出程式是很快的,但這程速度會慢慢的降低,因為我們正從車庫或英雄式的開發中做轉變。所以在車庫開發程式是有樂趣,但制度化的寫程式是苦難的,但如何讓制度化變成快樂的有樂趣的這必須做更整合化的分工垂直化的管理。
在制度化管理下如何讓團隊極具生產力,當然也不是猛加入人力就會改善,我們就依人月用醫院的外科手術團隊的例子來說,一個手術團隊會有那些人員:外科醫師、副手、助理基本上這些人員加一加會有基本成員5個人當然不包含實習生、觀察員、麻醉師。
外科醫師:稱之為首席程式設計師,他會負責定義功能上程效能上的規格、設計程式、編寫程式、測試程式、並撰文件。
副手:相當外科醫師的分身,能夠做任何外科醫師做的事,只是經驗較為缺乏。但在設計時擔任出主意、參與討論、評估的角色,外科醫師也可以把一些構想交給他去嘗試,但不盡然要接受他的意見。副手常常代表外科醫師去開會因為開會會佔到專案執行過程中的1/3的時間,和客戶或別的團隊討論功能、介面等事宜,當然無疑她也是個備胎,他甚至也會寫程式,但並不對任何程式負責。
助理:程式助理的專業職責就是分擔程式設計師的一些例行性工作,並保證在一定的效率之下,很有條理地處理一些容易忽略的瑣事,並強化整個團隊最珍貴的資產-工作產品。
在中小型公司,雖然一個專案執行如需用到5個人以上在成本上相對較高,但如何分配同一個專案如何去讓我們製作出的產品更有延展性、掌握到市場的新鮮度、文件規格相關文件的完整性,這是知識開發團隊接下來須面臨的課題。