、審查需求文檔、以需求為依據(jù)編寫測試用例、編寫用戶手冊、確定合格的標準。
業(yè)務建模
很多人都沒有意識到業(yè)務需求階段應該做些什么事情,實際上業(yè)務建模是最重要的一件事情。不要覺得業(yè)務建模這個詞很深奧,讓人模不著頭腦。其實所有做過需求分析的人都做過業(yè)務建模,比如你了解企業(yè)的運作模式就?是一種你腦海中的業(yè)務建模。但是大多數(shù)人都沒有科學的、系統(tǒng)的、文檔化的做過業(yè)務建模。
業(yè)務建模的目的在于:
了解目標組織(將要在其中部署系統(tǒng)的組織)的結(jié)構(gòu)及機制。
了解目標組織中當前存在的問題并確定改進的可能性。
確??蛻簟⒆罱K用戶和開發(fā)人員就目標組織達成共識。
導出支持目標組織所需的業(yè)務需求。
上面的話是不是很抽象呢,其實沒有什么復雜的:人和電腦是完全不同的思想(思維方式)。所以,原先適合人的業(yè)務流程對于計算機來說可不一定合適的,為了最大限度的利用計算機,必須要了解原先的業(yè)務流程并對此加易改造(流程自動化),當然這些動作需要得到用戶的許可。有些人認為說只有ERP這種大系統(tǒng)才需要對業(yè)務流程進行重組,但是實際上,不論是部門級的MIS系統(tǒng),還是社會級的電子商務系統(tǒng),都需要對業(yè)務流程進行改造,所不同的只是改造的程度。
業(yè)務建模很重要的一點是在分析企業(yè)流程的同時分析出基礎企業(yè)對象(Common Business Object)(這個詞我翻譯的不好,如果大家有更好的翻譯,請告訴我)。任何企業(yè)都有最基礎的一些元素,例如銀行的CBO就有帳戶,制造業(yè)的CBO就有訂單等。有一次我的一個在企業(yè)應用方面研究多年的朋友告訴我一個秘訣,他說,企業(yè)的CBO無非是4個:客戶、員工、產(chǎn)品和供應商(銀行的供應商應該稱為同業(yè))。其他的所有CBO都是在這四個CBO的基礎上發(fā)展起來的。比如說CBO中客戶和產(chǎn)品是多對多的關系,根據(jù)關系數(shù)據(jù)的理論,任何多對多的關系都可以拆分成多個一對多或一對一的關系。你就可以在這兩個類之間引入訂單類,客戶和訂單之間是一對多,訂單和產(chǎn)品之間又是一對多,這樣一個多對多的關系就拆分成兩個一對多的關系,而新的訂單類也就順理成章的產(chǎn)生了。在訂單類產(chǎn)生時,你可能還會加入一個關聯(lián)類:業(yè)務員類。而業(yè)務員類又是從員工類繼承下來的。所以呢,企業(yè)的四種CBO通過不同的組合,不同的關系,能夠形成企業(yè)運作的許許多多的CBO。
CBO是做業(yè)務建模的基礎,在此基礎上,通過評估業(yè)務狀態(tài),說明當前業(yè)務,確定業(yè)務流程,改進業(yè)務流程的定義,設計業(yè)務流程實現(xiàn),改進角色和職責,研究流程自動化,開發(fā)領域模型等一系列在RUP中定義的工作流程實現(xiàn)業(yè)務建模的目標。
需求獲取
需求獲取(requirement elicitation)是需求工程的主體。對于所建議的軟件產(chǎn)品,獲取需求是一個確定和理解不同用戶類的需要和限制的過程。獲取用戶需求位于軟件需求三個層次的中間一層。業(yè)務需求決定用戶需求,它描述了用戶利用系統(tǒng)需要完成的任務。從這些任務中,分析者能獲得用于描述系統(tǒng)活動的特定的軟件功能需求,這些系統(tǒng)活動有助于用戶執(zhí)行他們的任務。 需求獲取是在問題及其最終解決方案之間架設橋梁的第一步。獲取需求的一個必不可少的結(jié)果是對項目中描述的客戶需求的普遍理解。一旦理解了需求,分析者、開發(fā)者和客戶就能探索出描述這些需求的多種解決方案。參與需求獲取者只有在他們理解了問題之后才能開始設計系統(tǒng),否則,對需求定義的任何改進,設計上都必須大量的返工。把需求獲取集中在用戶任務上—而不是集中在用戶接口上—有助于防止開發(fā)組由于草率處理設計問題而造成的失誤。 需求獲取、分析、編寫需求規(guī)格說明和驗證并不遵循線性的順序,這些活動是相互隔開、增量和反復