前言:本站為你精心整理了軟件項目管理在市場中的實踐思考論文范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
論文摘要:軟件工程是指導(dǎo)計算機軟件開發(fā)和維護的工程學(xué)科,它采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護軟件,把經(jīng)過時間考驗而證實正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以便經(jīng)濟地開發(fā)出高質(zhì)量的軟件并有效地維護它文中通過介紹軟件工程的相關(guān)知識和針對項目的非凡性對軟件工程理論的具體實施辦法,展示了如何將軟件工程理論應(yīng)用在實際工作中,從而快速、高效地開發(fā)出高質(zhì)量的軟件。
軟件項目管理是使軟件項目能夠按照預(yù)定的成本、進度、質(zhì)量順利完成,而對成本、人員、進度、質(zhì)量、風(fēng)險等進行分析和管理的活動。軟件開發(fā)的整個過程都是設(shè)計過程而且不需要使用大量的物質(zhì)資源(主要是人力資源),并且,軟件開發(fā)的產(chǎn)品只是程序代碼和技術(shù)文件,并沒有其他的物質(zhì)結(jié)果。因而企業(yè)軟件開發(fā)項目管理水平直接決定了軟件開發(fā)的能力,科學(xué)、系統(tǒng)的軟件項目管理也從很大程度上減小了開發(fā)風(fēng)險。通過運用軟件項目管理來科學(xué)地開發(fā)軟件有效地減少了開發(fā)風(fēng)險,保證了質(zhì)量。
1流程
根據(jù)項目管理的一般原理,項目管理的過程從總體上可以分為5個階段,每個階段包含有一個或多個管理過程。這5個階段分別是:項目啟動、項目計劃編制、項目計劃執(zhí)行、綜合管理控制和項目收尾。它們之間的聯(lián)系如圖1所示。
(1)項目啟動:根據(jù)必要的工作(如可行性分析,技術(shù)評估等)結(jié)果,批準一個項目的運行。
(2)項目計劃編制:收集和編寫項目所需要的各種資料,進行各種計劃活動并制訂相應(yīng)的計劃,將各種計劃的結(jié)果匯總成為連貫、一致的文檔,即項目計劃文檔。在軟件項目中,具體的活動包括需求和范圍管理計劃、進度計劃、人力資源計劃、成本計劃、溝通計劃、風(fēng)險計劃等。
(3)項目計劃執(zhí)行:通過進行項目計劃所規(guī)定的各種活動,實施項目計劃。
(4)綜合管理控制:在項目計劃實施的過程中,對各種活動進行監(jiān)控,協(xié)調(diào)并控制整個項目期間的變更。在軟件項目中,主要的活動包括范圍變更控制、進度計劃控制、成本控制、質(zhì)量控制、風(fēng)險監(jiān)督和控制等。
(5)項目收尾:項目或階段的正式接收并達到有序的結(jié)束。其中,項目的中間過程(計劃、執(zhí)行、控制)是一個循環(huán)反復(fù)的過程。項目計劃是計劃執(zhí)行和計劃控制的基準;計劃執(zhí)行的結(jié)果受到計劃控制的監(jiān)控;計劃控制根據(jù)比較計劃執(zhí)行的結(jié)果和項目計劃的偏差,以及各種因素引起的變化,對項目計劃進行修正,從而形成下一個循環(huán)的項目基準。它們之間的流程如圖2所示。
2生命周期模型
任何軟件的開發(fā)都要經(jīng)歷一個“生命期”,生命期模型的主要功能是確定一種標(biāo)準,確定項目規(guī)格、建立原型、設(shè)計、實現(xiàn)、檢查、測試或執(zhí)行一些其他活動,以此確定在軟件開發(fā)過程中是否是以某種次序一個任務(wù)接著一個任務(wù)進行。作為一個項目的主要計劃,軟件生命期模型的選擇對項目成功的影響非常重要。恰當(dāng)?shù)纳谀P涂梢允管浖椖苛鞒袒?,并幫助項目人員一步一步接近目標(biāo)。假如選擇了適宜的生命期模型,就可以提高開發(fā)速度、提升質(zhì)量、加強項目跟蹤和控制、減少成本、降低風(fēng)險,或是改善用戶關(guān)系。
2.1瀑布模型
最經(jīng)典的軟件生命周期模型是瀑布型模型,它是其他生命期模型的基礎(chǔ)。在瀑布模型中,項目從始至終按照一定順序的步驟從初始的軟件概念進展到系統(tǒng)測試。項目確保在每個階段結(jié)束時進行檢查,以判定是否可以開始下一階段工作。假如檢查的結(jié)果是項目還沒有預(yù)備好進人下一階段,它就停留在當(dāng)前階段,直到當(dāng)前階段工作完成。如圖3所示。
瀑布模型是文檔驅(qū)動型的,主要工作成果通過文檔從一個階段傳遞到下一個階段。假如有一個穩(wěn)定的產(chǎn)品定義和很輕易被理解的技術(shù)解決方案時,瀑布模型可以幫助及早發(fā)現(xiàn)新問題,降低項目的階段成本,是快速開發(fā)的一個恰當(dāng)選擇。但在很多實際情況中,由于需求、技術(shù)等很多不確定性,瀑布模型并不適合于進行快速開發(fā)。
2.2漸進原型
漸進原型是從開發(fā)系統(tǒng)概念開始的一種生命期模型,通常是從最核心的方面開始,向用戶展示完成的部分,然后根據(jù)用戶的反饋信息繼續(xù)開發(fā)原型,并重復(fù)這一過程,直到開發(fā)者和用戶都認為原型己經(jīng)足夠好。然后,完成結(jié)尾工作,交付作為最終產(chǎn)品的原型,如圖4所示。
“漸進原型”模型以逐步增加的方式進行開發(fā),以便于隨時根據(jù)客戶或最終用戶的反饋來修正系統(tǒng),在需求變化很快的時候,或者用戶很難提出明確需求的時候,或者開發(fā)人員對最佳的架構(gòu)或算法沒有把握的時候,漸進原型非凡有用。但是,漸進原型是以犧牲項目的可控制性來換取較多的客戶反饋以及較好的過程可視性的。由于原型的功能和特性會隨著用戶的反饋而經(jīng)常發(fā)生變化,因此較難確定產(chǎn)品的最終形態(tài)。
2.3階段交付
階段交付模型是另一種生命期模型,該模型可以持續(xù)地在確定的階段向用戶展示軟件。和漸進原型不同,在階段交付的時候,開發(fā)者明確地知道下一步要完成什么工作。階段交付的特征是在項目整個開發(fā)過程中持續(xù)不斷地交付階段性成果。如圖5所示。
在“階段交付”生命模型中,軟件被分階段進行開發(fā)。在通常情況下,首先開發(fā)最重要的功能。階段性交付并不能減少軟件產(chǎn)品研發(fā)所需要的時間,但是它能充分降低軟件研發(fā)中的風(fēng)險,而且能夠提供切實的、客戶可見的以及管理層評價項目狀態(tài)時所需要的標(biāo)記。
2.4漸進交付
漸進交付是一種結(jié)合了漸進原型和階段交付兩種模型的生命期模型。在這種模型下,首先開發(fā)產(chǎn)品的一種版本,展示給用戶看,然后根據(jù)用戶的反饋改善產(chǎn)品,如圖6所示。
漸進交付模型在階段交付的可控制性和漸進原型的靈活性之間尋找平衡。在可能的情況下,它可以把軟件的某些選定的部分提前交付,從而有利于快速開發(fā)的進行;同時,在項目進行的過程中,它也具有響應(yīng)用戶要求并改變產(chǎn)品方向的能力。
3開發(fā)應(yīng)用
3.1要員管理
軟件項目成功的關(guān)鍵是有高素質(zhì)的軟件開發(fā)人員,然而大多數(shù)軟件產(chǎn)品規(guī)模都很大,以至單個軟件開發(fā)人員無法在給定期限內(nèi)完成開發(fā),因此,必須把多名軟件開發(fā)人員組織起來,使他們分工協(xié)作共同完成開發(fā)工作。現(xiàn)有的軟件開發(fā)項目組的組織方式有:
(1)民主制程序員組
小組成員完全平等,享有充分民主,通過協(xié)商做出技術(shù)決策。小組成員間的通信是平行的,假如小組有n個成員,則可能的通信信道有n(n-1)/2條。
(2)主程序員組
主程序員既是成功的管理人員又是經(jīng)驗豐富能力強的高級程序員負責(zé)體系結(jié)構(gòu)設(shè)計和關(guān)鍵部分(或復(fù)雜部分)的具體設(shè)計,并且負責(zé)指導(dǎo)其他程序員完成具體設(shè)計和編碼工作。
后備程序員也應(yīng)該技術(shù)熟練而且富于經(jīng)驗,協(xié)助主程序員工作并且在必要時接替主程序員的工作。編程秘書負責(zé)完成和項目有關(guān)的全部事務(wù)性工作。
(3)現(xiàn)代程序員組
技術(shù)組長:只對技術(shù)工作負責(zé)。
行政組長:全權(quán)負責(zé)非技術(shù)事務(wù)。
項目開發(fā)方把軟件工程中的軟件項目組的組織理論文檔化后,形成了自己的一套具體的、適合在實際工作中使用的要員管理理論。
3.2進度管理
軟件項目的進度布置是一項活動,它通過把工作量分配給特定的軟件工程任務(wù),并規(guī)定完成各項任務(wù)的起、止日期,從而將估算的工作量分布于計劃好的項目持續(xù)期內(nèi)。進度計劃將隨著時間的流逝而不斷演化。在項目計劃的早期,首先制定一個宏觀的進度布置表,標(biāo)示出主要的軟件工程活動和這些活動影響到的產(chǎn)品功能。隨著項目的發(fā)展,把宏觀進度表中的每個條目都精化成一個具體進度表。于是完成一個活動所必須實現(xiàn)的特定任務(wù)被標(biāo)示出來,并布置好了實現(xiàn)這些任務(wù)的進度。超級秘書網(wǎng)
3.3配置管理
在開發(fā)計算機軟件的過程中,變化(或稱為變動)是不可避免的。假如不能適當(dāng)?shù)乜刂坪凸芾碜兓瑒荼卦斐苫靵y并產(chǎn)生很多嚴重的錯誤。軟件配置管理是在計算機軟件整個生命周期內(nèi)管理變化的一組活動。它不同于軟件維護。軟件維護是在軟件交付給用戶使用后才發(fā)生的,而軟件配置是在軟件項目啟動時就開始,并且一直持續(xù)到軟件退役后才終止的一組跟蹤和控制活動。其主要任務(wù)有:標(biāo)識、版本控制、變化控制、配置審計和報告。只要參加過軟件開發(fā)的人都清楚,現(xiàn)在的軟件項目完全由一個人來完成是難以想象而且也是不可能的,通常是有一個研發(fā)小組來共同分析、設(shè)計、編碼和維護,并有專門的測試小組對己完成編碼調(diào)試的軟件進行全面的測試。在軟件開發(fā)這個龐大而復(fù)雜的過程中,需要涉及到各個方面的人員,信息的交流反饋不僅僅是在研發(fā)小組的成員之間及各個研發(fā)小組之間,還存在于客戶和研發(fā)者之間。所有的這些交流反饋意見信息都有可能導(dǎo)致對軟件的修改,小的可能只是對某個源文件中的某個變量的定義改動,大到重新設(shè)計程序模塊甚至可能是整個需求分析變動。
3.4軟件測試
測試是指軟件產(chǎn)品生存周期內(nèi)所有的檢查、評審和確認活動。在軟件生命周期的每個階段都不可避免地會產(chǎn)生差錯。軟件測試的目的就是在軟件投人生產(chǎn)運行以前,盡可能多的發(fā)現(xiàn)軟件中的錯誤。目前軟件測試仍然是保證軟件質(zhì)量的關(guān)鍵步驟,它是對軟件規(guī)格說明、設(shè)計和編碼的最后復(fù)審。
4結(jié)語
進行軟件項目管理有利于將開發(fā)人員的個人開發(fā)能力轉(zhuǎn)化成企業(yè)的開發(fā)能力,企業(yè)的軟件開發(fā)能力越高,表明這個企業(yè)的軟件生產(chǎn)越趨向于成熟,企業(yè)越能夠穩(wěn)定發(fā)展(即減小開發(fā)風(fēng)險)。項目管理的質(zhì)量和軟件產(chǎn)品的質(zhì)量有著直接的對應(yīng)關(guān)系。因此,提高項目管理的能力對于軟件組織的軟件生產(chǎn)力的提高是最為重要的。
軟件技術(shù)方案 軟件考察報告 軟件管理論文 軟件管理 軟件項目總結(jié) 軟件專業(yè)論文 軟件工程 軟件畢業(yè)論文 軟件開發(fā)論文 軟件項目管理 紀律教育問題 新時代教育價值觀