淺談軟件項目管理過程
班級:——
學號:——
姓名:——
軟件項目管理是為了使軟件項目能夠按照預定的成本,進度,質量順利完成,而對人員,產品,過程和項目進行分析和管理的活動。根本目的是為了讓軟件項目尤其是大型項目的整個軟件生命周期(從分析,設計,編碼到測試,維護全過程)都能在管理者的控制之下,以預定成本按期,按質完成軟件交付用戶使用。
——序
當今世界,IT技術對于一個企業的重要性是毋庸置疑的。在很多領域,計算機技術都得到了非常廣泛的應用,IT技術已經普遍地服務于社會的各行各業,在很多的領域都形成了推動力。但同時我們也看到一個非常嚴重的問題,那就是軟件危機。為什么會發生“軟件危機”。據總結,主要產生的原因是:(1)由于缺乏軟件開發的經驗和有關軟件開發數據的積累,以致經常出現超出經費預算,無法遵循進度計劃。(2)軟件需求在開發的初期階段不夠明確,或是未能得到確切的表達。開發工作開始后,軟件人員和用戶又未能及時交換意見,造成矛盾在開發期幾種暴露。(3)未能在測試階段做好充分的檢測工作,提交至用戶的軟件質量差,在運行過程中暴露出大量的問題。歸結起來,我們說的軟件危機是一種矛盾,就是弱的軟件生產力能力與強的業務發展需求之間的矛盾。要能夠迎接業務發展所帶來的挑戰,從事軟件生產的組織迫在眉睫要去做的一件事就是軟件生產力的改造。在“應用就是業務”的今天,軟件生產力的改造是決定企業能否獲得并長久保持競爭優勢的一個決定性因素,所以,關注并啟動軟件生產力的提升是一項戰略性的決策,是一個系統工程,它將決定企業能否獲得并長久保持競爭優勢。而項目管理則是提升生產力的一項重要任務。
然而,項目管理在我們的軟件生產中的應用是那么的重要。那么我們應該怎么樣才能更好的掌握項目管理,我們的項目流程是怎么樣的。
首先,項目管理的第一流程是項目的啟動。
項目的啟動就是確定項目的目標范圍,它主要包括開發和被開發雙方的合同(或是協議),軟件要完成的主要功能以及這些功能的量化范圍,項目開發的階段周期等。尤其是啟動信息技術(IT)的項目,我們做軟件的必須了解企業組織內部在目前和未來主要業務發展方向,這些主要業務將使用什么技術及相應的使用環境是什么。啟動信息技術(IT)的項目的理由很多,但能夠使項目成功的最合理的理由一定是為企業現有業務提供更好的運行平臺,而不是展示先進的IT技術。在項目啟動的過程中,我們還要注意將項目的范圍進行明確定義才能進行很好的項目規劃。項目目標必須是可實現可度量的。如果這一步管理得不好或是做得不好,直接導致的是項目的最終失敗。
其實,第二就是項目的規劃
項目的規劃其實就與項目的計劃意義差不多。它是一項復雜的,自始至終不斷迭代的一個過程。而且為項目的運作提供可靠的實施基礎。在整個項目中,項目規劃是指項目的估算,風險的分析,進度的規劃,人員的選擇與配置,產品質量的規劃等。然而,在項目管理的過程中,計劃的編制是整個項目規劃中最為復雜的階段。項目計劃工作涉及九個項目管理知識領域。也就是說我們要知道九個項目管理知識領域中哪些是重要的,哪些是必要的和熟悉它們之間的關系。而且在計劃編制的過程中,我們還可看到后面各階段的輸出文件。所以說它是指導項目的進程發展。規劃建立軟件項目的預算,提供一個控制項目成本的尺度,也為將來的評估提供參考,它是項目進度安排的依據。最后,形成的項目計劃書將作為跟蹤控制的依據。
第三:項目的實施及控制
一旦建立起基準計劃就必須按照計劃執行,這包括按計劃執行項目和控制項目,以使項目在預算內,按進度,使顧客滿意的完成。在這個階段,項目管理過程包括:測量實際的進程,并與計劃進程相比較。同時,發現計劃的不當之處。為了測量實際的進程,掌握實際上已經開始或結束的是哪些任務,已經花了多少錢,這些都是很重要的。如果實際進程與計劃進程的比較顯示出現項目落后于計劃,超出預算或是沒有達到技術要求,就必須立即采取糾正措施,以使項目能恢復正常軌道,或是更正計劃的不合理之處。然而,項目的監控,也是為項目能正常回到軌道上的一個重要步驟。俗話說:“沒有跟蹤就不算完成”,在軟件項目中,有太多的工作需要我們去完成,如果有時計劃做得不夠周密,或是計劃趕不上變化。我們怎么辦,置之不理?還是去跟蹤監控一下,然后及時改正錯誤。為什么我們用的那么多的軟件是要不定時的安裝補丁,原因也就是因為這個。在跟蹤監控中我們發現問題,然后去修補它,使得軟件的性能,功能更好。總得來說。項目的實施及監控最終的目的就是保證項目能夠安裝預先設定的計劃軌道上行駛,使得項目不要偏離預定的發展進程,盡快完成軟件項目。
最后就是軟件的項目結束
項目管理的最后環節就是軟件項目的結束過程。因為項目的特征之一就是它的一次性。有起點也有終點,進入項目結束期的主要工作是適當地做出項目終止的決策,確認項目實施的各項成果,進行項目的交接和清算等,同時對項目進行最后評審,并對項目進行總結。這個也代表著項目將進入后續的維護期。項目最后執行的結果是有兩種狀態,要不就是成功要不就是失敗。然而,一旦我們決定終止一個項目,項目就要有計劃,有序的分階段停止。當然,這個過程可以簡單地執行也可以詳細認真的執行。在這里項目總結是項目結束中的最后一個環節也是一個我們不能忽視的一個環節。很多項目沒有能進行很好的總結,比如說項目總結時項目人員已經不全了,有新的項目要做,沒有時間去寫等等的理由讓項目的總結沒做好。所以,這也是軟件項目那么多漏洞的原因之一。所以,項目的結束之前的工作我們也要好好認真的完成。
軟件開發不同于其他產品的制造,軟件的整個過程都是設計過程(沒有制造過程)。另外,軟件開發不需要使用大量的物質資源,而主要是人力資源;并且,軟件開發的產品只是程序代碼和技術文件,并沒有其他的物質結果。基于上述的特點,軟件項目管理與其他項目管理相比,有很大的獨特性。所以,軟件項目開發管理過程中,不僅要努力實現項目的范圍、時間、成本和質量等目標,還必須協調整個項目過程,以滿足項目參與者及其他利益相關者的需要和期望;隨著軟件規模和所涉及的領域不斷地擴大,軟件項目的管理越來越困難。縱觀所有失敗的軟件項目,基本原因是不能管理其軟件過程,在無紀律的、混亂的項目狀態下,組織不可能從較好的方法和工具中獲益。嚴謹的軟件過程控制與管理不僅可以在每個階段回顧和糾正項目的偏差,識別軟件項目的風險甚至果斷中止項目,而且可以將人才流動所帶來的不利影響減少到最小。要進行有效的過程控制,必須明確軟件項目管理流程。
最后,總結一下項目管理過程。軟件項目管理不同于其他的項目管理,它有很多的特殊性。軟件是一個特殊的領域,遠遠沒有建筑工程等領域那么規范化、軟件目前有很大的發展空間,經驗在項目管理中發揮著很重要的作用,理論和標準還在發展中,它體現軟件的“軟”的特殊。合同啟動了一個軟件項目,同時貫穿項目的始終;根據合同進行軟件的需求分析,獲得需求規格;根據需求規格進行任務分解,任何分解的目的是可以很好得規劃和管理項目;根據任何分解的結果,給出項目需要的資源,以便于估計活動的歷時,最終編制項目計劃以及項目的預算等。這樣便可以形成項目的三個核心的基準計劃:項目范圍基準,成本基準,時間基準計劃等。
以上的是軟件項目管理的過程,我們知道項目管理既是一個科學,也是一門藝術,不同的項目,不同的項目經理,會有不同的管理方法和技巧。