計算機管理信息系統(簡稱ERP系統)的開發是一項復雜的系統工程。從70年代開始,人們逐漸認識到,為了保證ERP系統開發成功,必須采用工程化的系統開發方法,并研究出一些符合工程化標準的開發方法。這些方法旨在指導開發者進行工程化的系統開發,從而加快ERP系統開發的速度、保證質量、以及降低開發成本。工程化的系統開發方法確實在開發實踐中取得了一定的效果。
那么,是不是采用了工程化的系統開發方法便一定能保證ERP系統開發的成功呢?答案是否定的。有許多失敗的ERP系統的例子,其開發也是采用了工程化的方法,或聲稱采用了這種方法。但結果在投入了大量資金后,系統卻不能達到預期的目標、滿足用戶的需求,以致用戶方懷疑是否應進行該項目的開發,或者開發所選擇的硬件、軟件以及開發工具是否得當。究竟問題出在哪里呢?筆者通過對一些失敗的ERP系統的分析,發現問題并沒有出在開發方法本身,以及硬軟件的選擇上,而是出在了開發方法的實施過程中,也就是說主要出在開發項目的管理上。
任何一種開發方法最終是要由人來實施的,人們在開發工作實施過程中不可避免地要遇到許多項目管理方面的問題,如何正確對待、解決這些問題,直接關系到ERP系統開發的成敗。目前計算機界雖有許多關于ERP系統開發中項目管理方面的問題的討論,但大多局限于針對理想開發環境中的理想開發模型的討論。而實際的開發環境和開發模型卻各不相同,它受到各種客觀因素的影響,忽略這些因素,或者回避、不解決存在的問題,必將導致開發工作的不完善、甚至于失敗。本文就是要通過討論如何處理實際ERP系統開發中一些重要因素之間的關系,分析項目管理中存在的矛盾,來揭示其中存在的問題并探討解決的方案。
什么是ERP系統開發的項目管理
ERP系統開發的項目管理是根據管理科學的理論,聯系ERP系統開發的實際,保證工程化系統開發方法順利實施的管理實踐。它包括ERP系統開發中的項目評估及可行性分析、人員管理、進度管理及成本控制等方面。
項目開發中的角色及其職責
一個ERP系統的開發需要用戶方與開發方的共同協作。在一個ERP系統開發中,開發方人員和用戶方人員各自扮演著不同的角色。主要角色有:
用戶方的項目管理人員:他是開發項目的組織者,負有開發項目的計劃、系統的階段驗收及對系統整體進度的監控、經費的使用、與開發方的項目管理人員工作的協調、用戶方的使用人員的組織與培訓等職責。
用戶方的業務人員:ERP系統的需求的提出者,也是ERP系統的最終用戶。他們是對應用系統開發成功與否的最終評判者。
用戶方的決策層:ERP系統開發的最終決策機構,決策層要對ERP系統開發的項目的上馬、經費的預算以及系統所要達到的總目標等作出決策。其決策直接關系到ERP系統的開發成功與順利實施。
開發方的項目管理人員:負責項目的計劃、開發人員的組織與調度、開發進度的檢查、以及與用戶方項目管理人員工作的協調。
開發方的軟件編程人員:根據用戶方的需求、按照項目的計劃及進度進行系統開發。
項目管理中各種問題及各種關系的處理
1、用戶方與開發方的關系
用戶方與開發方是對立的統一體,雙方均希望將開發項目做好。但用戶方可能對計算機系統工程,如工程組織,缺乏全面的了解;而開發方對用戶方的需求、細節了解不充分等因素,使得用戶方與開發方對工程的理解從一開始就存在著差異。而這種認識上的差異與理解的不同往往在開發初期并沒有表現出來,當系統開發結束時,雙方才發現這種差異使開發出的系統與實際需求偏差甚遠。因此,ERP系統開發項目管理的重要目標便是建立一個便于開發方與用戶方之間進行交流的環境。在系統需求分析階段,開發方與用戶方的深入的交流是項目獲得成功的關鍵。但這種交流卻經常由于各種雙方的誤解而難以溝通。
在需求分析階段,開發方的分析人員總是先把精力集中在整個系統的總的需求上,而不會對具體細節作過多的考查。當用戶方提出一些細節要求時,開發方往往說:“這些問題留待后面討論”,而糟糕的是以后卻可能永遠不會再談及這個問題。當用戶方認為已經向開發方提出這些需求時,開發方卻根本未予考慮。因此,開發初期,用戶方的項目管理人員應該把這些“留待后面討論”的需求單獨記錄整理,在開發方做完系統的整體需求分析后,項目管理人員應及時提出對系統進行進一步的、更深入的、細致的、具體的需求分析,以解決那些開發方要“留待后面討論”的問題。
在某些需求尚未確定時,用戶方項目管理人員往往會說:“這部分需求我們還要考慮,不過你們可以先按現在的模式做。”遺憾的是,開發方經常就會把現在的工作模式作為將來的、確定的需求去設計開發系統,而把用戶方在此需求上的未確定因素拋在腦后。當后來用戶方要求其改變時,開發方便陷入了窘境。因此,用戶方管理人員應盡量將需求陳述清楚,對不能確定的因素,應提出幾種可能的實施方案供開發方參考,以保證開發方系統設計時,將不確定因素設計成靈活可變的功能。
開發方說:“用戶方已經認可了需求分析報告,這表明我們已經徹底了解了用戶方的要求。”
用戶方說:“盡管我不太明白需求分析報告中的一些技術術語,但他們能寫出這個報告,一定是對我們的需求了解得很深入了。”
其實,需求分析報告是對系統需求的書面表達形式。由于需求分析報告是采用軟件設計的術語編寫的,因此常常令計算機背景知識較少的用戶方難以理解,也就很難發現需求報告中與實際需求不符之處,更難提出建設性的意見。特別是那些編寫得較差的需求分析報告,用戶方更是不知所云。
因此,用戶方的項目管理人員一定要要求開發方對需求分析報告進行進一步更詳細的解釋,以便用戶方準確地理解需求分析報告的內容,能及早地發現需求與實際的偏差。這也是對需求分析工作的總結與確認。
用戶方說:“計算機應該能實現這個功能,為什么會作不到?”用戶方往往容易過高地估計計算機的軟件開發工具的能力,總認為它一定能實現任何所需功能,期望值過高,所以經常會對所設計的軟件大失所望。其實任何技術均有其一定的局限性,計算機系統也不例外,系統開發的最終結果只能達到有限的目標。因此,雙方應詳細制定系統最終實現的目標,切不可用一些簡單的術語來籠統概括需求,例如:“實現辦公自動化”、“建立現代化的ERP系統”這種抽象的術語只能將用戶對ERP系統的理解引入誤區。
總之,用戶方與開發方的關系是項目管理所要處理的最重要的關系之一,增加溝通和減少誤解是處理好這個關系的關鍵。所以項目管理人員要有效地安排開發方軟件人員與需求方使用人員的交流,保證有暢通的交流渠道。在交流中用戶方要盡量避免含糊不清的需求,而開發方要杜絕敷衍了事、得過且過的行為。
2、用戶方項目管理人員與使用人員(業務人員)及決策層的關系
用戶方項目管理人員與系統使用人員的關系是十分微妙的。一方面,ERP系統使使用人員減輕工作強度、提高工作效率;而另一方面,ERP系統改變了現行的工作管理模式,使使用人員失去了一定的靈活性和隨意性。但是ERP系統的成功與否有賴于使用人員的檢驗。再好的系統,如果使用人員不愿意用,也不能說獲得了成功。特別是在ERP系統的試運行階段,使用人員對ERP系統的使用實際上是對系統的深入測試,他們將發現許多在軟件測試時疏漏的程序錯誤,從而有助于幫助開發方進一步完善軟件功能,提高軟件的實用性、穩定性及可靠性。因此,如何鼓勵使用人員使用ERP系統,幫助他們克服對新的工作模式的為難情緒,也成為項目管理的任務之一。
用戶方的決策人士是用戶方項目管理人員領導,由于行政手段是推行ERP系統使用的有力手段之一,他對項目的支持是使ERP系統開發成功關鍵與順利實施的保證。因此用戶方項目管理人員應隨時與決策層溝通,取得其鼎力支持,這也是保證軟件開發、使用成功的一個致關重要的因素。
任何一種新的工作方式,均必然有其適應及完善過程,用戶方的項目管理人員、決策層及使用人員必須充分認識到這一點。當出現問題時,用戶方項目管理人員應迅速分析問題,正確判斷哪些問題屬于不適應新的工作模式引起的,哪些問題屬于操作不當引起的,哪些問題屬于ERP系統本身不完善引起的。對于那些由于不適應新的工作模式引起的問題,項目管理人員應引導使用人員迅速適應新的工作模式,必要時也要說服用戶方的決策層采用行政手段推動實施;對于那些由于操作方法不當引起的問題,項目管理人員應培訓使用人員正確操作系統;而對于那些由于ERP系統本身不完善引起的問題,項目管理人員應迅速與開發方協調,盡快排除系統中的錯誤。
在系統試運行初期,使用人員常抱怨說:“這個界面不方便,不好用”
在軟件界面設計方面,用戶方管理人員應注意提醒開發方注重其實用性、簡便性、易操作性,要注意現行工作模式的特點,照顧使用人員的工作習慣,以便降低系統的使用難度。這將有利于新系統的順利實施,有助于工作方式的順利過渡。
綜上所述,項目管理人員時刻注意取得決策層的理解與支持;要幫助使用人員盡快地適應新的工作方式,幫助他們解決使用中遇到的問題;并使系統在使用中不斷地得以完善。
3、項目管理人員與軟件編程人員的關系
項目管理人員與軟件編程人員的關系處理得如何將直接影響軟件編程人員的積極性。在ERP項目開發中,項目管理人員經常處在兩面夾攻的地位。一面是使用人員,而另一面是軟件編程人員。當使用人員對系統提出問題,并要求改動時,除了最簡單的界面修改外,軟件編程人員往往總是找出各種理由(如影響進度、系統結構會打亂、性能會受影響等)予以否定。而這正是引起開發方與用戶方矛盾的最經常的原因。
經常可以聽到軟件編程人員抱怨:
“用戶的需求老是變,我的開發進度又延誤了”
“無法增加這個功能了,因為需求分析報告中沒有”
“這個錯誤我們過幾天統一作修改。”
作為項目管理人員,既要滿足用戶方的需求變化,又要充分調動開發人員的積極性。由于系統分析不夠準確,用戶方業務需求的改變等諸多因素,均會導致要求開發方修改程序。作為項目管理人員應及早提醒開發方程序修改的必然性,在實際運作過程中用戶方管理人員應盡早介入開發工作,及時發現問題,解決問題。在系統試運行階段,將用戶方不斷提出的需求改動加以歸納整理,集中問題與開發方一起討論解決方案。這樣既滿足了用戶方對系統改動的需求,又不會不規則地時常打斷開發人員的正常開發工作,使開發人員處于不斷的修改狀態而失去耐心。
4、硬件與軟件的關系
ERP系統的硬件與軟件都是組成ERP系統的重要部分。但目前在ERP系統的建設中,卻經常出現重硬輕軟的情況。
總能聽到用戶方:“設備要最好的、最先進的、一步到位”
“軟件開發費怎么會這么貴”
據統計,目前國內用戶在硬件(包括網絡)方面的投資占總投資額的78%,而軟件投資只占22%。確實,先進的設備、優良的技術性能有助于提高ERP系統的性能。而ERP系統的建設是否應追求高、新、尖、一步到位,卻是值得商榷的。在計算機技術飛速發展的今天,計算機廠商不斷地推出新產品,其性能價格比均極大地優于舊產品。就拿硬盤技術來舉例:1994年1個GB的硬盤價格與1997年9個GB的硬盤價格相當,可見一步到位的想法是不切合實際的。同時,系統性能過多地超出應用需求實際上是一種浪費。好比殺雞用宰牛刀。因此,根據業務需求“統一規劃、分步實施”是項目管理人員應注意掌握的原則。在規劃時認真考慮業務發展、技術的進步,在實施方面,時刻要將硬件配備的重點放在設備穩定、性能可靠及可擴充可升級方面。
如果說在硬件設備方面存在不惜投入、追求一步到位的現象,那么在軟件開發方面,用戶方卻往往太苛刻了一點。殊不知,一個好的、高質量的ERP系統,是要靠軟件編程人員來開發的。這里的高質量是指軟件的可用性、使用的方便性以及可維護性、可升級性諸方面,這是軟件得以推廣的必要條件。如果投入資金過少,必造成開發人員不能全身心地投入到某一個項目的開發工作中,當開發方認為他們的投入已與用戶方的付出相當時,便不愿意繼續投入精力,從而造成開發工作的虎頭蛇尾。ERP系統達不到預期效果,再好的硬件也難能發揮其作用。當然,由于用戶方對工程組織、工程量計算、技術含量分析等諸方面開發因素估價困難,很難正確計算出合理的軟件開發價格。用戶方項目管理人員可以聘請有關專家、或參考同行業國內外開發情況加以核定。
在開發費的控制方面,用戶方應合理運用價格這個有力武器,付款方式及付款條件要嚴格與開發進度、軟件質量以及軟件維護服務質量掛鉤,使其成為督促及約束開發方的手段。
5、性能與靈活的關系
性能與靈活是系統設計中的一對矛盾,似乎是系統設計人員而不是項目管理人員應該考慮的問題。但實際上,由于國內的許多ERP系統的失敗都與這個矛盾處理得不當有關,因此,我們認為應該在項目管理中充分考慮性能與靈活的關系,隨時提醒系統設計人員處理好這個矛盾。性能是系統可用性的重要因素,很難想象一個響應速度很慢的系統能得到最終用戶的認可。而靈活性是系統適應變化能力的重要因素,一個無法適應工作模式變化的系統也是難以推行的。然而,根據傳統的ERP系統理論,增加靈活性將增加系統復雜性,降低系統性能。那么,應該如何對待這對矛盾呢?
在目前的情況下,相對系統性能來說,靈活性是矛盾的主要方面,其原因有如下兩點:
(1)由于目前大部分單位的管理模式都處在探索階段,可能引起變動的因素很多,因此根據現行的管理模式設計出的ERP系統將面臨使用單位管理模式的變化的考驗。所以現在的ERP系統在設計時要充分考慮這些不確定因素,靈活才能適應這些變化。
(2)由于計算機技術的發展,計算機硬件速度飛速提高,系統性能的極大地提高,從而增加靈活性所引起的系統性能的下降并不明顯。
當聽到軟件編程人員說:“為了提高運行速度,我們假設某個參數是不變的”、“如果想加一種查詢方式,可能要改動表結構”時,項目管理人員應引起足夠的重視。提醒軟件編程人員要充分考慮到用戶方需求的靈活性,在軟件設計中,要盡量避免用犧牲系統靈活性來換取系統性能的提高。而是應在程序設計方面通過優化程序結構來提高系統性能。
ERP系統開發方面已有比較成熟的工程化的方法。但是工程化開發方法仍然不能保證其一定開發成功,還需要有完善的項目管理方法來保證。每個項目的開發環境及實施環境各不相同。因此,在項目管理方面所面臨的問題均不盡相同。但是在項目管理中所要處理的關系卻基本相同。如何處理好這些關系是項目管理人員的重要任務。本文對項目管理中所要處理的關系及經常遇到的問題進行了討論,希望能對項目管理人員及系統開發人員有所幫助。筆者相信隨著項目管理方法的不斷完善,必將為ERP開發的成功提供進一步的保證。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:ERP系統開發中的項目管理
本文網址:http://www.guhuozai8.cn/html/consultation/1082025773.html