評估和選擇軟件工具的五個步驟
譯文【51CTO.com快譯】我在職業生涯的早期階段是名軟件質量工程師,那時主管軟件工具的評估、購買和實施工作。作為工具管理員,我幫助同事分析諸多工具,更準確地找出同類中的佼佼者。我遵循的流程非常適合正確評估一系列技術解決方案。
考慮到這一點,我編寫了這份簡要的逐步指南,但愿對將來可能需要選擇工具的那些人有所幫助:
1. 確定關鍵的技術功能
我最近讀了本·霍洛維茨(Ben Horowitz)撰寫的《創業維艱》一書。談到招聘高管時,他提出了兩點,這兩點同樣適用于選擇工具。他特別指出:“如果你從來沒有干過某項工作,怎么招聘到適合這項工作的人員?”而說到選擇工具,這可能意味著:“如果你從來沒有干過某項工作,怎么為干這項工作的人員選擇***工具?”
接下來一點是:“記下你想要的優勢,以及愿意容忍的弱勢。”這一點很重要,因為沒有哪一款工具適用于所有人。我們很容易掉入這個陷阱:因為一味專注于選擇一款沒有明顯缺點的工具,結果選擇了一款“勉強可以”的工具。別低估了你所尋找的優勢。
首先,確定為最終用戶、管理員和公司管理層提供價值的關鍵技術功能。這類功能的簡短清單可能包括如下:平臺兼容性、第三方軟件兼容性、成套功能、可配置性(指點操作)、可定制性(編碼)、符合各種流程的靈活性、易用性、用戶社區的活力/規模等。貴企業可能需要更多的功能。
接下來,你需要為技術功能加權。在制作這份等級表時,對你認為最重要的功能賦予更高的權重。在某些情況下,我們會將決策的50%賦予單單一項功能,而其他一些無關的功能只有5%的權重。這可以幫助你評估優勢,如上所述。
下圖這個例子顯示了功能及其權重,總共為100%。
請記住,你在給這些功能加權時力求全面對你最有利,所以別在時間或流程上敷衍了事。我參加過幾次評審,粗糙的流程導致了權重偏差嚴重的功能,這反過來導致選擇了錯誤的工具。我們都聽過“垃圾進等于垃圾出”這句老話。這句話同樣適用于此。
2. 識別和評估工具
利用各種渠道,比如行業活動、出版物、用戶社區和業內同行,調查并選擇合格的候選工具。你在努力識別候選工具時,別忘了看看公司內部。你已經在使用什么工具?你在內部可能就已經有幾個候選工具。你可能發現,如果目前擁有的工具需要報廢或停用,這番工作不僅限于工具選擇,還需要考慮到工具整合。如果你***面臨多個工具,可能在內部需要提供指導,表明使用哪個工具、為何使用。但是這個話題我們以后討論。
確保一致性對任何工具評估而言至關重要。切忌這樣:看了某家廠商的官方網站和幾張數據表后就評估一種工具,然后評估另一種工具:把該工具引入到公司內部,接受幾個星期的評估。搞清楚你想要如何一致地給每項功能評分,如何一致地評估每種工具。某些功能可以通過閱讀數據表來進行評估。其他功能可以借助現場演示和質量保證來進行評估。而某些功能你必須在自己的環境下親眼看一下。
使用從1到5的基本等級表,填寫矩陣(見下文),給每種工具的每種功能評分。你甚至可以根據幾項屬性將某項功能單列出來。下面我對功能6的三項屬性求平均值,以獲得一個分數。
3. 給工具評分,然后列出擁有那些功能的最終候選工具
現在是時候進行一番計算了。加權分數使用下列公式和來自***個和第二個步驟的數值計算而得:
權重/ 5 *分數=加權分數
比如說,工具A功能1:
25 / 5 * 2 = 10
下一步確定“值得保留的工具”。在這種情況下,我們把得分***的工具B和C列入短名單。工具A處于交界點,因為雖然它在一些方面具有優勢,但是在其他方面差強人意。這是滿足你確定的技術要求的最終候選工具,并注重你想要的優勢。
4.計算總體擁有成本(TCO)、投資回報率和軟性好處
現在著眼于非技術方面評估“值得保留的工具”,比如總體擁有成本和投資回報率。在這個環節之前,成本被有意忽略。純粹根據技術功能來評估和選擇“值得保留的工具”,并不考慮成本。
價格肯定是大多數企業考慮的一個因素,所以要考慮影響擁有每種工具的總成本的所有因素。這不僅僅涉及明顯的前期許可成本。由于沒有許可成本,大家忍不住會認為開源工具是“免費工具”,但是如果考慮到所有成本,開源工具可能極易昂貴。非許可成本可能包括:維護和支持續約,與培訓用戶和管理員有關的時間和成本,需要多少管理員來部署、維護和升級工具,工具管理員和開發人員所需的技能組合,以及那些人員的全部成本。此外,還要調查所需的任何額外的硬件成本。
許多好處是顯而易見的,衡量起來相對簡單直觀。但務必要包括因消除人工流程而預計節省下來的時間。
“軟性”好處衡量起來比較困難,但是把它考慮進來非常重要。比如說,公司將得益于提高的團隊參與性(因而員工更開心)、更好的可追溯性(因而更好地遵守行業法規)以及因準確數據而改進的管理報告功能(因而帶來更合理的決策)。
***,你需要對每家工具廠商的愿景和未來發展方向作一個判斷。這家廠商能夠成為戰略性合作伙伴嗎?它是否以穩定的步伐提供創新技術?它有沒有能力在今后幾年繼續交付解決方案?
5. 向利益相關者闡述選項和建議
由于你已經對每種工具運用了排名系統,更清楚地了解了每種工具的總體擁有成本和價值,現在要將相關選項告訴管理層的有關人員。起初根據***技術解決方案來闡明你建議的選擇。這很重要,因為***技術解決方案可能是對貴企業最有利的那種方案。除此之外,它可能會帶來最滿意的開發人員/從業人員,可能甚至影響你留住他們的能力。而我們知道,這年頭物色并留住優秀的程序員有多難。
如果***解決方案不是成本***的方案,就要準備分擔選擇一種技術較遜色、成本較低廉的解決方案帶來的業務風險。這些風險可能包括:生產力下降、數據損壞、員工不滿以及把錢花在無法實現目標的系統上。選擇實際上可幫助你實現目標的那種解決方案,避免客戶流失。
如果遵循這五個步驟,那么恭喜你!你可能做出了穩固的業務選擇。如果你花時間正確評估面臨的選項,貴企業就能大大提高效率,會成為吸引優秀人才前來工作的誘人工作環境。
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】