作業: 選擇與獲得工具
這項作業說明如何選取和取得支援專案「開發流程」的工具。
規範: 環境
目的

這項作業的目的如下:

  • 選取符合專案需求的工具。
  • 取得專案的工具。
  • (選擇性)在內部開發特殊工具,以支援特殊需求、加入自動化來解決枯燥乏味或容易犯錯的作業,以及讓工具更完美地整合。
關係
角色主要執行者: 其他執行者:
輸入強制:
選用:
輸出
流程用法
主要說明

流程中有許多步驟必須輔以適當的工具支援,才能有效地執行。 必須根據組織的特殊需求來挑選工具,大多取決於流程所需的特定作業或工作成果。 概念:支援工具概略描述專案需要的各種支援工具。

為了支援特殊需求、加入自動化來解決枯燥乏味或容易犯錯的作業,以及讓工具更完美地整合,有時需要在內部開發特殊工具。 這項工具開發工作可能需要搭配比開發產品時更輕型的交付流程。

請同時配合組織的流程實作來選擇和取得工具。如需詳細資訊,請參閱在專案中實作流程

步驟
指出需求和限制

查看下列項目,指出工具支援有何需求及限制:

  • 交付流程。需要什麼工具支援才能有效率地工作。比方說,如果組織決定採用反覆式交付流程,則必須將測試自動化,因為在專案期間將進行多次測試。
  • 管理(或開發)平台。 
  • 目標平台。
  • 要採用的程式設計語言。
  • 現有的工具。評估任何現有且已證實的工具,決定是否堪用。
  • 開發組織的分佈情形。組織是否實際分散各處?開發工具通常有不同的方式來支援實際分散的組織。
  • 開發工作的規模。工具大多可以適當地支援大型組織。
  • 預算和時間限制。

開發組織評量對此步驟提出一些很好的輸入。 

收集工具的相關資訊

針對候選的工具及其廠商來收集相關的資訊。這項資訊包含可從廠商或獨立審查機構收集到的資料。   

工具特性和功能

根據您研究的工具類型,建立一份特性和功能清單。廠商大多會提供這樣的清單。 下表顯示配置管理工具的清單片段。 

特性和功能

所有檔案系統物件全部版本化 
目錄版本化 
混合檔案類型 
壓縮文字和二進位檔 
... 

工具和廠商準則

針對下列準則來收集每一項工具的相關資訊。 

工具
準則 

註解 

特性與
功能 
工具提供的功能。這應該是「工具特性」表格的總結部分。  
整合  與其他工具的整合程度。不同的工具之間如何傳送資訊?此工具與現有工作及您評估的其他工作之間的配合度如何。 整合性通常比特性更重要。整合良好的工具通常較容易使用和維護。 
適用性 

工具對交付流程的支援性如何。您必須改變工作方式才能使用工具嗎? 您能夠接受妥協嗎?欠缺適用性表示您可能必須改變工作方式,亦即「順應工具」。 但如果工具還有其他優點,則值得考量。

 
延展性  延伸和自訂工具的能力。延展性很好,這表示您可以調整工作來滿足需求。 不過,請確定不會只為了使用工具而浪費太多時間來配置工具。 
團隊支援  支援一群使用案的能力。工具支援分散各地的團隊嗎? 
使用性  學習和使用工具的難易度。注重工具最普通的用法。需要多久才能有效地使用工具? 工具也適合不常用的人使用嗎?請注意最常用的功能。有些不常用的功能很難使用,但可以不必理會。 
品質  視工具類型而定,工具的品質將決定您建置的產品品質。 尤其,當您直接主導所開發的產品時,品質更加重要。 例如,產生緩慢程式碼的編譯器,或產生不良 HTML 的 HTML 編輯器。 
效能  工具的整體效益,包括產能、存取性及回應時間。如果只是不常用的功能受到影響,則可以接受效能不彰的情形。  
成熟度  工具的成熟度。不論工具有多麼出色,有些組織絕不會向新的廠商購買第 1 版的工具。  

廠商
準則 

註解 

穩定性  您的未來取決於廠商的未來。這家公司在業界已生存多久?這家公司是否穩定? 他們正在投入研發此工具嗎?此工具是否為該公司的主力產品,或只是副業? 
支援可用性  廠商及/或潛在夥伴提供什麼支援?您可能需要尋求協助來安裝和配置工具,以及對使用者的持續支援。 
訓練可用性  廠商及/或潛在夥伴提供什麼訓練?  
成長趨勢  工具是否適當地支援您目前的開發方向。請考量您的開發方向。 工具支援此方向及您可能推動的其他方向嗎?  

成本

取得和擁有工具的相關成本,包括購置成本、實作成本及維護成本。 決定您有許多使用者及您要以多長的時間來計算成本。 

成本

 

註解 

購置成本  採購此工具的成本。 
實作成本  安裝工具並與現有開發環境整合起來的成本。其中包括工具使用者的訓練成本,含管理工具的使用者和人員。 
維護成本  維持工具正常運作和堪用的持續性成本。這包括工具的管理成本、處理升級的成本,以及工具管理者和使用者的持續性訓練成本。 

比較工具

綜合考量各要素來選擇最佳工具不是一項單純的問題。為了有助於做出決策,建議您建立一份特性表格。

比較特性和功能

利用特性和功能清單,決定每一項特性或功能對您的重要性。可以使用下列等級:

  • 必須。工具必須有此特性。
  • 。有此特性最好,但不是絕對必要。
  • 不需要。工具是否有此特性並不重要。 

指出每一項工具是否有此特性或不使用下列符號:

符號  

說明 

具有特性 
-     缺少特性 

將所有特性和功能記錄在表格中,並排定重要性。指出每一項工具是否有此特性。 下表顯示三種配置管理工具的一部分比較。 

特性和功能

等級 

工具 1 

工具 2 

工具 3 

所有檔案系統物件全部版本化  必須 
目錄版本化  必須 
混合檔案類型  必須 
壓縮文字和二進位檔  好 
...  ...  ...  ...  ... 

比較工具和廠商準則

除了特性以外,您必須依其他所有因素來比較工具。為了概略地瞭解工具,建議您將概觀記錄在表格中,如下表所示。 簡短描述您對於每一項因素的需求和限制。 對每一個因素指定權值,表示此因素您對的重要性。 例如,使用 1 至 5 的等級,5 表示因素非常重要。 

依下列準則來評比每一個工具(和廠商)。您可以採用 1 至 5 的等級:

  1. 在這方面沒有用
  2. 較差或有些嚴重的缺點。 
  3. 在這方面已足夠。
  4. 在這方面高於平均水準。 
  5. 在這方面表現傑出。

將比較結果記錄在表格中,如下表所示。 

工具準則 

註解 

工具 1  

工具 2 

工具 3 

特性與
功能 
           
整合             
適用性             
延展性             
團隊支援             
使用性             
品質             
效能             
成熟度             

廠商準則 

           
穩定性             
支援可用性             
訓練可用性             
成長趨勢             

比較成本

比較每一個工具的成本並記錄在表格中,如下所示。以「低」、「中」或「高」來評價每一項成本。 

成本 

註解 

工具 1  

工具 2 

工具 3 

購置成本             
實作成本             
維護成本             

選取工具

選擇最能滿足需求和順應限制的工具。請勿只是比較特性和功能。 其他準則也同樣重要,甚至更重要。除非工具選項很明確,否則建議您在認為最符合需求的工具上進行測試,再決是否取得。 

如果對工具有任何疑問,最好的辦法就是測試工具。您也可以試著尋找其他使用此工具的公司,請他們評估此工具。 怹也可以詢問廠商的推薦客戶;其他使用此工具的客戶。 網際網路上也有資訊,例如線上雜誌會發表評論。  

決定之後就不要改變。在專案中途更換工具通常較費成本。

取得工具

取得工具不是一項很單純的問題,其中涉及法律事項及財務事宜。 在此不討論工具購置的任何細節。可考量的方面如下:  

  • 安裝。他們提供多少協助來設定工具?
  • 支援。廠商提供何種支援?很多工具廠商會提供多個可選擇的支援等級。錢付愈多,支援愈好。 
  • 廠商保證。廠商對於身為新客戶的您有何保證?如果您有工具方面的問題,他們可以提供何種協助?開放什麼服務時段及收費如何?
  • 影響力。您對工具的未來有何影響力?如何設定需求的優先順序?  
  • 維護。廠商如何處理工具中的瑕疵?有預計的「服務套件」版本嗎? 
  • 訓練。他們提供什麼訓練?訓練課程的可用性如何? 
  • 產品未來。有任何計劃指出工具未來的發展嗎?
  • 軟體授權。您應該為全體專案成員購買一個單位授權,還是為每人購買一套工具? 有些工具提供「浮動」授權,限制一個組織內同時存在的使用者人數。