應用生命周期管理(ALM)工具集管理將要構建的目標(需求管理),包括構建需要多長時間(項目管理或者項目跟蹤和評估),生產環境里到底有些什么(部署管理),以及代碼追溯回需求。
ALM套件將這些功能整合在一起,但并不是所有項目都需要整個套件。簡單的項目管理工具,比如Basecamp,其實就是個簡單的待辦事項列表,它可以幫助小型團隊實現ALM的某些方面。也可以在wiki上,比如Confluence,完成很多ALM任務,甚至在版本控制系統里,使用分支或者標簽來區分開生產環境的內容和仍在開發中的內容。企業的軟件開發團隊一般會選擇集成的ALM套件。
這很容易理解,云上的ALM套件和本地套件是非常不同的。如下是這兩種ALM工具的比較。
網頁ALM:更易使用
先假定公司的隱私和安全執行官不會否決這個選擇,那么最容易開始使用ALM工具的方式就是訪問網頁,比如Basecamp、Leankit、Rally或者Pivotal Tracker,你只需要注冊一個30到90天的試用賬號就大功告成了。填寫團隊的郵箱地址、DUANG、軟件即服務(Software as a service, SaaS)的ALM平臺,或者至少其中一部分,項目管理部分,就完成了。這意味著你的數據保存在云上,但是所有的鏈接都使用https保證其安全,這和在Amazon.com上注冊信用卡信息所使用的安全級別是一樣的。
當然,30到90天之后,會要求你每月支付費用。這時候可能就有問題了。如果你沒有經費或者決定停止付費,就需要將數據從SaaS系統中導出,不然數據就會丟失。如果你的工作是構建軟件系統,了解軟件項目的確切狀態十分重要,那么你就會想要保留這些數據。
當然也會有其他的安全顧慮。因為使用的工具只是一個網頁,已經離開公司的員工,即使是那些被解雇的員工,仍然可以登錄進去。那么你就很可能需要在最后工作日的時候完成權限的刪除,或者從自己的工作區域搭建登錄橋接。一部分該領域的工具支持使用LDAP(輕量級目錄訪問協議)從自己的網絡登錄,但是這會涉及到一系列的技術集成工作。
將組件和云端ALM工具集成會很復雜。一些供應商,如Microsoft,可以接管從需求到代碼、配置、文檔,并且可以追蹤,但要想使用它們,就需要使用這個供應商的全套工具。
另外一方面,SaaS ALM供應商會持續發布新功能,這是一個很大的優點,除非你不想更新工具。
本地ALM:更易于集成組件
本地ALM工具是和SaaS ALM工具是完全不同的一種方式。它們很難搭建,一般都需要系統管理員的幫助和一臺服務器。因為本地工具存儲在你自己的數據中心里,在防火墻后面,所以他們更為安全。如果你在內部不同的地方自己管理代碼、wiki和文檔,就會想要在內部將這些東西連接起來。不想改變的團隊可能會更傾向于使用可以自己控制什么時候升級的本地工具,而不是云端工具。
在分析ALM工具的最后,你需要考慮想要從ALM的哪個部分開始,公司的規模,工作流需要什么以及可以從運營團隊中得到多少幫助。一個需要把很多ALM組件關聯起來,并能夠得到運營團隊大力支持,預算充足的大公司(超過一百人)通常會選擇本地ALM工具。一個只需要項目管理工具的團隊,SaaS ALM工具是一個不錯的選擇,這就和建立一個Basecamp項目或者Trello白板一樣簡單。中間的所有一切都依賴于環境和偏好,不過希望我所提到的方面對你有所啟示。