第一篇:軟件項目管理總結
《軟件項目管理》
學 號:專 業:軟件姓 名:任課教師:日 期:
實 驗 報 告
1311班
2016.4.6
實驗1:假設你是軟件項目經理,如何有效的管理項目及其團隊成員
我作為軟件工程專業的一名學生,知道在軟件項目開發中團隊合作的重要性。對于項目管理來說,項目團隊作為一個任務單元,不僅可以高效地利用有限的人力資源,而且有助于加強員工間的交流與協作。但是一個項目團隊離不開一個有能力的項目經理,而項目經理對項目的成敗起著關鍵性的作用。
1.作為項目經理應該具有的管理能力
假如我是軟件項目經理,我就必須管理好我的軟件項目和我的成員。作為一個項目經理,自己一定要有管理一個團隊的能力。能力有可以分為兩種:基本能力和基礎能力。其中基本能力主要有時間管理、成本管理、人力資源管理、交流管理、質量管理、風險管理等。而基礎能力包括:溝通能力、體察能力、理解能力、分析能力、總結能力、協調能力、組織能力等。我認為項目經理的技術能力可以不是很強,當然前提是他要有一個技術很好的搭檔,但是他的邏輯思維能力,溝通能力和協調能力等都必須很強,總而言之,項目經理是一個綜合能力很強的人,他應該懂得因地制宜,因勢導利,能夠把控全局,掌控整個工程項目。
案例:溝通能力很重要
老張是某個系統集成公司的項目經理。他身邊的員工開始抱怨公司的工作氛圍不好,溝通不足。所以他就想每周開一次開會,但他又不知道例會具體因該如何規定。很快項目組成員開始抱怨例會目的不明,時間太長,效率太低,效果太差等,有時在例會上成員意見不一致,很多成員相互爭吵,甚至影響到了人際關系的融洽。
通過這個案例我們可以看出團隊的溝通出了問題。這個項目經理缺乏對項目團隊成員的溝通和溝通風格的分析,溝通方式單一,沒有進行沖突管理。我認為他可以這樣解決問題:
對項目團隊的成員進行溝通風格分析,對成員的溝通風格采用不同的溝通方式,可以使用非正式的溝通方式,引入一些標準的溝通模板,注意沖突的管理等。良好的溝通是一個軟件項目成功的前提條件。在軟件項目管理中溝通是整個活動過程中的神經中樞,順暢有效的溝通是項目成功的基礎。要科學地組織、指揮、協調和控制項目的實施過程,就必須進行信息溝通。有效的信息溝通,對于整個項目的進度控制、風險預測、需求確定以及人際關系的改善都起著促進的作用。當然,除了溝通,其他的能力,項目經理也應具備。
案例:
A公司是一家系統集成商,李某是A公司的一名高級項目經理,現正在負責某市開發區的辦公網絡項目的管理工作,該項目劃分為綜合布線、網絡工程和軟件開發三個子項目,需要3個項目經理分別負責。李某很快找到了負責綜合布線、網絡工程的項目經理,而負責軟件開發的項目經理一直沒有合適的人選。原來由于A公司近年業務快速發展,承攬的項目逐年增多,現有的項目經理人手不夠。李某建議從在公司工作2年以上業務骨干中選拔項目經理。結果王某被李某選中負責該項目的軟件開發子項目。在項目初期,依照公司的管理規定,王某帶領幾名項目團隊成員刻苦工作,項目進展順利。隨著項目的進一步展開,項目成員的逐步增加,王某在項目團隊管理方面遇到很多困難。他領導的團隊因經常返工而效率低下、團隊成員對發生的錯誤互相推諉、開會時人員從來沒有到齊過,甚至王某因忙于自己負責的模塊開會時都遲到過。大家向王某匯報項目的實際進度、成本時往往言過其實,直到王某對自己負責的模塊進行接口調試時才發現這些問題。
案例分析:
王某是從技術骨干升為項目經理的,從實際工作結果看,顯然王某本身尚未具備管理項目和團隊的基本素質,沒有培訓和鍛煉,倉促上陣。王某的這方面劣勢本應在項目的風險管理中充分考慮并制定相應的預案。現階段,如果項目的時間充足,李某可采用指導型的管理手段,王某的團隊工作安排要全面及時匯報給李某,不論大小。正確的方案不加干涉,加強過程和結果的追蹤,欠妥的地方,找王某單獨溝通,讓他在工作中成長。如果項目時間不夠,則要采取參與式的管理手段,重要的工作安排,李某直接參與,但保持與王某的充分溝通,使之充分理解李某的方案為什么更優,其目的也是在工作中成長。不管哪種方案,前提是減輕王某的技術工作負荷,使他有時間學習和思考項目管理的方法。
2.項目經理對項目和成員的管理
項目經理不僅要管理好他的團隊,還要管理項目。目前就我的角度講,從項目經理接到一個項目開始,就要先和客戶交流,必須了解到用戶的需求,當然有時用戶知道自己需要什么,但表達不出來,這是我就要提前假設許多種情況,來詢問用戶當遇到這些情況,他覺得應該怎樣解決。然后把這些都要寫入需求分析里。和用戶談完后,我會和團隊成員一起討論,然后根據用戶的需求寫需求分析。寫完需求分析后,要開始分工協作開發該項目,在開發過程中,當成員遇到困難我會盡自己所能幫他解決。當然,每一個項目都有規定的開發日期,為了項目能夠如期完成,我會提前制定一個開發階段時間表,說明項目實施階段劃分,規定不同的階段完成什么任務,按照計劃進行。不能說把項目任務分配后就對成員不聞不問,我會每天在一個時間點了解成員的開發進度,進而進行項目進度的調整。
3.項目管理者和開發人員之間要團結互助
項目管理者和開發人員之間的關系,本來應該是相互團結,相互幫助,共同面對問題的關系,可是許多項目管理者把這種關系扭曲成了管理與被管理的強制性關系,用種種規章制度,種種管理方法來強迫開發人員接受,把自己放到了開發人員的對立面,和開發人員離心離德,甚至還美其名曰“量化管理,科學管理”.在這種糟糕的管理下,開發人員沒有任何辦法,要么被動接受糟糕的管理,要么辭職以抗議.一旦一個項目發生了這種情況,它想成功就非常難了。我反對的是軟件開發中的強權行為,完全剝奪了開發人員應當具有的對于項目的發言權和建議權,完全不考慮軟件開發作為高強度腦力勞動的特殊性。
項目管理者和開發人員并沒有本質的區別,他們只是所處的崗位不同,擔任的責任不同而已,在軟件開發的問題上,尤其在具體的技術細節上,往往管理者不甚精通,如果他不能吸納開發人員的智慧,而是自己一個人拍腦袋來做決策,那么失敗就在眼前了.
總的來說,在軟件開發中,無論采用那種模型,那種工具,都離不開人的參與,離不開人與人之間的關系,如果不能正確對待人與人之間的關系,把本來正常的,平等的,合作的人與人之間的關系變成了不正常的,不平等的,對抗的人與人之間的關系,那么還希望項目能夠成功,無異于緣木求魚,南轅北轍了.如果人與人之間可以相互信任,相互理解,相互支持,相互合作,那么沒有什么事情是辦不成的,而如果人與人之間相互欺騙,相互猜忌,相互詆毀,相互斗爭,那么沒有什么事情是可以辦成的。
4.項目經理應該具備的品質
我認為在項目管理中,項目經理的行為準則會影響到其他成員,管理流程是不可能靠項目經理一個人維持的,必須得到大家的支持。在團隊管理中,一定要公平公正,要廉潔自律。在項目中一定要有正確的利益觀,在盡量保證其它成員的利益、至少是不損害其它成員利益的基礎上來爭取自己個人合理利益。尤其要公正公平地評估項目團隊成員間的利益,否則很可能因為利益分配問題導致整個團隊的崩潰。在團隊中我一定會堅持一些原則:不損人利己、不可或缺、集思廣益、換位思考等!在團隊交流中多方面的思考問題,多采納團隊中有利的建議。所以品德高尚成為項目經理首先需具備的條件。
5.當代項目經理應該具備的能力與素質
當代軟件項目管理進入新的階段。由于信息產業的技術含量高,軟件開發項目經常會遇到需求多變、技術更新和所處的環境變化快和人員流動頻繁。軟件技術人員的管理特點等情況,影響項目管理的因素日趨增多,信息軟件開發行業也就更加需要科學規范的項目管理。由于這些原因,要求軟件開發項目經理應該是一個具有很強邏輯思維、推理能力和社會經驗豐富的綜合素質全面的管理者,缺乏職業素養的項目管理者會因自身的職業能力的局限性缺乏細節和深度地計劃一個項目,使得預測潛在問題很困難,難以去管理資源,合理評估時間和成本,以及編制出可操作的時間計劃,不會或不能很好地處理諸多沖突和變更。在這樣的項目管理者帶領下的項目團隊最終只能喪失控制力。當前我國行業現實是絕大多數項目經理是技術人員出身,因為技術工作的性質和特點造成此類項目經理在任職之前人文能力不強。因此,中國傳統的學而優則仕的觀點在項目經理的選拔中需要格外注意,同時要加強職業培訓及自我的實踐總結和提高。
實驗2:作為軟件項目團隊成員的你,應該如何有效的配合項目組成員完成工作
在軟件開發項目中,許多組織采用合作開發的方式,這種方式的優點在于合作各方可以各取所長。由于在合作方式下,項目團隊成員來自不同的組織,在項目實施過程中的沖突就往往不可避免,充分的溝通和參與是有效的激勵機制。
1.個人在團隊開發中溝通的重要性
在合作項目中,對于涉及到項目進度和人力資源調度這樣一些問題而言,充分的溝通是一個關鍵性的管理手段。盡管定期和不定期的項目評估能夠在一定程度上解決一些問題,但需要記住的是,只有那些具體負責某項工作的團隊成員對有關的工作才最有發言權,也只有他們的行動才最終決定了某些計劃或決策的執行效果。如果在計劃制定過程中缺乏溝通,那些持有不同意見的項目團隊成員就可能在執行中降低努力水平。所以在項目開發過程中,我會把自己的疑問提出,多和團隊成員交流,把疑問解決,發表自己對該項目的認識,和團隊成員交流自己的想法,是否能夠達到項目的需求,自己的理解是否出現了偏差,而導致對團隊產生不利的影響。
2.在團隊開發中自己一定要參與到項目中并且努力完成任務
而對軟件開發這樣的項目而言,團隊成員的努力才是保證項目成功的最關鍵的因素之一。“參與”是激勵機制中的重要一環,每個團隊成員都應當在計劃制定過程中發表意見,不僅是因為經過充分討論后的計劃才能更加切合實際,更重要的是,團隊成員在執行其“自己的計劃”過程中會更加努力。在軟件開發項目中,團隊成員大多是技術人員,對于技術人員而言,通過新工具和新技術的使用能夠提高其專業水平,因此在軟件項目實施過程中適當引進新工具和新的開發環境有時也是一種良好的激勵手段,當然這種手段的采用要有兩個前提:相關的工具確實有效,同時需要提供一定的培訓以保證工作的效率。作為一個項目團隊的成員,會參與團隊的項目,在項目開發的過程中,大家在項目經理的指導下都會有各自的任務,一個團隊的計劃是一個大計劃,相當于一個概要設計,而每一個成員制定自己的任務計劃就相當于詳細設計。我在做自己的任務之前肯定會制定一個進度計劃,按照計劃進行。在此過程中遇到問題會和成員們溝通解決。
除此之外,我還會提高個人職業能力:強調持續不斷的學習能力,并通過實踐提升個人的專業技能,從而提高項目管理的水平。在團隊合作中,我會努力做到尊重個人在信仰、文化和行為習慣方面的差異,與團隊成員建立好溝通與聯系,努力建設一個協作的,氛圍良好的開發環境。3.在開發團隊中要多發現別人的優點
著名心理學家榮格曾列出一個公式:I+We=Fully I。意思是說,一個人只有把自己融入集體中,才能最大程度地實現個人價值,綻放出完美絢麗的人生。認識自己的不足,善于看到別人——尤其是同事——的長處,是具有良好的團隊精神的基礎。
在一個團隊中,每個成員的優缺點都不盡相同,你應該去積極尋找團隊成員中積極的品質,并且學習它,讓自己的缺點和消極品質在團隊合作中被消滅。團隊強調的是協同工作,較少有命令和指示,所以團隊的工作氣氛很重要,它直接影響團隊的工作效率。如果團隊的每位成員都去積極尋找其他成員的積極品質,那么團隊的協作就會變得很順暢,團隊整體的工作效率就會提高。
每個人都有被別人重視的需要,特別是那些具有創造性思維的知識型員工更是如此。有時一句小小的鼓勵和贊許就可以使他釋放出無限的工作熱情,并且,當你對別人寄予希望時,別人也同樣會對你寄予希望。4.在開發團隊中要多檢查自己的缺點
自己應該時常的檢查一下自己的缺點,比如自己是不是還是那么對人冷漠,或者還是那么言辭鋒利。這些缺點在單兵作戰時可能還能被人忍受,但在團隊合作中會成為你進一步成長的障礙。團隊工作中需要成員在一起不斷地討論,如果你固執己見,無法聽取他人的意見,或無法和他人達成一致,就不可能融入團隊,團隊的工作就無法進展下去。如果你意識到了自己的缺點,不妨就在某次討論中將它就坦誠地講出來,承認自己的缺點,讓大家共同幫助你改進,這是最有效的方法。當然,承認自己的缺點可能會讓你感到尷尬,但你不必擔心別人的嘲笑,你只會得到他們的理解和幫助。
4.每一個團隊成員都要明確自己的任務
每一個團隊成員應該確實知道他們每天的工作是什么,以致團隊可以實現他們的目標。沒有仔細的分類,團隊成員容易在工作中互相誤解,以及相互限制。
團隊成員的交叉角色應該在開始行動之前就仔細想清楚,隨著團隊前進,他們可以更加精確。
團隊精神不反對個性張揚,但個性必須與團隊的行動一致,要有整體意識、全局觀念,考慮團隊的需要。它要求團隊成員互相幫助,互相照顧,互相配合,為集體的目標而共同努力。
案例:
曾經有這樣兩個大學生:他們共同承擔一個項目,但其中有分工。其中一位在完成任務的過程中遇到了技術上的難題,此時他只會自己冥思苦想亂翻書,卻不屑于向坐在旁邊的高手請教一下。而這位高手此時不是把他當做是共榮共辱的合作伙伴,而是坐在旁邊等著看笑話。這是我們應該吸取的教訓。所以在工作期間,要有意識地培養全局觀念。比如要建設一個優秀班組,就不能只考慮自己的需要而不關注別人的感受。要建設一個優秀部門,每個人就不能借口自己有這樣那樣的事情而不參與集體組織的活動,否則將會像一盤散沙,優秀集體難以形成,自己也很難從中受益。
6.在開發過程中要注意團結合作 案例:
每到秋季來臨,天空中就會有成群結隊的大雁向南方遷徙,而這南飛的雁群就是一支完美的團隊,是值得我們學習的團隊楷模。雁群是由許多有著共同遷徙目標的大雁組成的。在組織中,它們有明確的分工合作,當隊伍中途飛累了停下休息時,它們中有負責覓食、照顧年幼或老齡大雁的青壯派,有負責雁群安全的巡視放哨的大雁,有負責安靜休息、調整體力的領頭雁。在雁群進食的時候,巡視放哨的大雁一旦發現有敵人靠近,便會長鳴一聲給出警示信號,群雁便整齊地沖向藍天,列隊遠去。而那只放哨的大雁,在別人都進食的時候自己不吃不喝,非常警惕,恪盡職守,具有犧牲精神。據科學研究表明,大雁組隊飛行要比單獨飛行提高22%的速度,比單獨飛行多出12%的距離。飛行中的大雁兩翼可形成一個相對的真空狀態,而飛翔的頭雁是沒有誰給它真空的,但漫長的遷徙過程中總得有人帶頭搏擊,這同樣是一種犧牲精神。在飛行過程中,雁群大聲嘶叫以相互激勵,通過共同扇動翅膀來形成氣流,為后面的隊友提供了“向上之風”,而且V字隊形可以增加雁群70%的飛行范圍。如果在雁群中,有任何一只大雁受傷或生病而不能繼續飛行,雁群中會有兩只大雁自發地留下來守護照看受傷或生病的大雁,直至其恢復或死亡,然后它們再加入到新的雁陣,繼續南飛直至目的地,完成它們的遷徙。
大雁成群結隊遷徙,在遷徙過程中任務分工明確,作為一個整體團結合作,最后飛往目的地,一個大雁群體既是這樣團結合作,作為一個更需要團結合作的軟件項目開發團體,我覺得更需要這種團結合作的精神。
軟件開發并不是一件簡單的工作,不是一個人可以完成的,一般都是多人或多個團隊合作來完成,有需求分析、產品架構定位、設計與結構、編碼、測試、打包等等,里面每個成員的分工都是明確,整個項目是大家互相配合、互相協作下完成。
學號:
姓名: 日期:
第二篇:軟件項目管理總結
《軟件項目管理》學習總結報告
軟件項目管理是為了使軟件項目能夠按照預定的成本、進度、質量順利完成,而對成本、人員、進度、質量、風險等進行分析和管理的活動。實際上,軟件項目管理的意義不僅僅如此,進行軟件項目管理有利于將開發人員的個人開發能力轉化成企業的開發能力,企業的軟件開發能力越高,表明這個企業的軟件生產越趨向于成熟,企業越能夠穩定發展。
項目風險管理是指為了最好的達到項目的目標,識別、分配、應對項目生命周期內風險的科學與藝術。項目風險管理的目標是使潛在機會或回報最大化,使潛在風險最小化。
1.項目管理在軟件開發中的應用的成因
目前我國大部分軟件公司,無論是產品型公司還是項目型公司,都沒有形成完全適合自己公司特點的軟件開發管理模式,雖然有些公司根據軟件工程理論建立了一些軟件開發管理規范,但并沒有從根本上解決軟件開發的質量控制問題。這樣導致軟件產品質量不穩定,軟件
后期的維護、升級出現麻煩,同時最終也會損害用戶的利益。
隨著軟件開發的深入、各種技術的不斷創新以及軟件產業的形成,人們越來越意識到軟件過程管理的重要性,管理學的思想逐漸融入軟件開發過程中,應用開發的項目管理日益受到重
視。
2.軟件項目管理常見問題及解決方案
(1)缺乏項目管理系統培訓
在軟件企業中,以前幾乎沒有專門招收項目管理專業的人員來擔任項目經理,被任命的項目經理主要是因為他們能夠在技術上獨當一面,而管理方面特別是項目管理方面的知識比
較缺乏。
解決方案:項目經理接受系統的項目管理知識培訓是非常必要的,有了專業領域的知識與實踐,再加上項目管理知識與實踐和一般管理的知識和經驗的有機結合,必能大大提高項
目經理的項目管理水平。
(2)項目計劃意識問題
項目經理對總體計劃、階段計劃的作用認識不足,因此制定總體計劃時比較隨意,不少事情沒有仔細考慮;階段計劃因工作忙等理由經常拖延,造成計劃與控制管理脫節,無法進行有
效的進度控制管理。
解決方案:計劃的制定需要在一定條件的限制和假設之下采用漸近明細的方式進行不斷完善。提高項目經理的計劃意識,采用項目計劃制定相關知識、技術、工具,加強對開發計
劃、階段計劃的有效性進行事前事后的評估。
(3)管理意識問題
部分項目經理不能從總體上把握整個項目,而是埋頭于具體的技術工作,造成項目組成員之間忙的忙、閑的閑,計劃不周、任務不均、資源浪費。有些項目經理沒有很好的管理方
法,不好安排的工作只好自己做,使項目任務無法有效、合理地分配給相關成員,以達到“負載
均衡”。
解決方案:加強項目管理方面的培訓,并通過對考核指標的合理設定和宣傳引導項目經理更好地做好項目管理工作。技術骨干在擔任項目經理之前,最好能經過系統的項目管理知識,特別是其中的人力資源管理、溝通管理的學習,并且在實際工作中不斷提高自己的管理素
質,豐富項目管理經驗,提高項目管理意識。
(4)溝通意識問題
在項目中一些重要信息沒有進行充分和有效的溝通。在制定計劃、意見反饋、情況通報、技術問題或成果等方面與相關人員的溝通不足,造成各做各事、重復勞動,甚至造成不必
要的損失;有些人沒有每天定時收郵件的習慣,以至于無法及時接收最新的信息。
3.軟件項目管理的現狀分析
軟件項目管理的提出是在20世紀70年代中期的美國,當時美國國防部專門研究了軟件開發不能按時提交,預算超支和質量達不到用戶要求的原因,結果發現70%的項目是因為管理不善引起的,而非技術原因。于是軟件開發者開始逐漸重視起軟件開發中的各項管理。到了20世紀90年代中期,軟件研發項目管理不善的問題仍然存在。據美國軟件工程實施現狀的調查,軟件研發的情況仍然很難預測,大約只有10%的項目能夠在預定的費用
和進度下交付。
1995年,據統計,美國共取消了810億美元的商業軟件項目,其中31%的項目未做完就被取消,53%的軟件項目進度通常要延長50%的時間,只有9%的軟件項目能夠及時
交付并且費用也控制在預算之內。
軟件項目管理和其他的項目管理相比有相當的特殊性。首先,軟件是純知識產品,其開發進度和質量很難估計和度量,生產效率也難以預測和保證。其次,軟件系統的復雜性也導致了開發過程中各種風險的難以預見和控制。Windows這樣的操作系統有1500萬行以上的代碼,同時有數千個程序員在進行開發,項目經理都有上百個。這樣龐大的系統如果沒有
很好的管理,其軟件質量是難以想象的。
4.我國軟件項目管理的前景
應該很清楚地意識到,項目管理在中國起步較晚,項目管理水平與高速增長的經濟建設不相適應,也不利于參與國際競爭,必須奮起直追,趕超國際先進水平。展望未來,我們
面臨的不僅有廣闊市場的大好機遇,還有必須認真對待的嚴峻挑戰:
(1)、隨著中國加入WTO,工程建設市場競爭時代的來臨,加大項目管理力度勢在必行。只有穩定提高實力,迅速熟悉并掌握國際規則,主動溶人貿易體系,不斷加強競爭實
力和項目管理水平,才不會在激烈的市場競爭中失敗。
(2)、隨著中國宏觀控制體制調整和市場經濟改革的深化,工程公司、項目管理公司和工程咨詢公司等企業必須進一步深化管理體制和運行機制改革,加快重組,與世界接軌,建立現代企業制度,才能成為自主經營、自擔風險、自負盈虧和自我發展的良好經濟實體,在項目管理中提供高質量、有針對性、有競爭力的服務。
(3)、目前,中國建設市場在管理體制、法制建設、運行機制、中介服務、價格政策和社會習慣等方面仍有許多有待改進的工作要做。中國必須建立法制的、政府監督的、自我約
束的管理體系,建立公開、公平、公正的投資中介市場,加大投資中介服務的法律責任,為
工程咨詢和項目管理創造更好的市場環境。
(4)、中國公司應該進一步加強與美國、歐洲和澳大利亞的國際項目管理機構和協會之間的合作與交流。充分利用理工大學和學院加強項目管理的理論與實踐研究,建立自己的項目管理體系,引進和開發先進的項目管理軟件系統,提高項目管理水平,為工程公司、項目
管理公司和工程咨詢公司的發展提供更好的環境。
(5)、中國必須培養自己的優秀項目管理專業人員,大力提高項目管理水平。專業人才匱乏是影響中國項目管理快速發展的主要因素,中國應當把培訓和建立一支優秀項目管理專業人員隊伍作為戰略任務來抓。中國項目管理人力資源結構必須通過國內國際相關培訓和認
證機構以及項目管理實踐來改進。
只有采取上述的措施,中國企業才能適應可持續發展要求并在激烈的市場競爭中立于不敗之地。剛剛在9月1日,邦永科技于廣東亞洲國際大酒店召開首屆渠道峰會,被業內同行稱之為“來勢洶洶”。此會議共在全國招募了30多個地區總代理商,11月份正式啟動市場。據了解,邦永的產品定位為中低端,價位在5萬到40萬元之間。邦永目前加緊平面營銷渠道建設的同時,還在醞釀許多與行業主管部門的技術合作,似乎對打造國內項目管理行業標準胸有成竹。無怪乎邦永拿出這么大的舉措:據資料顯示,2002年中國政府撥3000億元專款用于各類政策性項目,省、市地方政府捐助至少1000億元的專款,全國每年至少有2000個新的1億元以上的大中型項目。如果這些項目都采用軟件來進行管理的話,市場非常可觀。邦永對這個市場充滿信心,盡管項目管理軟件市場在中國仍然處于啟動階段,但市場已經很大,高中端市場的容量在一億元以上,3-5年內將達到6億元左右。這還是一個
比較保守的數字。
總而言之,軟件項目管理領域仍然是一個比較新的領域,競爭態勢還遠未達到白熱化的程度,但前景十分可觀。需要不斷的去開發與研討,才能讓軟件充分的發揮在項目管理的領域,但在軟件項目管理中,存在在的各種風險管理應該根據不同的因素而做出不同的解決措施,讓項目管理可以發揮到一定的程度,使之更加的完善。最后感謝張冰峰老師一學期來的教導。
第三篇:軟件項目管理總結
軟件項目管理項目管理過程
軟件項目管理的對象是軟件工程項目。涉及的范圍覆蓋了整個軟件工程過程。
項目管理是指“在項目活動中運用專門的知識、技能、工具和方法,使項目能夠實現或超過項目干系人的需要和期限。”
項目的核心知識是范圍、時間、成本和質量。輔助知識是人力資源管理、風險管理和采購管理。項目啟動
接受項目的第一步工作就是界定項目。項目啟動應做如下工作:
1)設定目標:收集事實、信息、意見、需求;探討假設情況;確定應包括的內容和應排除的東西。
2)SWOT分析:S(優勢)W(劣勢)
O(機會)
T(威脅)
3)確定需要進行的主要工作及需要的技能和資源,即明確項目的資源和范圍。4)考慮可能的解決方案,標明技術上和管理上的限制。
2.1 制定計劃工作:度量
什么是度量? IEEE 定義度量是 “對一個系統、構件或過程具有的某個給定屬性的一個定量測量”。進行度量工作,是為了了解產品開發的技術過程和產品本身。(1)度量開發過程的目的是為了改進過程;(2)度量產品的目的是為了提高產品質量。度量的作用是為有效地定量地進行管理。
2.2 制定計劃工作:估算
在軟件項目管理過程中關鍵的活動就是制定項目計劃。在做計劃時必須就需要的人力(以人月為單位)、項目持續時間(以年份或月份為單位)、成本(以元為單位)做出估算。
(1)在軟件項目管理過程中關鍵的活動就是制定項目計劃。(2)在做計劃時必須就需要的人力(以人月為單位)、項目持續時間(以年份或月份為單位)、(3)成本(以元為單位)做出估算。
2.3 制定計劃工作:風險分析
所謂風險分析實際上就是一系列風險管理步驟,其中包括風險識別、風險估計、風險管理策略、風險解決和風險監督。這些步驟貫穿在軟件工程過程中。2.4 制定計劃工作:進度安排
每個軟件項目都要求制定一個進度安排,但不是所有進度都得一樣安排。2.5 追蹤和控制
一旦建立了開發進度安排,就可以開始著手追蹤和控制活動。由項目管理人員負責追蹤在進度安排中標明的每一個任務。如果任務實際完成日期滯后于進度安排,則管理人員可以使用一種自動的項目進度安排工具來確定在項目的中間里程碑上進度誤期所造成的影響。
(1)可對資源重新定向
(2)對任務重新安排(做為最壞的結果)可以修改交付日期以調整已經暴露的問題。用這種方式可以較好地控制軟件的開發。
軟件生產率和質量的度量
生產率與質量的度量是以投入工作量為依據的軟件開發過程的度量和軟件產品質量的度量。面向規模的度量面向功能的度量軟件質量的度量 軟件度量分為兩類:直接度量與間接度量。
軟件過程的直接度量包括所投入的成本和工作量。軟件產品的直接度量包括產生的代碼行數(LOC)、執行速度、存儲量大小、在某種時間周期中報告的差錯數。
軟件產品的間接度量包括功能性、復雜性、效率、可靠性、可維護性和許多其他質量特性。
3.1 面向規模的度量
面向規模的度量是對軟件和軟件開發過程的直接度量。3.2 面向功能的度量
面向功能的軟件度量是對軟件和軟件開發過程的間接度量,主要考慮程序的 “功能性” 和 “實用性”,而不是對 LOC計數。
該度量是一種叫做功能點方法的生產率度量,利用軟件信息域中的一些計數和軟件復雜性估 功能點度量是為信息系統應用而設計的。
特征點度量(Feature Points)可以用于系統和工程軟件應用。特征點度量適合于算法復雜性高的應用,如實時處理、過程控制、嵌入式軟件。
3.4 軟件質量的度量
質量度量貫穿于軟件工程的全過程中以及軟件交付用戶使用之后。
使用得最廣泛軟件質量的事后度量包括正確性、可維護性、完整性和可使用性。
(1)正確性:一個程序必須正確地運行,并為它的用戶提供某些輸出。正確性要求軟件執行所要求的功能。正確性的度量是每千代碼行(KLOC)的差錯數,其中將差錯定義為已被證實是不符合需求的缺陷。
(2)可維護性:軟件維護比其它的軟件工程活動需要更多的工作量。還沒有一種方法可以直接度量可維護性,必須采取間接度量。
一種簡單的面向時間的度量:
平均變更等待時間MTTC。這個時間包括分析變更要求、設計適當修改、實現變更并測試、把變更發送給所有用戶。一個可維護的程序與不可維護的程序相比,應有較低的MTTC。
(3)完整性:完整性度量一個系統抗拒對它的安全性攻擊(事故的和人為的)的能力。程序、數據和文檔都會遭到攻擊。
度量完整性,需要定義兩個附加的屬性:危險性和安全性。危險性是特定類型的攻擊將在一給定時間內發生的概率,安全性是排除特定類型攻擊的概率。
一個系統的完整性可定義為
完整性=∑(1-危險性×(1-安全性))(4)可使用性:如果程序不具有用戶友好性,即使它所執行的功能很有價值也常常會失敗。
4.2 軟件開發成本估算方法
對于絕大多數項目,主要的成本是工作成本。
軟件成本計算的目的是要精確地、客觀地預測軟件承包商的開發成本。軟件的開發成本是以一次性開發過程所花費的代價來計算的。要進行一系列的估算處理。主要靠分解和類推。
1.自頂向下的估算方法
這種方法的主要思想是從項目的整體出發,進行類推。
估算人員根據以前已完成項目所消耗的總成本(或總工作量),推算將要開發的軟件的總成本(或總工作量),然后按比例將它分配到各開發任務單元中去,再來檢驗它是否能滿足要求。
2.自底向上的估算方法
這種方法的主要思想是把待開發的軟件細分,直到每一個子任務都已經明確所需要的開發工作量,然后把它們加起來,得到軟件開發的總工作量。它的優點是估算各個部分的準確性高。缺點是缺少各項子任務之間相互聯系所需要的工作量,還缺少許多與軟件開發有關的系統級工作量.3.差別估計法
這種方法綜合了上述兩種方法的優點,其主要思想是把待開發的軟件項目與過去已完成的軟件項目進行類比,從其開發的各個子任務中區分出類似的部分和不同的部分。類似的部分按實際量進行計算,不同的部分則采用相應方法進行估算。
4.專家判定技術
由多位專家進行估算,取得多個估算值。再把這些估算值合成一個估算值。
一種合成方法是求各估算值的中值或平均值。其優點是簡便。缺點是可能會由于受一、二個極端估算值的影響而產生嚴重的偏差。另一種合成方法是召開小組會,使各位專家們統一于或至少同意某一個估算值。優點是可以擯棄蒙昧無知的估算值,缺點是一些組員可能會受權威或政治因素的影響。
5.標準Deiphi技術
A組織者發給每位專家一份軟件系統規格說明書和一張記錄估算值的表格,請他們估算。B專家詳細研究軟件規格說明書的內容,對該軟件提出三個規模的估算值,即:ai(最小), mi(可能), bi(最大), 無記名地填寫表格。C組織者整理專家們填在表格中的答復:
(1)計算各專家估算的期望值 Ei
Ei =(ai+4mi+bi)/6(2)對專家的估算結果分類摘要。
D在綜合專家估算結果的基礎上,組織專家再次無記名地填寫表格。比較兩次估算的結果。若差異很大,要通過查詢找出差異的原因。
E上述過程可重復多次。最終可獲得一個得到多數專家共識的軟件規模(源代碼行數)。
.最后,通過與歷史資料進行類比,根據過去完成軟件項目的規模和成本等信息,推算出該軟件每行源代碼所需要的成本。然后再乘以該軟件源代碼行數的估算值,就可得到該軟件的成本估算值。
4.3 軟件開發成本估算的經驗模型
軟件開發成本估算是依據開發成本估算模型進行估算的。
1.IBM模型(Walston-Felix)靜態單變量模型
2.其他靜態單變量模型 3.Putnam 模型
動態多變量模型。
4.COCOMO模型 結構型成本估算模型是一種精確、易于使用的成本估算方法。軟件開發項目的總體類型: 組織型
不涉及硬件的開發
嵌入型
完全與硬件結合的開發
半獨立型
介于上述兩者之間
COCOMO模型按其詳細程度分成三級:
基本COCOMO模型
中間COCOMO模型
詳細COCOMO模型
基本COCOMO模型是靜態單變量模型,用源代碼行數(LOC)為自變量的經驗函數計算軟件開發工作量。
中間COCOMO模型在用LOC為自變量的函數計算軟件開發工作量(稱為名義工作量)的基礎上,用涉及產品、硬件、人員、項目等方面的影響因素調整工作量估算。詳細COCOMO模型包括中間COCO MO模型的所有特性,但用上述各種影響因素調整工作量估算時,還要考慮對軟件工程過程中每一步驟(分析、設計等)的影響。15種影響軟件工作量的因素 fi:
產品因素:軟件可靠性、數據庫規模、產品復雜性
硬件因素:執行時間限制、存儲限制、虛擬機易變性、環境周轉時間
人的因素:分析員能力、應用領域實際經驗、程序員能力、虛擬機使用經驗、程序語言使用經驗
項目因素:現代程序設計技術、軟件工具的使用、開發進度限制
6.1 軟件范圍
軟件范圍包括功能、性能、限制、接口和可靠性。估算開始時應對軟件功能進行評價,對其進行適當的細化以便提供更詳細的細節。由于成本和進度的估算都與功能有關,因此常采用某種程度的功能分解。性能的考慮包括處理和響應時間的需求。
約束條件則標識產品成本、外部硬件、可用存儲或其它現有系統對軟件的限制。現成的用以支持軟件開發的工具(硬件工具及軟件工具);最基本的資源(人);通常,對每一種資源,應說明以下四個特性:資源的描述、資源的有效性說明、資源在何時開始需要、使用資源的持續時間。最后兩個特性統稱為時間窗口。
6.4 風險分析
風險分析的主要活動有風險識別、風險估算、風險評價和風險管理。
風險分項目風險、技術風險和商業風險。
項目風險是指(1)潛在的預算、進度、人員和組織、資源、用戶、需求方面的問題,以及它們對軟件項目的影響。(2)項目的復雜性、規模、結構的不確定性。技術風險是指(1)潛在的設計、實現、接口、檢驗和維護方面的問題。(2)規約的二義性、技術陳舊或太先進。
第四篇:學習軟件項目管理總結
學習軟件項目管理和制作時光網上商城系統總結
這學期通過宋老師講授軟件項目管理這門課程,自己學到了很多東西。最初在單位做設計是一個盲目的過程,無計劃、無框架設計,拿來需求大家把模塊分攤,就開始埋頭寫代碼,總認為設計代碼是最重要的事情,但是經過幾次嘗試,每次做出的東西不是很理想,自己也不知道原因為什么會不理想呢,自己做的東西是按領導拿來的需求書上的要求做的,可為什么用戶不滿意呢。
通過學習軟件項目管理這門課程后,我知道我們做開發失敗的問題了。我自己總結了幾點:
一、項目接到手,沒有根據軟件項目開發的流程進行分析、設計。
二、項目需求說明書、概要設計說明書、可行性報告、詳細說明書、數據庫設計說明書、軟件詳細設計說明書,測試報告這些文檔東西應該是在設計過程中產生的,但我們工作中都是軟件做完了,為了項目的驗收急急忙忙趕制出來的。這些說明書已經失去了他們的意義。
三、人員的配合、管理也是很重要的。我們單位中領導就是項目經理,但是這個項目經理沒有達標,有項目了他帶領大家開會討論,在會議上就把此項目的可行性和工作分工就安排好了。會下大家就埋頭寫代碼,大家之間的交流也很少,直到模塊要合并時,出現問題了大家才把自己的設計理念講一下,再修改再合并。后期的修改合并工作是一個最費時的事情,把設計中的大多時間花在了這里,如果大家在最初按照流程走,定期交流,項目經理監控、督促就不會出現這樣的事情。
四、做項目每個人員的態度認真也是很重要的。自己習慣了大企業中的慢生
活,我們開發軟件都是快到項目驗收了,才加班加點的工作,這樣怎么能做出好軟件呢。
宋老師還給我們布置了項目開發作業。我們小組設計了“時光網上商城系統” 我這次所經歷的項目更讓我明確了這點。在這個小項目里,雖然我們一個月完成了這個軟件設計,但存在很多問題。“時光網上商城系統”包括9個模塊,我在這個項目里,我參與了概要設計、詳細設計、軟件測試文檔的編輯和會員管理模塊、商品展示模塊的設計。這兩個模塊的設計對于自己來說沒有什么問題,因為在單位就是做這個的,但是在前期的概要設計說明和詳細設計說明對自己有點困難,因為以前沒有這樣做過,沒有什么設計框架,這時自己拿出宋老師講的筆記和圖書進行學習,再和隊友交流,終于有了自己的框架。所以、在這個過程中我明確了技術的實在意義,明確了項目管理對我的指導,同時也明確了自己的今后項目開發應該怎樣做。
整個項目進行的過程中,我一直在邊學習邊制作,每周與其他同學定時交流,整個過程我收獲很多。
一、項目小組人員都職責明確,每周定時交流溝通工作進度,隨時更新方便開發人員、測試人員之間的交流。
二、細致的計劃可以讓項目進行避免彎路。
三、項目經理時光的組織、督促和監督,小組人員的齊心,這個項目才順利能完成。
四、這個項目制作把繞老師和陳老師講的內容也都應用在初期系統構建和中期、后期的軟件測試中。
五、通過學習認真分清了軟件管理與軟件工程的關系和項目管理知識體系。
通過本學期的學習,我感受到軟件項目管理是一門非常需要學習的課程。我們所做的雖然是個小項目,但是在小組共同開發的時候還是需要用到項目的管理。如人員分配、時間、進度的計劃、溝通計劃、項目執行變更管理,以及質量管理控制等多種管理。自己對這門課程學到不是很好,但我相信在今后的工作中,能夠更好的體驗和感受項目管理的精髓,對軟件項目管理有更深入的了解。
第五篇:軟件項目管理知識點總結
第一章概述
1項目是指在一定約束條件下具有特定目標的一項一次性任務。
2.項目的特點
一次性;有確定的起點和終點
目標明確性:成果性目標,約束性目標;
整體性:開展的活動密切相關
獨特性:每個項目都是唯一的不可逆轉性:無論結果如何,項目結束,結果確定。
3.項目的生命周期:項目啟動、項目計劃、項目實施、項目結束。
4.項目管理的要素:客戶滿意度、工作范圍、組織、時間、質量、成本
TQC:時間質量成本成功因素:TQC+范圍
5軟件項目管理的定義
根據PMI項目管理的定義總結:在軟件項目活動中運用一系列的知識、技能、工具和技術,以滿足軟件需求方的整體要求。
6.項目管理特點:綜合性、創造性、時間性第二章軟件項目需求管理
1軟件需求的抽象層次:原始問題空間(原始問題描述、用戶需求);解決方案空間(系統需求、軟件設計描述)
2軟件需求:用戶需求和系統需求:
①用戶需求:從用戶角度描述系統的需求,只描述系統的外部行為,并且只通過自然語言、圖表、圖形等敘述
②系統需求:從開發人員角度描述系統的需求,是系統實現的依據,通常采用結構化語言、PDL過程設計語言等描述。
系統需求:功能需求、非功能需求、領域需求
3、需求工程的組成:需求開發和需求管理
需求開發:需求的獲取、需求分析、規格說明和需求驗證
需求管理:變更管理、版本控制、需求跟蹤和版本狀態
4需求管理的必要性
①需求供求雙方固有的矛盾
②需求具有易變性和難以表達性
③需求錯誤出現的高頻性和修復的高昂成本
5需求管理的目標:是在客戶與項目組織之間建立對客戶需求的共同理解。
①使軟件需求受控,并建立供軟件工程和管理使用的需求基線;
②使軟件計劃、產品和活動與軟件需求保持一致。
6、需求變更的原因
①在項目的早期所有的問題不可能完全定義;
②隨著軟件項目的進行,開發人員對問題的理解發生變化,這些變化反饋到需求中;
③大型系統的需求可能是沖突或是矛盾的,系統需求是它們之間的妥協,這種妥協可能發生變化;④系統購買者和最終用戶很少是同一人;
7、需求變更管理過程
首先要建立變更控制委員會,分析、討論、評審、執行。
第三章軟件項目的成本管理
1軟件項目的成本:為完成軟件項目而支付的貨幣量
2軟件項目的時間估算點:客戶需求產品定義系統設計系統實現系統運行
3對軟件規模的估計要從軟件的分解開始。軟件的分層結構對應工作分解結構(WBS)4軟件規模的度量標準:LOC代碼行和FP功能點
5成本估算方法:專家判定、類比、自頂向下、自底向上、算法模型(cocom(自底向上)、cocomoⅡ、putnam(自頂向下))
6、三層次的產品分級結構:模塊、子系統、系統
7、估算的時機和精度是相互矛盾的。第四章軟件配置管理
1軟件項目配置管理:是識別定義系統中的配置項,在軟件生命周期中控制他們的變更,記錄并報告配置項和變更請求的狀態,并驗證他們的完整性和正確性的一個過程。2軟件配置項:SCI出于配置管理的目的而為軟件要素設置的單位。
3基線:開發過程的里程碑,以一個或多個軟件配置項的交付為標準;基線由通過正式評審的軟件配置項組成,是進一步開發的基礎;基線只有通過正式的變更控制過程才能改變。4基線的兩個基本功能:①對基線進行適當控制,禁止任何來源的交互②為程序員提供靈活的服務,確保他們能夠比較容易地對自己的代碼進行修改測試
5軟件配置管理主要功能:配置標識、配置控制、配置狀態報告及配置審核
6配置控制委員會:CCB 負責評審和批準對基線的變更
7軟件的配置項組成:正確性、一致性、完備性、有效性、可追蹤性。
8確定變更是否正確的措施:正式技術審核和軟件配置審核.9配置審核的種類:過程審核、功能審核、物理審核、質量系統審核
第五章人力資源管理
1、軟件項目中的人力資源管理包括:所有的項目干系人:資助者、客戶、項目組成員、支持人員及供應商等。
人力資源管理就是有效地發揮每個項目干系人作用的過程。
2軟件開發中人員與時間具有非線性替換關系。第六章質量管理
1軟件質量六大特性:功能性、可靠性、可用性、效率、可維護性、可移植性
2、過程質量控制是主動的、系統的、先期的;
產品質量控制是被動的、個體的、后期的;兩者都要重視。
3.CMM的5個等級:初始級、可重復級、已定義級、已管理級、優化級
4.CMMI的兩種表示方式:連續性表示和分階表示
5軟件過程能力等級(連續性表示法):不完備級、已執行級、收管理級、已定義級、定量管理
級、持續優化級。
第七章風險管理
1.風險的定義:損失的可能性
2.風險的屬性:可能性損失
3軟件風險:就是有關軟件項目風險、軟件開發過程風險和軟件產品風險。
4.風險管理過程:風險識別、風險分析、風險計劃、風險跟蹤、風險應對(風險最小化,機會最大化)
5.風險應對策略包括:避免、轉移、緩解、接受、研究、儲備以及退避。
6軟件項目管理的主要風險類別:①資源風險②需求風險③項目接口風險④設計風險⑤管理風險⑥開發過程風險⑦項目集成風險。