通常一提到ITIL大家都會習慣的認為它就是為IT運維工作服務的一種方法論,好像只對運維人員的工作有幫助而對于IT部門中很重要的開發工作好像沒什么關系,其實這種看法是比較片面的。我們先來看看實際工作中開發和運維是個什么樣的關系,存在什么樣的問題?再來看看ITIL是否對于我們的軟件開發工作也有一定的幫助。
中培ITIL專家王老師指出,在實際的工作中經常會遇到這種現象,軟件開發人員開發幾個系統以后就經常被其相關的售后工作所累,很難再有時間去開發新系統或者是正常的開發工作計劃經常被原有的系統問題占用;軟件開發項目中業務方需求不斷變化,開發工作遙遙無期,運維人員也經常遇到新的軟件系統上線的前半年基本上要忙得不可開交的情況,甚至開玩笑說我們就是給開發擦屁股的。大家都很痛苦,那有沒有什么辦法使這些問題能夠理順呢?
隨著時間的推移,行業及技術都發生了很大變化。ITIL是最佳實踐經驗總結,于是它也從v1發展到v2,繼而擴展到v3。ITIL v3定義了服務生命周期的五個階段:服務戰略(Service Strategy)、服務設計(Service Design)、服務轉化(Service Transition)、服務運營(Service Operation)、服務持續改進(Continua Service improvement)。在這五個階段中提供了IT服務生命周期內進行IT服務管理所需要的各種流程。
服務戰略是服務發計、服務轉化、服務運營和持續改進的基礎,這個階段涵蓋了服務管理的實踐、服務原則、服務評估、服務戰略流程、服務管理的財務模型等內容,從整體業務目標和管理層期望出發,保證IT發展戰略與業務相致。
以下幾個ITIL流程在軟件開發和測試中都能起到關鍵的作用。
(1)需求管理
需求管理是整個服務管理的重要內容,糟糕的需求管理導致的需求不確定性對于服務提供商來說是個巨大的隱患。在軟件開發中也是如此,只有超過有效的需求管理來捕獲所有的需求,才能知道用戶需要的是什么,并且將可用資源中在優先級最高的業務上。同時需求管理的流程還能夠幫助確定采用伺種方法來滿足不同用戶的需求。
(2)財務管理
財務管理流程就是為了幫助有效平衡成本和回報的。在軟件測試中,財務管理能夠幫助評估開發工作和相應的成本的關系,也能幫助回答是否需要購買自動化測試工具來取代部分人工測試等問題。
(3)服務級別管理
服務級別管理流程的目標是確保能夠維持雙方約定的IT服務級別。在軟件開發中實際上就是項目范圍的界定,例如交付的應用必須能夠滿足100個并發用戶同時登錄,并且響應時間必須在20秒內。準確地定義SLA將有助于制定合理的開發、測試計劃及配備相應的資源。
(4)可用性管理
可用性管理在軟件開發和測試中也非常重要,軟件開發的根本目標之一就是保障應用的可用性。于是一方面我們需要在應用上線前做大量的業務性能測試,以確保應用上線后能夠在突發高峰時仍能夠保障其可用性,另一方面,上線后需要可持續的手段來實時監控業務,主動跟蹤應用的可用狀況,一旦發生可用性問題,可以及時自動化響應處理,如重啟服務、報警人工干預等。
其次,從執行層面上說ITIL可以使開發和運維有明確的工作標準。
在軟件開發過程中,我們通過服務資產和配置管理流程,確保軟件的測試是在相應標準的測試環境中進行,同時所有的測試都是針對正確的應用版本進行的。
變更管理流程能夠幫助對客戶業務需求的變化做出快速響應,使IT服務能夠適應業務的需求。軟件開發過程中需求變更比比旨是,通過變更管理流程對軟件開發中的變更進行有效的管控,可以使軟件開發工作中的需求更加可控,在實際操作中需要將軟件開發的項目變更管理有機地與運維的變更管理相關聯。
知識管理流程的目標是確保在整個生命周期中都能獲得安全可靠的信息數據,從而提高組織知識共享的能力。從軟件測試角度看,很多測試中的人為積累非常有慣值,這包括所有的測試計劃、測試腳本、測試中遇到的問題和解決方法、測試方法論等。因此有效的測試管理必須能夠統管理所有的測試資產(包括文檔、腳本、知識庫等),并青自夠有效地為其他測試人員共享,以幫助今后的回歸測試。
因此ITIL v3這個服務管理的最佳實踐并非IT運維的”專利”,它同樣適用于軟件開發領域。將ITIL的最佳實踐合理地融入到軟件開發的方方面面,企業的業務應用質量控制將”更上層樓”。
想了解更多IT資訊,請訪問中培偉業官網:中培偉業