摘要:一個大型的複雜的企業信息化系統,前期的需求分析在整個項目生命週期中佔舉足輕重的位置。這一點在IT界已經形成共識。不過,如何做好需求分析工作,是一個永久的話題。本文以筆者近些年對需求分析工作的理解與把握,形成一點文字與大家分項。
1.現代需求分析要以對象爲基礎
在自己進行需求分析之前,頭腦中要對一個概念要有清晰的認識----對象。世界萬物皆對象,一個人、組織、事物等等,從繁雜的事物中找出關鍵對象,以關鍵對象在一個企業中的生命週期爲主線,沿着這條主線蒐集資料,沿着這條主線查找其他對象,事情自然就理順了。
例如,在HIS系統中,病人肯定是一個關鍵對象,從病人入院、治療、出院出發,涉及藥房出入庫、病牀佔用、遺囑等等信息就關聯起來了,這也許現代HIS系統提出“以病人”爲中心的出發點吧。
2.以用例圖爲識別對象及用例的工具
我看過很多需求分析書,用例圖倒是畫了不少,但是畫用例圖不是目的,用例圖僅僅是工具。在以用例圖爲工具的面向對象的需求分析中,要注意在文檔中必須說明以下幾點:
1)必須有角色的嚴格定義。
角色是系統的參與者,必須對其有嚴格的定義,並指明該角色在整個系統中的地位,建議把角色分級別。呵呵,不過給用戶看的那份需求分析書中最好把這級別給去掉。。。。。。
2)用例說明的要點,每個用例,尤其是重要的用例必須嚴格按以下流程給出說明。
功能概述;
主事件流;
子事件流與異常事件流;
前提條件;
後置條件;
優先等級等等。
3)必要時對用例進行以下說明:
本用例涉及的業務規則是什麼。信息系統是企業業務的整合,業務規則是企業進行運轉的遊戲規則,這些規則一般都有嚴格的定義,在需求說明書中必須體現這些規則。
處理流程:必要時給出業務流程圖。
狀態變化:在用例中設計關鍵對象時,必要時給處狀態變化圖,以便業務人員及程序設計人員對系統的理解。
3。多多思考,多多傾聽
在同客戶的交往中,有些客戶在無意中說出的東東,也許是對你係統的性能要求,擬或是對系統的約束,遺漏掉這些東東,後期對你係統也許是災難的。
呵呵,先寫這麼多,看看有何反饋,我會繼續對本文進行整理,直至形成大家公認的規範,希望有經驗的系統分析師(面向對象的系統分析)多多提出您的寶貴意見。