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

ger8發表於2007-08-15
計算機管理資訊系統(簡稱MIS系統)的開發是一項複雜的系統工程。從70年代開始,人們逐漸認識到,為了保證MIS系統開發成功,必須採用工程化的系統開發方法,並研究出一些符合工程化標準的開發方法。這些方法旨在指導開發者進行工程化的系統開發,從而加快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專案開發中,專案管理人員經常處在兩面夾攻的地位。一面是使用人員,而另一面是軟體程式設計人員。當使用人員對系統提出問題,並要求改動時,除了最簡單的介面修改外,軟體程式設計人員往往總是找出各種理由(如影響進度、系統結構會打亂、效能會受影響等)予以否定。而這正是引起開發方與使用者方矛盾的最經常的原因。
  經常可以聽到軟體程式設計人員抱怨:
  “使用者的需求老是變,我的開發進度又延誤了”
  “無法增加這個功能了,因為需求分析報告中沒有”
  “這個錯誤我們過幾天統一作修改。”
  作為專案管理人員,既要滿足使用者方的需求變化,又要充分調動開發人員的積極性。由於系統分析不夠準確,使用者方業務需求的改變等諸多因素,均會導致要求開發方修改程式。作為專案管理人員應及早提醒開發方程式修改的必然性,在實際運作過程中使用者方管理人員應儘早介入開發工作,及時發現問題,解決問題。在系統試執行階段,將使用者方不斷提出的需求改動加以歸納整理,集中問題與開發方一起討論解決方案。這樣既滿足了使用者方對系統改動的需求,又不會不規則地時常打斷開發人員的正常開發工作,使開發人員處於不斷的修改狀態而失去耐心。
[@more@]

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

相關文章