管理軟件開發:從用戶需求分析開始

ZDNet管理軟件頻道時間:2010-01-27作者:來源: | E-works

  自打公司開張以來,一邊給用戶開發實施,一邊醉心于設計自己心目中的理想ERP系統;而以前在企業中從事ERP實施工作,也經常帶領團隊從事管理軟件項目的開發,多少積累了一些關于管理軟件開發設計的經驗。現在越來越覺的,整個管理軟件開發的過程中,需求分析實在是最重要的一步。

  從事管理軟件設計,一般都是從用戶需求分析開始。從事軟件工作的,大概誰都知道需求分析的重要性,可能大部分人都吃過需求分析不充分的虧。兵法云,“謀定而后動”。對一個項目而言,需求分析應該是“謀”的一部分,謀不好就急吼吼地從事后面的工作,實在是一件非常危險的事情。

  讓需求分析者最興奮的事是,遇到一個既精通業務又對自己的業務信息化有許多想法的人,甚至他是一個軟件愛好者。有時遇到牛人,他提出的需求,你記錄下后稍作改動就直接可以當做需求分析規格說明書用了。當然,這種事情千年難遇,可遇而不可求啊。而且,在這種情況下,其實真正搞需求分析的應該是他而不是你。

  讓需求分析者覺得最倒霉的事是,遇到一個信奉“沉默是金”的用戶。或者你問他什么他一言不發,或者他以業務煩忙為由今天推明天,明天推后天。如果是開需求會,他更是像一座沉默的大山,找一個最角落的位置坐下來,只帶耳朵不帶嘴巴。真讓人難受啊,真所謂“不怕你罵,不怕你打,就怕你不理我。”

  經常遇到一些不愛思考的用戶,他或者是個老好人,什么都說好——我管你,等你弄出來再說;他或者是個刺頭,什么都說不好,這樣到時出了問題他就用不著承擔任何責任——反正當初我就說不行了。對于一個從事需求分析的工作者來說,其實這兩種人沒什么區別,都是那種不會提出真正需求的人。

  我聽得最多的好像是這句話:你現在別問我,我也說不清楚,你得讓我操作軟件我才知道呢。天,我不是正在設計軟件嗎?哪有軟件給你操作。你不說說你的基本業務,我甚至連原型也搞不出來。這個時候,我往往告訴他,是的,軟件會有的,到時會給你試用,但現在還不到那一步,這就像下棋一樣,你得多算出幾步,預測預測事情的下一步。然后盡力引導他們設想他們可能的新的工作流程,為原型界面的設計打下基礎。一句話,有時是需要逼著用戶思考的。

  另外,永遠不要輕視原型的重要性。發現許多開發者根本不在乎原型的設計,跟用戶交流了三言兩語后就悶頭從事系統設計工作甚至直接寫代碼。這樣做實在蘊含著極大的風險。軟件工程學認為,問題發現得越早,解決起來所花費的代價就越少。如果能充分調動用戶的積極性,他們發現問題的可能性較IT人要大得多,而且他們發現的問題也要嚴重得多。原型是個能調動用戶積極思考的很好的工具,也是跟用戶確認需求的手段。

  花代價搞原型開發,只為了給用戶演示演示,演示完后完全拋棄,這對程序員來說實在是個非常殘酷的事情,好像自己做了許多無用功一樣。

  但應該想到,在演示的過程中,用戶提出的好多意見,如果在軟件開發出來后才發現,可能會讓你花費比原型開發多得多的代價。有時甚至用戶的一個重要意見會讓你重新考慮系統的整體架構也未可知。

什么老师平特肖