[摘要] 本文主要是談一下微軟公司(Microsoft Corporation)項目管理(Project management)軟件的先進功能,報表直觀性,進度計劃按用戶要求能自動產(chǎn)生時間標(biāo)尺等優(yōu)點。為了更好的在企業(yè)中發(fā)揮微軟項目管理軟件的優(yōu)勢,并滿足實際中一些較為復(fù)雜的要求,必須對它進行二次開發(fā)。用戶得到的微軟項目管理軟件沒有源程序,這種情況下再次開發(fā)是有一定的難度,面對這一問題如何處理,最終怎樣達到客觀的要求,將一些體會拋出供大家在微軟項目管理軟件二次開發(fā)中給以借鑒。
Microsoft Project(以下簡稱MS Project)所采用的技術(shù)是在二十世紀(jì)初期由不同的人和組織發(fā)展起來的。二次世界大戰(zhàn)之后,由于軍事項目的規(guī)模大和復(fù)雜程度高,美國安全部(Department of Defense)及相關(guān)的承包商在項目管理方面下了不少功夫,作出了不小的貢獻。同一時期,電子計算機的發(fā)展已經(jīng)使得成千上萬的任務(wù)和資源安排調(diào)度所需的大量計算成為可能。隨著計算機科學(xué)技術(shù)的飛速發(fā)展,世界人類已經(jīng)逐步走向了信息化的時代,項目管理工具應(yīng)用已經(jīng)相當(dāng)普遍,不僅適用于大型項目,同時也適用于小型項目,個人計算機(PC機)普及也使得所有的管理者都有機會接觸項目管理工具。雖然項目管理技術(shù)傳統(tǒng)上來說總是用于國防和建造工業(yè)上,但是近幾十年以來,它也運用于生產(chǎn)、服務(wù)行業(yè)和政府部門。由于我國改革開放的全面深化和市場經(jīng)濟的迅速發(fā)展,項目管理工具在國內(nèi)各行各業(yè)的應(yīng)用逐漸推廣起來。
一、 MS Project4項目管理軟件簡介
MS Project4是微軟項目管理軟件4.0版本,它是微軟公司1994年推出的一個非常出色的項目管理軟件,最近微軟又推出了新的版本Project98。MS Project4無論從對任務(wù)或資源的處理能力,還是它的圖表直觀性、時間性以及友好界面設(shè)計來看,都居于項目管理軟件的領(lǐng)先地位。
項目管理包括了項目的所有階段----從規(guī)劃階段直到結(jié)束,將各個階段任務(wù)的進行狀況直觀的圖表展示給人們,并且可畫出對項目完成的各種總結(jié)報表;如果你的項目目標(biāo)已經(jīng)決定,就可以使用MS Project4進行如下項目管理工作:
建立進度計劃表:一旦項目目標(biāo)確定好后,就可用MS Project4為你的項目制定進度計劃表;為建立項目進度計劃表,輸入需要做的任務(wù)和它們需要花費的時間,再明確一個任務(wù)開始前那些任務(wù)需要完成,在輸入完項目信息后,系統(tǒng)便自動生成項目的進度周期(Duration)。
分配任務(wù)的資源和成本:可以建立不用加上資源和成本到任務(wù)上的進度計劃表,也可以把資源和成本分配給相應(yīng)的任務(wù)建立進度計劃表。
優(yōu)化項目進度計劃表:當(dāng)項目的任務(wù)信息輸入完并資源和成本已與相關(guān)任務(wù)聯(lián)系起來后,有關(guān)人員對任務(wù)所有環(huán)節(jié)進行分析、評估,各個任務(wù)開工和完工之間有無沖突,整個項目計劃與目的是否像原始目標(biāo)所描述的那樣吻合,如成本常常會超出預(yù)算范圍、整個完工日期拖后,可方便的控制任務(wù),調(diào)整進度計劃表,使之達到理想的狀況。
監(jiān)視項目實際執(zhí)行情況:因為最好的計劃也會在實際執(zhí)行中出現(xiàn)這樣或那樣的問題,通過跟蹤進度計劃,可以發(fā)現(xiàn)哪些任務(wù)需要特別注意,及時調(diào)整,以使項目順利進行。
MS Project4項目管理軟件在完成上述功能中具有如下特點:
進度計劃甘特圖(Gantt Chart)上可容易的建立任務(wù)項:ID號、任務(wù)名稱、開工時間、完工時間、完成量等110多項,用戶可根據(jù)需要自由選擇項數(shù)。
甘特圖上任務(wù)項編輯:任務(wù)項可方便的增加、插入、移動、拷貝、切除、粘貼、修改、刪除、恢復(fù)刪除等。
標(biāo)出關(guān)鍵任務(wù)和里程碑:關(guān)鍵任務(wù)是其延遲會引起整個項目延遲的任務(wù),關(guān)鍵任務(wù)標(biāo)在關(guān)鍵路徑上。里程碑在項目生命中是一個重要的界標(biāo)、發(fā)展或轉(zhuǎn)折點;一般地,使用它來標(biāo)記項目一個重要部分的完成,它并不代表正在做一個工作,僅指明這一工作已經(jīng)開始或已經(jīng)結(jié)束。
任務(wù)相互之間關(guān)系約定:微軟項目管理為進度計劃中任務(wù)鏈接提供了四種不同的任務(wù)關(guān)系(結(jié)束到開始FS、開始到開始SS、結(jié)束到結(jié)束FF、開始到結(jié)束SF)。
概括一個項目:概括是組織任務(wù)的一個方法,這樣就能看出項目的結(jié)構(gòu);一個總計任務(wù)(Summary task)進行降級(Demoting)處理,子任務(wù)可降級縮進,可以看到次要任務(wù)的細(xì)節(jié);同樣任務(wù)也可以升級。
任務(wù)和資源聯(lián)系并提供了資源超分配的手段:資源超分配時,在資源圖(Resource Usage)上資源名字用紅色顯示并顯示出那個時間超出和超出多少,以便調(diào)整。
進度計劃甘特圖具有直觀的時間標(biāo)尺:時間標(biāo)尺有年、季度、月、周、天、小時、分和工作日,用戶可自由選擇。
MS Project4具有多種視圖:橫道圖(Gantt Chart)、網(wǎng)絡(luò)圖(PERT)、資源圖(Resource Sheet、Resource Usage、Resource Graph等)。
MS Project4和其他應(yīng)用程序之間可以進行通信:能夠?qū)㈨椖啃畔⒖截惓蒓DBC數(shù)據(jù)庫格式,Microsoft Excel、Microsoft Word、Lotus1-2-3等數(shù)據(jù)和圖表傳送到MS Project4中,反之也可。
鑒于MS Project4軟件的先進性和多用途的實用性,它在國內(nèi)外已被愈來愈多的人所使用。
二、 MS Project4二次開發(fā)的背景
雖然微軟項目管理軟件功能很強,在項目管理軟件中處于領(lǐng)先地位,但它不可能滿足于任何情況,它總有自己的局限性,這就是二次開發(fā)的前提。
微軟項目管理軟件對一個單級進度計劃項目管理,不論任務(wù)項有多少,項目有多么復(fù)雜,任務(wù)資源分配牽涉關(guān)系多么多,它都顯示出了優(yōu)越性、完善性和方便性。如果對一個大型復(fù)雜項目,用工作分解結(jié)構(gòu)(WBS: Work Breakdown Structure)法由頂向下分解成多級進度計劃控制,由計算機網(wǎng)絡(luò)從下級進度計劃完成任務(wù)的信息逐級向上級進度計劃自動匯總跟蹤,直到頂層計劃,任務(wù)完成或沒有完成的情況用不同顏色表示,這樣各級進度計劃一目了然的反映了真實執(zhí)行情況。根據(jù)沒有完成情況的比例分成幾級報警,以示警告,給人們展示了進度拖了多少天、拖了任務(wù)百分之多少;為了趕上進度給人們提供控制方案,提示每天需增加多少工作量、多少人力和設(shè)備。這種多級進度計劃逐級自動跟蹤、報警和控制對MS Project4就顯得無能為力;目前微軟項目管理軟件能實現(xiàn)自動匯總跟蹤,是把下級幾個進度計劃原封不動匯總在一起,匯總圖不能更改,這不是我們所需要的WBS法分解的多級進度計劃。真正多級進度計劃是上級進度計劃任務(wù)項包含于下級進度計劃之中,下級進度計劃任務(wù)項可多于上級進度計劃任務(wù)項,上級進度計劃是下級進度計劃的概括,下級進度計劃是上級進度計劃的分解。總之這種多級進度計劃的自動跟蹤、報警和控制目前微軟項目 管理軟件還不能實現(xiàn)。
MS Project4軟件只能給出單代號網(wǎng)絡(luò)圖(PERT圖)和實現(xiàn)單代號PERT圖與甘特圖(Gantt Chart)相互轉(zhuǎn)換,我國不少人習(xí)慣于雙代號網(wǎng)絡(luò)圖(PERT圖),希望能繪制出雙代號網(wǎng)絡(luò)圖并實現(xiàn)雙代號PERT圖與甘特圖相互轉(zhuǎn)換。
為了實現(xiàn)上述要求,必須對MS Project4軟件進行二次開發(fā)。也可能有人會問能否開發(fā)一個滿足上述要求的項目管理軟件?回答肯定是不可取!我們前面已經(jīng)提到過微軟項目管理軟件對任務(wù)和資源的處理能力等各方面都是處于領(lǐng)先水平,開發(fā)一個這樣高水平的項目管理軟件并非是一項簡單的工作,二次開發(fā)雖然有不少困難,但相對于重新開發(fā)一個來說還是件容易的工作。
三、MS Project4軟件二次開發(fā)的關(guān)鍵技術(shù)
MS Project4是微軟公司版權(quán)軟件,微軟公司對該軟件進行修改和擴充是件容易的事;對用戶二次開發(fā) ,并非是件容易之事。無源程序想知其軟件的內(nèi)部結(jié)構(gòu)和機制,想打開這樣的軟件二次開發(fā)的技術(shù)缺口的確有不少關(guān)鍵技術(shù)需要解決。通過我們對MS Project4軟件二次開發(fā)的實踐體會,主要有以下二個關(guān)鍵技術(shù):
1.第一個關(guān)鍵技術(shù)----了解該軟件信息格式(數(shù)據(jù)格式)
信息格式無非是軟件輸入、輸出和內(nèi)部處理信息是什么性質(zhì),是一般文件還是數(shù)據(jù)庫,文件是順序文件、隨機文件、二進制文件,數(shù)據(jù)庫是什么數(shù)據(jù)庫;當(dāng)然只知道信息的性質(zhì)對于軟件二次開發(fā)還是遠(yuǎn)遠(yuǎn)不夠的,還要了解信息內(nèi)部的具體表示形式,如關(guān)系數(shù)據(jù)庫記錄中字段數(shù)、字段名字、字段性質(zhì)、字段大小。如果對軟件的信息格式了解到這一步應(yīng)該說二次開發(fā)有了初步基礎(chǔ)。實際上做到這一步時常有不少困難,需要軟件人員化很多的時間去研究和摸索。這一點需要軟件開發(fā)人員具體情況具體處理,如MS Project4軟件沒有給出內(nèi)部處理文件(*.MPP)的格式,非微軟公司開發(fā)人員要研究Project4的*.MPP的具體格式就相當(dāng)困難,但Project4軟件給出了中間文件(*.MPT)的具體格式,并給出了*.MPP和*.MPT文件轉(zhuǎn)換的方法,這種情況下就沒有必要化很多力量去研究軟件內(nèi)部信息格式(*.MPP),只要認(rèn)真分析*.MPT文件每一項的意義,如何使用*.MPT文件即可。
2.第二個關(guān)鍵技術(shù)----通信接口(信息調(diào)用接口)
上面談到MS Project4已經(jīng)給出了*.MPT中間文件格式,就是為進行二次開發(fā)提供了手段。中科院計算機所已經(jīng)用這種方法開發(fā)了MS Project4的甘特圖轉(zhuǎn)換為DOS環(huán)境下的雙代號網(wǎng)絡(luò)圖。用這種方法也能實現(xiàn)我們對MS Project4上述二次開發(fā)的要求,但這種方法沒有充分發(fā)揮MS Project4與其他應(yīng)用程序交換數(shù)據(jù)的能力,如OLE技術(shù)。通過我們在工作中分析比較發(fā)現(xiàn),用中間文件(*.MPT)格式二次開發(fā)比用通信接口技術(shù)二次開發(fā)要復(fù)雜,另外這樣二次開發(fā)的軟件與原軟件的集成是松散的集成,有時不一定保證能在原軟件運行環(huán)境下集成好,為了更好有效的二次開發(fā)以及在原軟件運行環(huán)境下更好的集成,還必須研究原軟件的通信接口。
通信接口可以狹隘的理解為原軟件與其他應(yīng)用軟件打交道的外部接口調(diào)用方法。研究通信接口機制從而可掌握原軟件處理信息的方法,有了這個方法就可以開發(fā)出調(diào)用原軟件內(nèi)部信息的程序,就可再次開發(fā)出在原軟件運行環(huán)境下集成的軟件,就會達到對原軟件新功能的要求。幸運的是MS Project4提供了支持通信接口的技術(shù),微軟項目管理資料上一般都提到MS Project4與其他應(yīng)用程序能進行信息交換,不過這里都是指的MS Project4與Microsoft Word或Microsoft Excel之間進行文檔拷貝和粘貼;這種信息調(diào)用方法對二次開發(fā)太粗,不能直接使用。還要更深入細(xì)致的研究信息調(diào)用方法。主要是利用MS Project4支持OLE技術(shù),直接研究原軟件通信接口具體約定,這樣就可以對微軟項目管理軟件很好的進行二次開發(fā)。了解原軟件如何使用OLE技術(shù),特別是通信接口的約定,即具體的信息調(diào)用方法,做好這件工作并非是一件容易的事。這要取決于開發(fā)人員對WINDOWS、MS Project4、OLE技術(shù)、VB、VBA、Visual C++語言等熟悉的程度;如果你對上述知識較熟悉,就可以較快的打開利用通信接口進行二次開發(fā)的路子,如果上述知識不太熟悉,打開此路的困難就很多,要化較大的精力去研究。
四、微軟項目管理軟件的二次開發(fā)方法與成果
通過上面介紹,我們采用了通信接口的信息調(diào)用方法對MS Project4進行二次開發(fā),按期園滿的完成了用戶使用要求,應(yīng)該說對MS Project4軟件進行了成功的擴充。
1. 二次開發(fā)的方法
在WINDOWS環(huán)境下,用OLE技術(shù)、數(shù)據(jù)庫技術(shù)、WINDOWS API函數(shù)、VB和Visual C++語言進行編程,可很好的完成二次開發(fā)。如用VB語言編程為例,用語句建立OLE自動化,打開Project文件,按所要求的Project各項信息進行索取,進行顯示或打印。具體方法如何建立OLE自動化、如何打開Project文件、如何索取Project文件每項信息、怎樣讀寫數(shù)據(jù)庫等方法的具體程序細(xì)節(jié)就不在這里列舉;有興趣者可以參閱MS Project4的example和宏的例子,這里面都給出了VB或VBA語言編寫的源程序,詳細(xì)的介紹了上面提到的建立OLE自動化、打開Project文件等。不過在二次開發(fā)中用到的更細(xì)致的信息以及上述例子中查不到的,可用Project宏記錄功能來產(chǎn)生你所需要的宏,分析這些宏的語句結(jié)構(gòu)可滿足你的需要。還有一點說明的是借用宏的語句功能最好用于VB4語言以上的版本編程。
2. 二次開發(fā)成果
多級進度計劃甘特圖的跟蹤、報警和控制。下面給出一個飛機制造進度計劃的使用例子。
主管計劃單位及任務(wù)名稱
進度計劃名稱
WBS號
總公司主管整個飛機
零級進度計劃
WBSⅠ
各飛機生產(chǎn)廠主管部件
一級進度計劃
WBSⅡ
工廠下屬各車間主管組件
二級進度計劃
WBSⅢ
車間下屬各工段主管另件
三級進度計劃
WBSⅣ
上述表格列出了一個飛機生產(chǎn)的多級進度計劃控制的示意圖,像這樣的一個復(fù)雜項目,有幾萬人遠(yuǎn)隔千里之外不同地點從事同一個項目,很難用人工方法實現(xiàn)高層計劃真實的反映出下層計劃并切實進行控制。下級計劃向上級計劃匯總時往往附加人為的修改,使進度計劃帶有不真實性,上級領(lǐng)導(dǎo)不能及時發(fā)現(xiàn)問題,使進度計劃人為的因素得不到準(zhǔn)時控制,往往拖進度。為了避免進度計劃的不真實性,二次開發(fā)的MS Project4軟件可以做到從最基層三級進度計劃的完成情況逐級自動匯總到零級進度計劃,真實的反映了進度計劃執(zhí)行情況。由于二次開發(fā)軟件具有報警功能,各級進度計劃的任務(wù)按要求沒有完成,按任務(wù)的重要性事先確定三級等級系數(shù)(加權(quán)系數(shù))K,任務(wù)沒有完成百分?jǐn)?shù)C%乘以等級系數(shù)K,與事先確定好的三級報警門檻進行比較,給出三級報警,三級報警在進度計劃甘特圖上用三種不同顏色(黃、紫、紅)表示出來。并且給出附加的報警信息(拖進度的未完成任務(wù)工作量、拖進度多少天、按原進度完成話每天需增加多少工作量等)。同時給出采取控制措施的建議,加班趕工,分流任務(wù),修改計劃,各種控制方案按權(quán)限由不同級別領(lǐng)導(dǎo)來決定實施。這樣各級領(lǐng)導(dǎo)及時掌握各級進度計劃的執(zhí)行情況,及時控制進度計劃,消除了人工修改進度計劃 的真實完成情況,減少了人為的環(huán)節(jié),為盡量確保進度計劃按時完成提供了有力手段。上述表中給出WBS號是便于各級進度計劃之間進行聯(lián)系。
MS Project4二次開發(fā)的另一個重要成果,在WINDOWS環(huán)境下繪制進度計劃雙代號網(wǎng)絡(luò)圖(PERT圖),用戶在具有時間標(biāo)尺視圖上方便的繪制任務(wù)項、編輯任務(wù)項、連接任務(wù)項關(guān)系、拖動任務(wù)項、任務(wù)項合成任務(wù)組,時間標(biāo)尺用戶可以像MS Project4軟件那樣方便的選擇,雙代號網(wǎng)絡(luò)圖上可以用英文、中文或中英文混合注釋。更主要的是該軟件實現(xiàn)微軟項目管理軟件進度計劃甘特圖和進度計劃雙代號網(wǎng)絡(luò)圖(PERT)相互轉(zhuǎn)換,轉(zhuǎn)換后還可以在視圖上更改。
五、 微軟項目管理軟件二次開發(fā)的應(yīng)用前景
目前該軟件已用于民機生產(chǎn)的零級、一級進度計劃的跟蹤和報警,雙代號網(wǎng)絡(luò)圖繪制以及進度計劃雙代號網(wǎng)絡(luò)圖和甘特圖的相互轉(zhuǎn)換。明年將用于民機生產(chǎn)零級、一級、二級進度計劃跟蹤、報警和控制。同樣今后可在航空企業(yè)中推廣到軍機、發(fā)動機和輔機生產(chǎn)進度計劃的跟蹤、報警和控制。微軟項目管理軟件的二次開發(fā)進度計劃跟蹤、報警和控制可推廣到企事業(yè)單位多級進度計劃控制的大型項目管理中,尤其是在與國際合作的生產(chǎn)企業(yè)中,更顯示出二次開發(fā)軟件的優(yōu)越性。
微軟項目管理軟件的二次開發(fā)的雙代號網(wǎng)絡(luò)圖繪制以及與MS Project4甘特圖的轉(zhuǎn)換可隨同微軟項目管理軟件廣泛用于各行各業(yè)的計劃管理中,方便的從進度計劃甘特圖轉(zhuǎn)換成雙代號網(wǎng)絡(luò)圖,反之也一樣。雙代號網(wǎng)絡(luò)圖繪制也可獨立于MS Project4軟件,廣泛用于繪制雙代號網(wǎng)絡(luò)圖項目招標(biāo)和進度計劃控制中。由于使用簡單方便,功能比較齊全,特別是像MS Project4一樣具有可變時間標(biāo)尺;具有廣泛的應(yīng)用前景。
由于微軟項目管理軟件對進度計劃控制的同時也可對資源進行控制,它提供各種視圖和大量直觀報表,對項目管理功能強和許多優(yōu)點,再加上它在項目管理軟件中處于領(lǐng)先地位,我們認(rèn)為大型企業(yè)生產(chǎn)管理信息系統(tǒng)軟件可以在MS Project基礎(chǔ)進行二次開發(fā)。企業(yè)生產(chǎn)管理信息系統(tǒng)無非將產(chǎn)供銷人財物統(tǒng)一管理起來,管理的核心是控制進度計劃和資源,微軟項目管理軟件正是提供了這一基礎(chǔ)。管理信息系統(tǒng)的各級生產(chǎn)進度計劃、生產(chǎn)能力需求計劃、物資需求計劃、工裝需求計劃、成本核算管理可以在MS Project軟件基礎(chǔ)上二次開發(fā)實現(xiàn)。管理信息系統(tǒng)的工藝管理、銷售管理、人力需求管理、財物管理、質(zhì)量管理等可在數(shù)據(jù)庫基礎(chǔ)上用VB或Visual C++語言開發(fā)。這二部分的開發(fā)以數(shù)據(jù)庫為基礎(chǔ),通過自行開發(fā)通信接口可集成為一體。管理信息系統(tǒng)的集成一開始就從需求分析下手,將各子系統(tǒng)內(nèi)部通信接口確定好,開發(fā)中始終協(xié)調(diào)各個子系統(tǒng)的集成。這里主要是用MS Project能實現(xiàn)多級進度計劃的自動跟蹤、報警和控制,資源控制和生產(chǎn)能力計劃平衡,具有大量直觀性圖表;如果開發(fā)一個像MS Project這樣能對多級進度計劃自動跟蹤、報警和控制,資源控制和生產(chǎn)能力計劃平衡的軟件,工作量將比在MS Project軟件上二次開發(fā)大的多,可能還沒有 那么好用。另外借用MS Project軟件二次開發(fā)的管理信息系統(tǒng),在企業(yè)的管理中易于和國際接軌。
六.結(jié)束語
通過MS Project4軟件的二次開發(fā),從而對該軟件有了較全面的了介,深有體會感到微軟項目管理軟件的功能齊全、先進以及使用簡單方便;促使著我們正在著手以微軟項目管理軟件為基礎(chǔ)進行二次開發(fā)生產(chǎn)管理信息系統(tǒng)。相信微軟項目管理軟件在我國被愈來愈多的管理人員認(rèn)識和接受。希望微軟公司加強在中國項目管理軟件的技術(shù)服務(wù),使用戶更好的應(yīng)用MS Project軟件。由于水平所限,對微軟項目管理軟件接觸時間短,認(rèn)識也浮淺,文中可能有許多不妥或錯誤之處,敬請指正。
參考文獻:
1. Project 4.0 for Windows大全 Tim Pyron著
2. Microsoft Project4 for Windows 使用教程 Catapul 公司 著
3.微軟項目管理系統(tǒng)參考手冊 席相霖
【?發(fā)表評論?0條?】