IT軟件項目開發(fā)的具體實施方案_第1頁
IT軟件項目開發(fā)的具體實施方案_第2頁
IT軟件項目開發(fā)的具體實施方案_第3頁
IT軟件項目開發(fā)的具體實施方案_第4頁
IT軟件項目開發(fā)的具體實施方案_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第第頁

工程管理實施方案

作為一個工程管理者,如何要成功的做好工程管理;首先必須先要明白的是在特定的領域中賦予這個角色所要實現的目標、承當的職責、以及工程管理者的具體工作內容是什么?

從我個人的淺見和角度以及我們所從事的IT領域來分析答復以上三個問題。

第一:目標

作為一個工程的管理者,必須要明確的知道自己的工作目標;我個人認為工程管理者的目標無非就是以下兩點:

1、就是清晰明確地了解工程利害關系者的需求和期望,努力做到滿足工程利害關系者的不同需求;工程利害關系者包括:工程團隊成員和工程團隊外成員(比方各部門的部門負責人和市場人員,客戶等)。

2、就是保證開發(fā)工程按需按時保質的完成。

第二:職責

作為工程的管理者,首先要端正態(tài)度,要明確知道自己的工作職責,認識到這份工作職責的本質。工程管理者不是來管人的,而是來支持人的,是來協(xié)調資源的,是來營造一個適合團隊成員比擬認同的工作環(huán)境和氣氛的,是來為一個共同的目標和大家一起戰(zhàn)斗共同成長的??梢源蟾鸥爬ǔ梢韵聨c:

建立有效的工作流程保證工程的順利進行。

制定詳細周密的工程方案。

3、跟蹤,推動工程按方案進行。

4、積極解決工程過程中出現的問題和沖突。

5、調動開發(fā)團隊的積極性,創(chuàng)造力,推動團隊成員在工程過程中不斷成長。

6、工程風險識別、風險評估、風險解決和風險管理策略以及做好突發(fā)風險的應急預案。

7、實現目標

第三:工程管理者的具體工作內容

最后一個是工程管理者的具體工作內容,作為工程管理者必須清晰的知道自己的工作范圍和所要做的工作內容以及工作重心,分為以下六點:

1、工程前期階段

對工程進行技術可行性分析、技術評估、本錢評估以及風險評估。與需求提出方的代表進行需求討論,明確工程的目標、價值;確定工程范圍、功能及優(yōu)先級。組建工程團隊,特別要搞清楚工程的key

person(對產品有決定權的人)。工程啟動會議,相關的利害關系人員都必須參加。

該階段完成后的成果:確認后的最終軟件需求規(guī)格說明書文檔。

2、分析設計階段

根據確認后的軟件需求規(guī)格說明書,制定工程進度方案,工作任務分解(WBS);資源申請,工程涉及到的開發(fā)資源、測試資源、設計資源(包括人員和軟硬件資源);數據庫設計;系統(tǒng)設計;文檔(包括Use

Case、Demo系統(tǒng)原型、Test

Case等);評審會議。

該階段完成后的成果:

A、User

Case(系統(tǒng)用例);

B、DEMO(系統(tǒng)原型);

C、系統(tǒng)設計文檔(概要設計和詳細設計);

D、數據庫設計文檔。

最后對完成的成果,包括User

Case和設計文檔等進行評審。

3、執(zhí)行階段(開發(fā)和測試)

準備開發(fā)環(huán)境、測試環(huán)境;跟蹤,推動工程按方案進行;以周報的形式通報工程的進展情況。對工程的階段成果進行評估,以確保該階段完成的質量,包括代碼審核、SQL審核等。對需求變更進行控制管理;對工程風險進行管理;測試階段BUG

FIXED及改良、收集反應意見。

4、發(fā)布階段

包括制定工程發(fā)布方案,用戶培訓,發(fā)布上線。

5、上線后監(jiān)控

數據監(jiān)控(日志、效勞器狀態(tài)),根據監(jiān)控出現的問題,及時進行BUG

FIXED及改良或做補丁升級。

6、結束階段

產品交付,工程總結會。

第四:基于以上三個問題所做的應對細那么

要做好工程管理,并能確實解決好以上三個問題,實現目標、履行職責、完成工作中的具體內容,從我個人這幾年的工作經驗和面臨的一些問題,還有所積累的一些工程管理中的一些知識以及自己的觀察和思考的角度看,應該要努力做好以下這幾個方面的具體工作:

1、工程開發(fā)時間的估算

制定工程進度時間表的時候,需要估算每個任務所需的時間,其中開發(fā)任務中模塊的分配和時間估算是其中最主要的局部;在分配模塊和估算開發(fā)時間時需要遵循的原那么和目標:

1、保證工程整體的進度。

2、有助于確保開發(fā)編碼的質量。

3、有助于提高開發(fā)編碼的速度。

在公司現有的技術框架下,開發(fā)人員主要的工作是投入在具體的商業(yè)邏輯上。通常每個模塊所需的開發(fā)時間取決于以下三個因素:

1、所負責模塊的商業(yè)邏輯的復雜程度。

2、開發(fā)人員的技術水平和對工程所在應用的熟悉程度(包括對框架和應用的熟悉程度)。

3、該模塊技術實現上是否有技術難點;這里所謂的技術難點定義是:在現有系統(tǒng)中還未實現的、開發(fā)人員自身也未沒接觸過的技術。對于這樣的難點,開發(fā)者沒有相關的代碼可以參考,自己也沒有經驗,所以需要投入一些時間研究解決。

模塊分配和開發(fā)時間估算的步驟:

1、在劃分好模塊后,首先自己先估算一下每個模塊所需要的開發(fā)時間。

2、然后召集所有開發(fā)人員,討論模塊的分配和開發(fā)時間估算。將劃分好的模塊,讓開發(fā)人員從中挑選他們感興趣的模塊。這樣做可以提高開發(fā)人員的主動性和參與性。在分配模塊的時候還需從以下幾方面考慮,以確保開發(fā)的速度和質量:

A、相同類似的模塊由同一人負責開發(fā),比方用戶管理的增刪改由同一開發(fā)者負責。這樣做的好處就是開發(fā)者對相關邏輯會更加熟悉,同時接口的定義也會比擬明確,溝通的本錢比擬低,同時功能實現的缺陷也相應的會降低。

B、技術難度比擬大的模塊由技術水平比擬高的人負責。

C、業(yè)務邏輯比擬復雜的由對這塊邏輯比擬了解的人負責。

3、模塊分配完后,開發(fā)人員評估自己負責開發(fā)的模塊所需要的時間。在此過程中最好做到要和開發(fā)者比擬詳細的討論每個模塊的技術實現,以便使時間的估算更加準確。

4、對開發(fā)人員估算的時間進行確認。在確認過程中作為工程管理者應參考以上提到的三個因素,同時將自己估算的時間和開發(fā)人員估算的時間進行比擬。這其中的差異當然會存在的。對于那些差異比擬大的,將與技術人員探討其中的緣由。對于時間周期比擬長的任務,盡量將任務通過再細分的手段細化任務,爭取每個任務的最長時間不超過3天;時間周期越長的任務,不確定性越高,風險也越高,越有可能成為工程的瓶頸,影響工程的進度。

2、Code

Review

Code

Review是保證工程中代碼質量非常重要的一個環(huán)節(jié),在這一環(huán)中我們公司做的非常欠缺,把關不嚴格;這是導致每次測試后出現大量bug的主要原因,這一環(huán)需要納入績效考核中,實行責任追究制,實施重點監(jiān)控。出現這樣的薄弱環(huán)節(jié),造成這樣的原因,我想也是有很多因素造成的;比方開發(fā)人員對需求不是很明確,以自己比擬主觀的因素去完成任務的;還有對整個系統(tǒng)業(yè)務邏輯沒有正確的清晰的認識的原因,以及對工程組成員培訓不到位的原因等眾多因素糾集在一起才產生的。

如何做好這方面的工作?首先編碼要有“編碼標準〞文檔,Code

Review要有“代碼審核標準〞文檔:記錄代碼實現應該遵循的標準。通過這兩個文檔來標準開發(fā)人員的代碼實現,代碼編寫者必須要嚴格按照標準來進行;代碼審核者根據這些標準來Code

Review代碼,同時在Code

Review過程中不斷完善該文檔。

在做好這些前期工作的前提下,分以下幾個步驟來實施:

1、

檢查開發(fā)者的代碼實現是否遵循了編碼標準。

從代碼的易維護性、可擴展性角度考察代碼的質量,提出修改建議。

3、

代碼編寫者和代碼審核者坐在一起,由代碼編寫者按照Use

Case依次講解自己負責的代碼和相關邏輯,從Web層-到Manage層再到Dao層;

4、

代碼審核者在此過程中可以隨時提出自己的疑問,同時積極發(fā)現隱藏的bug;對這些bug記錄在案。

5、

代碼講解完畢后,代碼審核者給自己安排幾個小時再對代碼審核一遍。代碼需要一行一行靜下心來看。同時代碼又要全面的看,以確保代碼整體上設計優(yōu)良。

6、

代碼審核者根據審核的結果編寫“代碼審核報告〞,“審核報告〞中記錄發(fā)現的問題及修改建議,然后把“審核報告〞發(fā)送給相關人員。

7、

代碼編寫者根據“代碼審核報告〞給出的修改意見,修改好代碼,有不清楚的地方可積極向代碼審核者提出。

8、

代碼編寫者

bug

fixed完畢之后給出反應。

9、

代碼審核者把Code

Review中發(fā)現的有價值的問題更新到"代碼審核標準"的文檔中,對于特別值得提醒的問題可群發(fā)email給所有技術人員。如果通過以上步驟,還因

為是代碼編寫者的原因而出現嚴重的缺陷問題,將通過績效考核來加深代碼編寫者的印象,并在周報會議上做通報批評。

3、需求變更管理

需求變更管理也是工程管理中最重要的一個環(huán)節(jié),對需求變更管理的有效性將直接影響工程的成功與否。

對待需求變更的態(tài)度:

需求變更是不可防止的。

2、需求變更要必須被管理。

3、積極發(fā)現引起變更的因素,促使變更盡可能早的出現,減低變更帶來的風險。

需求變更管理的目標:

1、相關的干系人必須清楚地了解發(fā)生的變更。

2、變更處于有效的管理中。3、盡量降低變更帶來的風險。

通過制定需求變更的流程,確保工程中的需求變更有效地進行,實現上述的目標。需求變更流程:

1、確定需求的基準線。將以User

Case作為需求基準線,在User

Case確認之后的任何需求改變,都需要走需求變更流程,這一環(huán)節(jié)我們根本沒有,期間有時候使的工作很混亂,也就是因為沒有一個標準的變更流程而造成的;如果建立了這么一個流程標準和機制,需求變更沒有走這個流程的將不被認可。

2、工程管理者接收到需求變更的要求。需求變更的提出者可以是工程中的任何人包括產品經理、市場人員、開發(fā)人員、測試人員等。

3、工程管理者評估該需求變更。針對接收到的需求變更的要求,召集相關人員討論該需求變更的合理性、可行性,實施的代價以及對工程的影響。包括可能影響的工程范圍,進度,費用,質量等方案。工程管理者作為工程的負責人,對工程的成功與否負有主要的責任。所以需求變更的決策者應該由工程管理者承當。

4、需求變更確認后由專人將需求變更記錄下來,通知給工程中所有成員。其中以下人員對需求的變更是緊密相關的,他們必須知曉并認可此需求變更。包括〔客戶方,需求分析人員,測試人員,相關開發(fā)人員〕。需求變更記錄格式如下:

序號

變更提出時間

變更描述

變更類型(是對原有需求的修改還是新增需求)

原因

變更提出者

開發(fā)人員對進度的影響(工作量)12

5、確定變更的負責人。承當需求變更的具體工作,比方基線控制,對需求變更的記錄,并通知相關人員。

6、相關人員接收到確認的需求變更后,做以下事情。需求分析人員修改需求說明書和User

Case的相關內容。測試人員修改測試用例的相關內容。開發(fā)人員修改代碼中的相關局部。

7、按照變更后的方案實施工程,并進行檢查,跟蹤,對變更后的實施反應和可能出現的問題及時溝通和處理。

8、需求凍結。工程越到后期,需求變更對工程的影響就越大,所以在一定時候要進入需求凍結階段,不再接收新需求或需求的變更。

4、風險管理

風險管理是工程管理者最重要的工作之一。風險管理是一個持續(xù)的過程,貫穿于整個工程過程中,風險管理包括風險識別、風險評估、風險解決以及風險管理策略。

在工程的實施過程中需要不斷地識別和應對風險,并加以有效的控制,風險管理的好與壞直接影響工程的實施效果,從某種意義上講,工程實施對于工程管理者就是識別、分析、應對、控制風險的過程,使工程的約束性目標和質量目標朝有利的方向開展。

工程不同于日常任務,它有明確的起止時間和目標,要在明確的范圍、時間和本錢約束下,到達相應的質量標準,并取得用戶的滿意。影響工程成敗的因素涉及方方面面,并且風險伴隨著工程的始終,是客觀存在的,作為一個工程管理者,應該具備良好的風險控制意識,善于識別風險并分析風險的影響,從中發(fā)現影響目標的風險點,并施加影響或采取應對措施,把風險的負面影響降到最低,并且風險控制應該貫穿工程始終。

風險引起的負面后果集中表達在進度延后、本錢超支、質量不達標等方面,導致這些問題的因素主要包括目標以及需求不明確、范圍蔓延以及需求變更、代碼質量或返工風險、人員技能和資源的缺乏、缺乏良好的團隊協(xié)作等。下面將詳細描述一下這些問題以及出現這些問題時的應對方案:

1、目標以及需求不明確

為了市場競爭或內部管理決策的需要,業(yè)務部門提出的需求往往要求的時間比擬緊迫,需求的提出大多停留在幾張紙或口頭的傳達上,沒有形成正式的業(yè)務需求文檔,在沒有明確的需求范圍的情況下,有時為了迎合業(yè)務部門的口味匆匆開工,過程中用戶不斷地提出新的想法,技術人員開始疲于奔命和應付,很難保證工程的進度和質量,也難以取得業(yè)務部門的認可。所以,在工程的前期一定要采取相應的手段或措施,與業(yè)務部門共同明確工程目標、需求范圍,充分考慮現有的時間和資源約束,將需求排定優(yōu)先級,對于關鍵的需求優(yōu)先實現,其他輔助性的根據過程中的具體情況進行滾動式方案,并取得業(yè)務部門的書面確認。在此過程中要注重挖掘用戶的隱性需求,可以通過引導、系統(tǒng)原型等手段讓用戶在前期充分暴露自己的想法和需求。

2、范圍蔓延以及需求變更

在有了明確的目標和需求范圍的情況下,需求的變更還是不可防止的,業(yè)務部門在看到具體系統(tǒng)的真實雛形之后,源源不斷地要求、新想法隨之產生,如果不對此加以控制,新的需求的參加通常會影響已實現的需求,并且對工程進度和本錢產生很大的影響。工程管理者針對這種情況一定要采取嚴格的變更控制流程,不能礙于面子,否那么最終的結果往往是出力不討好。針對用戶提出的新需求,按照正式流程提出變更申請,組織相關團隊成員進行分析及評估,作為是否實施的依據,變更控制負責人根據分析結果判斷是否批準,如果批準,那工程組可以安排實施,否那么,正式拒絕用戶的請求,當然實際情況下可以采取一些軟措施緩解矛盾。

需求變更風險:需求已經打上了基線,但此后仍然有變更發(fā)生,對工程造成影響。如何減少此類風險的發(fā)生?

前期的需求討論要詳細、充分。需求文檔中需求的范圍要明確、功能描述要清楚。找出工程中需求的決策者(通常會是產品經理、相關職能主管、客戶),所有的需求要經過他們的認可。客戶在工程過程中的全程參與有助于降低此類風險。需求討論、需求確認、User

Case確認、測試階段的客戶驗收等環(huán)節(jié),都要要求客戶參與。在發(fā)生需求變更時,嚴格按照需求變更流程執(zhí)行。在分析設計階段的中確實認和評審也是降低此類風險的重要手段。

3、代碼質量或返工風險

質量風險主要指開發(fā)代碼的質量。如何提高開發(fā)人員開發(fā)的質量?在制定工程方案時,對開發(fā)時間的評估要盡可能的適宜。合理的開發(fā)時間對開發(fā)質量的影響也很大。有時開發(fā)人員為了趕進度在比擬緊張的時間需要完成指定的任務,可能就存在很大的開發(fā)質量問題。開發(fā)要有一套嚴格可行的代碼標準,編碼時嚴格遵守,到現在為止,我們這個方面做的不是很標準,做的也很缺乏,大家編寫的代碼隨意性比擬大,代碼編寫者的主觀意識性比擬強。要建立一套大家認可并且標準可行的編碼標準和考核標準,code

review時嚴格考核。在編碼前,開發(fā)人員要對框架熟練掌握;一份好的系統(tǒng)設計文檔對指導開發(fā)非常重要。

返工是工程組最不愿意看到的,既浪費人力、物力和財力,又影響團隊積極性。需求不明確或范圍沒有有效控制都可能造成返工,另外造成返工的原因是質量沒有到達用戶要求。往往有這樣一種情況,每個團隊成員按照工程方案報告進度都是100%完成,但一到最后系統(tǒng)交互測試或集成的時候就會發(fā)現一大堆問題,不得不花費很大精力回頭排查、修改程序,造成這種情況的主要原因是過程中質量保證沒有做到位,把大局部問題留在了后面。這就需要在工程實施過程中采取有效的措施來躲避返工的風險,通常的做法有同行評審,比方概要設計完成之后,邀請其他工程組的技術專家進行技術評審以發(fā)現架構設計問題;管理評審,通過組織級的質量審計看產品以及實施過程是否滿足質量要求;代碼走查,在編碼過程中參加至少一次的代碼走查,排查不符合標準或性能要求的代碼,走查通常能夠發(fā)現50%-70%的錯誤;每日構建,這是一種非常有效的方法,可以防止把各局部的集成問題拖到最后,并且能夠及時發(fā)現相應的錯誤,日構建一般在工程的中后期開始,每天自動從版本效勞器上獲取源代碼進行自動編譯和測試。

4、人員技能和資源的缺乏

工程實施過程中由于人員技能欠缺造成的進度延后和軟件質量問題并不少見,一個熟練的技術人員完成同樣一個任務需要3天,但一個生手可能就需要7-10天。工程管理者應該在前期就分析清楚工程所要采用的技術以及相應的人員技能要求,針對不同的角色,及時采取相應的技能培訓,以保證工程的順利實施。如果對于工程中某些局部專業(yè)性特別強或新技術,短期內又不能快速建立技能的情況,可以考慮將該塊任務外包,借鑒合作商的力量降低實施風險,當然要進行外購人力本錢與自建人力本錢的效益分析。開發(fā)過程中遇到技術難題,導致開發(fā)時間延遲或者需求不得不發(fā)生變更。如何減少此類風險的發(fā)生?在工程開始前的技術評估階段,明確技術難點,提前安排人員進行攻克。如果在可預期的時間內無法解決,如果可以,將向需求提出方要求變更需求或尋找可替代方案。這樣的風險應該在工程的前期階段就應該解決在萌芽狀態(tài)來防止這樣的風險在后期或中期出現。

工程所需人力資源無法按時到位,導致資源風險。如何減少此類風險的發(fā)生?這個就需要在工程方案制定的時候提前申請確認資源,并在工程過程中不斷溝通協(xié)調。

5、缺乏良好的團隊協(xié)作

軟件工程實施屬于知識型,要發(fā)揮團隊成員的創(chuàng)造力,不同于制造業(yè)計件生產,各模塊最終要集成在一起形成一個有機的整體,這就需要各小組之間的密切配合,界定清楚工作界面及接口關系,并在實施過程中持續(xù)地溝通交流和共享,首先團隊要融為一體,產出的軟件才能融為一體。這是一個團隊的軟實力,團隊之間的協(xié)作好壞也將是個潛在的風險問題,在工程啟動和團隊組建的時候就應該加以躲避這樣的風險出現。

工程風險管理的要點:

1、

上述我們所說的風險管理都是指可以預期將要發(fā)生的風險,那些不可預期將要發(fā)生的風險不屬于風險管理的范疇。這也將是考驗一個工程管理者的經驗和知識對能否管理好風險至關重要的內容。

2、

對不可預期的風險,工程管理者要有潛在的風險意識評估,做好一些可操作性的預案準備。

3、

詳細明確的工程方案、以及工程執(zhí)行過程中每個要點的質量保證是降低工程風險的必要條件。

4、

風險報告是工程團隊以及領導了解工程風險的一個有效手段。

風險報告的格式:

序號風險簡介對工程的影響解決方案或對策5、團隊管理

團隊就是一組個體為實現共同的目標而相互依賴、一起工作的共同體。團隊工作顧名思義就是團隊成員為實現這個共同的目標而付出的共同努力,工程團隊的工作是否有效直接關系到工程的成敗。

團隊管理是個漸進的過程。世界上只有完美的團隊,沒有完美的個人。好的高效的團隊不是管理出來的,而是營造出來的。團隊成員需要有大家可認同的團隊文化,這需要大家共同的努力。

營造良好的工作環(huán)境和氣氛。

建設優(yōu)秀或鮮明的團隊文化。3、保持高效的溝通。6、工程會議

組織會議是工程管理者日常工作中一項非常重要的工作任務,工程過程中很多重要的決定都是在會議中做出的,也有很多由于不成功的會議而對工程本身造成了不好的影響。

首先看看不成功的會議常常表現為哪些形式:

會議氣氛不好,參與者發(fā)言不踴躍;

會議討論常常偏離主題;會議沒有取得預期的結果;

4、會議時間常常一拖再拖。

這些不成功的會議最終的結果就是:既浪費了大家的珍貴時間又沒有到達會議的目的,很多人都對這樣的會議都有抵觸情緒,對此也是深惡痛絕。以下是組織會議時應該注意的問題,也可看作組織會議的最正確實踐。在列出最正確實踐之前有三點我們必須要清楚:

1、會議是否會取得成功很大程度上取決于會議的組織者。只有組織得有力,會議才有可能取得成功,這是會議成功的充分條件。

2、會議的組織者和參與者的想法通常是不一致的,有時候甚至會大相徑庭。所以不要希望會議的參與者和你一樣,對會議有著如此的期待,對大多數參與者而言,在會議中他只是一個發(fā)表想法的人,他不用對會議的成功承當責任。

3、以下十一條最正確實踐是形式上的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論