MIS系統開發中的專案管理(轉)

urinator發表於2007-08-14
MIS系統開發中的專案管理
是不是採用了工程化的系統開發方法便一定能保證MIS系統開發的成功呢?答案是否定的。有許多失敗的MIS系統的例子,其開發也是採用了工程化的方法,或聲稱採用了這種方法。但結果在投入了大量資金後,系統卻不能達到預期的目標、滿足使用者的需求,以致使用者方懷疑是否應進行該專案的開發,或者開發所選擇的硬體、軟體以及開發工具是否得當。究竟問題出在哪裡呢?筆者通過對一些失敗的MIS系統的分析,發現問題並沒有出在開發方法本身,以及硬軟體的選擇上,而是出在了開發方法的實施過程中,也就是說主要出在開發專案的管理上。

任何一種開發方法最終是要由人來實施的,人們在開發工作實施過程中不可避免地要遇到許多專案管理方面的問題,如何正確對待、解決這些問題,直接關係到MIS系統開發的成敗。目前計算機界雖有許多關於MIS系統開發中專案管理方面的問題的討論,但大多侷限於針對理想開發環境中的理想開發模型的討論。而實際的開發環境和開發模型卻各不相同,它受到各種客觀因素的影響,忽略這些因素,或者回避、不解決存在的問題,必將導致開發工作的不完善、甚至於失敗。本文就是要通過討論如何處理實際MIS系統開發中一些重要因素之間的關係,分析專案管理中存在的矛盾,來揭示其中存在的問題並探討解決的方案。

什麼是MIS系統開發的專案管理

MIS系統開發的專案管理是根據管理科學的理論,聯絡MIS系統開發的實際,保證工程化系統開發方法順利實施的管理實踐。它包括MIS系統開發中的專案評估及可行性分析、人員管理、進度管理及成本控制等方面。

專案開發中的角色及其職責

一個MIS系統的開發需要使用者方與開發方的共同協作。在一個MIS系統開發中,開發方人員和使用者方人員各自扮演著不同的角色。主要角色有:
使用者方的專案管理人員:他是開發專案的組織者,負有開發專案的計劃、系統的階段驗收及對系統整體進度的監控、經費的使用、與開發方的專案管理人員工作的協調、使用者方的使用人員的組織與培訓等職責。

使用者方的業務人員:MIS系統的需求的提出者,也是MIS系統的終端使用者。他們是對應用系統開發成功與否的最終評判者。

使用者方的決策層:MIS系統開發的最終決策機構,決策層要對MIS系統開發的專案的上馬、經費的預算以及系統所要達到的總目標等作出決策。其決策直接關係到MIS系統的開發成功與順利實施。

開發方的專案管理人員:負責專案的計劃、開發人員的組織與排程、開發進度的檢查、以及與使用者方專案管理人員工作的協調。

開發方的軟體程式設計人員:根據使用者方的需求、按照專案的計劃及進度進行系統開發。

專案管理中各種問題及各種關係的處理

1、使用者方與開發方的關係
使用者方與開發方是對立的統一體,雙方均希望將開發專案做好。但使用者方可能對計算機系統工程,如工程組織,缺乏全面的瞭解;而開發方對使用者方的需求、細節瞭解不充分等因素,使得使用者方與開發方對工程的理解從一開始就存在著差異。而這種認識上的差異與理解的不同往往在開發初期並沒有表現出來,當系統開發結束時,雙方才發現這種差異使開發出的系統與實際需求偏差甚遠。因此,MIS系統開發專案管理的重要目標便是建立一個便於開發方與使用者方之間進行交流的環境。在系統需求分析階段,開發方與使用者方的深入的交流是專案獲得成功的關鍵。但這種交流卻經常由於各種雙方的誤解而難以溝通。

在需求分析階段,開發方的分析人員總是先把精力集中在整個系統的總的需求上,而不會對具體細節作過多的考查。當使用者方提出一些細節要求時,開發方往往說:“這些問題留待後面討論”,而糟糕的是以後卻可能永遠不會再談及這個問題。當使用者方認為已經向開發方提出這些需求時,開發方卻根本未予考慮。因此,開發初期,使用者方的專案管理人員應該把這些“留待後面討論”的需求單獨記錄整理,在開發方做完系統的整體需求分析後,專案管理人員應及時提出對系統進行進一步的、更深入的、細緻的、具體的需求分析,以解決那些開發方要“留待後面討論”的問題。

在某些需求尚未確定時,使用者方專案管理人員往往會說:“這部分需求我們還要考慮,不過你們可以先按現在的模式做。”遺憾的是,開發方經常就會把現在的工作模式作為將來的、確定的需求去設計開發系統,而把使用者方在此需求上的未確定因素拋在腦後。當後來使用者方要求其改變時,開發方便陷入了窘境。因此,使用者方管理人員應儘量將需求陳述清楚,對不能確定的因素,應提出幾種可能的實施方案供開發方參考,以保證開發方系統設計時,將不確定因素設計成靈活可變的功能。

開發方說:“使用者方已經認可了需求分析報告,這表明我們已經徹底瞭解了使用者方的要求。”

使用者方說:“儘管我不太明白需求分析報告中的一些技術術語,但他們能寫出這個報告,一定是對我們的需求瞭解得很深入了。”

其實,需求分析報告是對系統需求的書面表達形式。由於需求分析報告是採用軟體設計的術語編寫的,因此常常令計算機背景知識較少的使用者方難以理解,也就很難發現需求報告中與實際需求不符之處,更難提出建設性的意見。特別是那些編寫得較差的需求分析報告,使用者方更是不知所云。

因此,使用者方的專案管理人員一定要要求開發方對需求分析報告進行進一步更詳細的解釋,以便使用者方準確地理解需求分析報告的內容,能及早地發現需求與實際的偏差。這也是對需求分析工作的總結與確認。

使用者方說:“計算機應該能實現這個功能,為什麼會作不到?”使用者方往往容易過高地估計計算機的軟體開發工具的能力,總認為它一定能實現任何所需功能,期望值過高,所以經常會對所設計的軟體大失所望。其實任何技術均有其一定的侷限性,計算機系統也不例外,系統開發的最終結果只能達到有限的目標。因此,雙方應詳細制定系統最終實現的目標,切不可用一些簡單的術語來籠統概括需求,例如:“實現辦公自動化”、“建立現代化的MIS系統”這種抽象的術語只能將使用者對MIS系統的理解引入誤區。

總之,使用者方與開發方的關係是專案管理所要處理的最重要的關係之一,增加溝通和減少誤解是處理好這個關係的關鍵。所以專案管理人員要有效地安排開發方軟體人員與需求方使用人員的交流,保證有暢通的交流渠道。在交流中使用者方要儘量避免含糊不清的需求,而開發方要杜絕敷衍了事、得過且過的行為。

2、使用者方專案管理人員與使用人員(業務人員)及決策層的關係
使用者方專案管理人員與系統使用人員的關係是十分微妙的。一方面,MIS系統使使用人員減輕工作強度、提高工作效率;而另一方面,MIS系統改變了現行的工作管理模式,使使用人員失去了一定的靈活性和隨意性。但是MIS系統的成功與否有賴於使用人員的檢驗。再好的系統,如果使用人員不願意用,也不能說獲得了成功。特別是在MIS系統的試執行階段,使用人員對MIS系統的使用實際上是對系統的深入測試,他們將發現許多在軟體測試時疏漏的程式錯誤,從而有助於幫助開發方進一步完善軟體功能,提高軟體的實用性、穩定性及可靠性。因此,如何鼓勵使用人員使用MIS系統,幫助他們克服對新的工作模式的為難情緒,也成為專案管理的任務之一。

使用者方的決策人士是使用者方專案管理人員領導,由於行政手段是推行MIS系統使用的有力手段之一,他對專案的支援是使MIS系統開發成功關鍵與順利實施的保證。因此使用者方專案管理人員應隨時與決策層溝通,取得其鼎力支援,這也是保證軟體開發、使用成功的一個致關重要的因素。

任何一種新的工作方式,均必然有其適應及完善過程,使用者方的專案管理人員、決策層及使用人員必須充分認識到這一點。當出現問題時,使用者方專案管理人員應迅速分析問題,正確判斷哪些問題屬於不適應新的工作模式引起的,哪些問題屬於操作不當引起的,哪些問題屬於MIS系統本身不完善引起的。對於那些由於不適應新的工作模式引起的問題,專案管理人員應引導使用人員迅速適應新的工作模式,必要時也要說服使用者方的決策層採用行政手段推動實施;對於那些由於操作方法不當引起的問題,專案管理人員應培訓使用人員正確作業系統;而對於那些由於MIS系統本身不完善引起的問題,專案管理人員應迅速與開發方協調,儘快排除系統中的錯誤。

在系統試執行初期,使用人員常抱怨說:“這個介面不方便,不好用”

在軟體介面設計方面,使用者方管理人員應注意提醒開發方注重其實用性、簡便性、易操作性,要注意現行工作模式的特點,照顧使用人員的工作習慣,以便降低系統的使用難度。這將有利於新系統的順利實施,有助於工作方式的順利過渡。

綜上所述,專案管理人員時刻注意取得決策層的理解與支援;要幫助使用人員儘快地適應新的工作方式,幫助他們解決使用中遇到的問題;並使系統在使用中不斷地得以完善。

3、專案管理人員與軟體程式設計人員的關係
專案管理人員與軟體程式設計人員的關係處理得如何將直接影響軟體程式設計人員的積極性。在MIS專案開發中,專案管理人員經常處在兩面夾攻的地位。一面是使用人員,而另一面是軟體程式設計人員。當使用人員對系統提出問題,並要求改動時,除了最簡單的介面修改外,軟體程式設計人員往往總是找出各種理由(如影響進度、系統結構會打亂、效能會受影響等)予以否定。而這正是引起開發方與使用者方矛盾的最經常的原因。

經常可以聽到軟體程式設計人員抱怨:

“使用者的需求老是變,我的開發進度又延誤了”

“無法增加這個功能了,因為需求分析報告中沒有”

“這個錯誤我們過幾天統一作修改。”

作為專案管理人員,既要滿足使用者方的需求變化,又要充分調動開發人員的積極性。由於系統分析不夠準確,使用者方業務需求的改變等諸多因素,均會導致要求開發方修改程式。作為專案管理人員應及早提醒開發方程式修改的必然性,在實際運作過程中使用者方管理人員應儘早介入開發工作,及時發現問題,解決問題。在系統試執行階段,將使用者方不斷提出的需求改動加以歸納整理,集中問題與開發方一起討論解決方案。這樣既滿足了使用者方對系統改動的需求,又不會不規則地時常打斷開發人員的正常開發工作,使開發人員處於不斷的修改狀態而失去耐心。

4、硬體與軟體的關係
MIS系統的硬體與軟體都是組成MIS系統的重要部分。但目前在MIS系統的建設中,卻經常出現重硬輕軟的情況。

總能聽到使用者方:“裝置要最好的、最先進的、一步到位”

“軟體開發費怎麼會這麼貴”

據統計,目前國內使用者在硬體(包括網路)方面的投資佔總投資額的78%,而軟體投資只佔22%。確實,先進的裝置、優良的技術效能有助於提高MIS系統的效能。而MIS系統的建設是否應追求高、新、尖、一步到位,卻是值得商榷的。在計算機技術飛速發展的今天,計算機廠商不斷地推出新產品,其效能價格比均極大地優於舊產品。就拿硬碟技術來舉例:1994年1個GB的硬碟價格與1997年9個GB的硬碟價格相當,可見一步到位的想法是不切合實際的。同時,系統效能過多地超出應用需求實際上是一種浪費。好比殺雞用宰牛刀。因此,根據業務需求“統一規劃、分步實施”是專案管理人員應注意掌握的原則。在規劃時認真考慮業務發展、技術的進步,在實施方面,時刻要將硬體配備的重點放在裝置穩定、效能可靠及可擴充可升級方面。

如果說在硬體裝置方面存在不惜投入、追求一步到位的現象,那麼在軟體開發方面,使用者方卻往往太苛刻了一點。殊不知,一個好的、高質量的MIS系統,是要靠軟體程式設計人員來開發的。這裡的高質量是指軟體的可用性、使用的方便性以及可維護性、可升級性諸方面,這是軟體得以推廣的必要條件。如果投入資金過少,必造成開發人員不能全身心地投入到某一個專案的開發工作中,當開發方認為他們的投入已與使用者方的付出相當時,便不願意繼續投入精力,從而造成開發工作的虎頭蛇尾。MIS系統達不到預期效果,再好的硬體也難能發揮其作用。當然,由於使用者方對工程組織、工程量計算、技術含量分析等諸方面開發因素估價困難,很難正確計算出合理的軟體開發價格。使用者方專案管理人員可以聘請有關專家、或參考同行業國內外開發情況加以核定。

在開發費的控制方面,使用者方應合理運用價格這個有力武器,付款方式及付款條件要嚴格與開發進度、軟體質量以及軟體維護服務質量掛鉤,使其成為督促及約束開發方的手段。

5、效能與靈活的關係
效能與靈活是系統設計中的一對矛盾,似乎是系統設計人員而不是專案管理人員應該考慮的問題。但實際上,由於國內的許多MIS系統的失敗都與這個矛盾處理得不當有關,因此,我們認為應該在專案管理中充分考慮效能與靈活的關係,隨時提醒系統設計人員處理好這個矛盾。效能是系統可用性的重要因素,很難想象一個響應速度很慢的系統能得到終端使用者的認可。而靈活性是系統適應變化能力的重要因素,一個無法適應工作模式變化的系統也是難以推行的。然而,根據傳統的MIS系統理論,增加靈活性將增加系統複雜性,降低系統效能。那麼,應該如何對待這對矛盾呢?

在目前的情況下,相對系統效能來說,靈活性是矛盾的主要方面,其原因有如下兩點:

(1)由於目前大部分單位的管理模式都處在探索階段,可能引起變動的因素很多,因此根據現行的管理模式設計出的MIS系統將面臨使用單位管理模式的變化的考驗。所以現在的MIS系統在設計時要充分考慮這些不確定因素,靈活才能適應這些變化。

(2)由於計算機技術的發展,計算機硬體速度飛速提高,系統效能的極大地提高,從而增加靈活性所引起的系統效能的下降並不明顯。

當聽到軟體程式設計人員說:“為了提高執行速度,我們假設某個引數是不變的”、“如果想加一種查詢方式,可能要改動表結構”時,專案管理人員應引起足夠的重視。提醒軟體程式設計人員要充分考慮到使用者方需求的靈活性,在軟體設計中,要儘量避免用犧牲系統靈活性來換取系統效能的提高。而是應在程式設計方面通過優化程式結構來提高系統效能。

MIS系統開發方面已有比較成熟的工程化的方法。但是工程化開發方法仍然不能保證其一定開發成功,還需要有完善的專案管理方法來保證。每個專案的開發環境及實施環境各不相同。因此,在專案管理方面所面臨的問題均不盡相同。但是在專案管理中所要處理的關係卻基本相同。如何處理好這些關係是專案管理人員的重要任務。本文對專案管理中所要處理的關係及經常遇到的問題進行了討論,希望能對專案管理人員及系統開發人員有所幫助。筆者相信隨著專案管理方法的不斷完善,必將為MIS開發的成功提供進一步的保證。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7942439/viewspace-21151/,如需轉載,請註明出處,否則將追究法律責任。

相關文章