在這裡要申明的是邏輯模型並不能完全算需求分析階段的工作,因為它包含了設計模型的概念,但是我又把它歸納了一塊到需求分析階段,原因在於邏輯模型中存在了業務物件模型和分析模型的概念。
言歸正傳,先來看用例模型。
用例模型
用例模型包含了兩部分:業務用例模型和系統用例模型。從字面的意義來看,確實很難分清兩者究竟在做些什麼工作。因此我們要重點解釋一下。
業務用例模型的目的在於:
1. 描述企業的內部組織結構
2. 描述企業各部門的業務
3. 關注於角色和系統的互動介面
系統用例模型的目的在於:
1. 關注於演示對系統的需求
2. 拋棄部門的功能,更加細化
3. 系統用例模型應該劃分子系統以對應不同的功能
這二者最大不同點在於:業務用例模型僅關注於企業部門的業務,而系統用例模型則關注於系統本身實現後的互動。 圖素
業務用例模型和系統用例模型有共同的圖素,但是在意義上是完全不同的
角色:
業務用例模型
系統用例模型
對於角色來說,業務用例模型有兩種角色的變體,分別是業務角色和業務員工。系統用例模型則沒有業務員工,只有業務角色。而它們的含義又是不同的。
在業務用例模型中,業務角色代表企業外的角色,業務員工代表企業內的角色。例如對於商店來說顧客就是它的業務角色,而售貨員就是它的業務員工。
在系統用例模型中,業務角色代表系統外的角色。例如對於銷售管理系統來說,任何乙個操作員都是業務角色,因為它不屬於系統內。
用例:
業務用例模型
系統用例模型
對於用例來說,業務用例模型因為需要描述部門的業務,因此它將使用一般用例的變體:業務用例。而系統用例模型則只需要使用用例的本體就可以了。二者的區別在於,業務用例的粒度很粗,它只描述部門的總體業務;用例的粒度很細,需要描述到系統中業務場景的工作。
業務用例模型工作流程
step-1 :建立業務用例物件模型的包
使用包的變體「 business use case model 」:
step-2 :建立用例物件的角色
建立業務員工和業務角色。
step-3 :建立組織結構圖
製作業務用例模型時,需要通過擴充套件的關係來將各個業務員工和業務角色組織起來,形成組織結構圖。(說明:需要通過抽象將業務員工的組織關係描述得清晰一些,而業務角色可能沒有階層的關係)
組織結構圖的包應該使用包的變體「 organization unit 」:
step4 :建立業務用例
使用業務用例和業務員工、業務角色來粗略的描述部門的業務工作。
系統用例模型工作流程
step-1 :建立系統用例物件模型的包
直接建立包就可以了:
step-2 :建立用例物件的角色
建立業務角色
step-3 :建立系統用例
使用業務角色和系統用例來詳細描述系統的工作,業務角色對用例的關係應該設定為「 use 」,系統用例之間的關係將使用「extend 」、「 include 」來描述。
系統用例的名字很重要,因為它將直接影響關係的描述。(在任何乙個專案開展時都要對名字本身進行約束,動賓結構,還是主動結構)
比如:有乙個系統用例,名為「維護商品資訊」,顯然如果有乙個業務角色為「商品管理員」,那這個業務角色對「維護商品資訊」的資訊就應該是:
而「維護商品資訊」這個用例的粒度太粗,因此還需要細化它,假使,「查詢商品資訊」和「更新商品資訊」都和「維護商品資訊」是有關係的,那麼它們之間的關係就應該使用「
extend
」、「include
」來描述。請先看下圖:
「查詢商品資訊」和「維護商品資訊」是擴充套件( extend )的關係,「更新商品資訊」和「維護商品資訊」是包含( include )的關係。
這樣的圖示說明了什麼?請記住,擴充套件關係是指對於被擴充套件方(在這裡指「維護商品資訊」),擴充套件方(在這裡指「查詢商品資訊」)是非必要實現的,也即沒有「查詢商品資訊」,一樣可以叫做「維護商品資訊」。但是相對包含關係就不一樣,「更新商品資訊」對於「維護商品資訊」來說是必須實現的乙個用例,如果沒有「更新商品資訊」就沒有「維護商品資訊」了。此外,對於擴充套件關係,還有乙個條件,就是擴充套件方應該在被擴充套件方用例實現的基礎上進行的擴充套件。因此對於上圖,若要表達的更清晰,則可以這樣畫:
這樣的結果,告訴了看這個用例的人乙個這樣的資訊:更新商品資訊後可以查詢其他商品資訊。
請再看乙個例子:
這個用例圖告訴了我們這樣的資訊:
step-1
商品管理員首先要提取商品資訊
step-2
在提取商品資訊的同時,需要獲取商品單價,這是必須完成的
step-3
提取商品資訊後可以更新商品資訊和列印商品資訊
step-4
對於列印商品資訊而言合計商品總量是必須完成的乙個工作
從剛才的圖中我們只看到了用例的關係和系統角色在各個階段所做的乙個大體工作,但是對於系統用例來說,每個用例都應該進行必要的描述(這點對於用例來說就是場景的描述)。
需求分析階段的工作(二) 用例描述和邏輯模型
前文介紹了系統用例,在這一節中,我們將討論的是用例描述 和邏輯模型 的工作。從任何乙個環節我們都會看到用例,但是僅僅依靠用例本身的圖來描述用例是不夠的,為什麼呢?因為用例它所要描述的是乙個場景,換句話說,就是用例是描述了某件詳細的事情。如果作為乙個場景的話必然要考慮這麼幾個問題 l誰在這個場景中做事...
需求分析階段的工作(二) 用例描述和邏輯模型
前文介紹了系統用例,在這一節中,我們將討論的是用例描述 和邏輯模型 的工作。從任何乙個環節我們都會看到用例,但是僅僅依靠用例本身的圖來描述用例是不夠的,為什麼呢?因為用例它所要描述的是乙個場景,換句話說,就是用例是描述了某件詳細的事情。如果作為乙個場景的話必然要考慮這麼幾個問題 l 誰在這個場景中做...
需求和分析階段的任務
需求階段的任務 1 需求說明書 簡單的進行客戶調研,明確專案的功能,並且對功能進行簡單的描述。提供給使用者,用於售前的合同以及 2 需求規格說明書 該說明書屬於合同簽訂以後的成果。需要詳細的進行客戶調研,明確客戶的業務流程,處理的表單資訊等等。規格說明書中需要有業務流程圖,表單的各個域資訊,以及一些...