2009年12月15日 星期二

X11 精確地拆解、完全地對應(3)──經驗的留存

先讓別人明白為什麼要做這些事之後,接著要讓別人知道為什麼會有那些物。將焦點放在搭配工具的那一欄:所有使用工具的聯集就是開發平台上應該安裝的全部。開發平台會分為Client端與Server端,專案起始的環境建置應同時準備好這些。前面提到的安裝文件就是描述整個平台從無到有的建置過程。

從使用者的觀點來看,並不需要知道開發平台是怎麼樣被建置起來的,只要提供一個能讓他們根據規定流程做事的東西即可。然而從管理面來看,如果設定需要調整要怎麼做?如果某個工具損壞了要怎麼安裝?如果某些工具有升級版要怎麼做?……用許多可能會發生的”如果”來檢視沒有完整說明的產出,就會發現根本不知從哪裡著手。

最近看了一些不錯的文章都有提到知識管理的重要性(高績效研發管理實務運作/李紹榮、研發人員常見問題之剖析與探討/吳英秦),這幾年我也體認到經驗的保存是很重要的事。為了特定目的如何定義需要的物、做哪些事可以得到那些物、怎麼設定能讓那些物具備功能、怎麼使用那些物可以達到我們要的目的,每一個想法與實現都忠實地記錄並收集起來,就能讓原先沒有參與的人很快地建構起與自己相近的觀念與成果。

這個開發平台現在連我在內一共有三個人完整安裝過,但是每個人都花了不少時間去詢問與搜索,像我就在網路設定上花費一整天才弄妥。做出一個完整的開發平台需要做很多的動作才能達成,我偶而會想:倘使幾個月後需要三個人根據自己手邊的記錄重灌一次的話,我們各自會花多少時間?如果各自找一位其他的工程師看著留下的資料重做的話,又需要多久?會問多少個問題呢?

有些道路是經過多次的摸索與碰壁後才發現到的最佳捷徑,沒法留下快速通往終點的記錄只會讓日後想走同樣路的人重覆花費摸索與碰壁的時間,如果那條路需要多人次的進行時更是重覆地浪費資源。留下足以讓後人快速達到終點的作法,可說是犧牲自己時間換取節省眾人時間的一種高尚行為──這是近來瀏覽其他人在網路上提供安裝設定方式與心得時,我心中所懷的敬意。

沒有留言:

張貼留言