第8章-業(yè)務(wù)模型_第1頁
第8章-業(yè)務(wù)模型_第2頁
第8章-業(yè)務(wù)模型_第3頁
第8章-業(yè)務(wù)模型_第4頁
第8章-業(yè)務(wù)模型_第5頁
已閱讀5頁,還剩75頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第8章 業(yè) 務(wù) 模 型 第第8章章 業(yè)業(yè) 務(wù)務(wù) 模模 型型 8.1業(yè)務(wù)模型概述業(yè)務(wù)模型概述 8.2業(yè)務(wù)建模的目的及內(nèi)容業(yè)務(wù)建模的目的及內(nèi)容 8.3 業(yè)務(wù)建模流程和任務(wù)業(yè)務(wù)建模流程和任務(wù) 8.4業(yè)務(wù)建模中使用到的業(yè)務(wù)建模中使用到的UML元素和版型元素和版型 8.5 業(yè)務(wù)建模舉例業(yè)務(wù)建模舉例 第8章 業(yè) 務(wù) 模 型 8.1 業(yè)務(wù)模型概述業(yè)務(wù)模型概述 業(yè)務(wù)模型是建立軟件系統(tǒng)時所依據(jù)的現(xiàn)實世界或者問題 域模型,是建立軟件系統(tǒng)的基礎(chǔ)。業(yè)務(wù)模型的正確性是保證 最終的軟件系統(tǒng)能夠滿足業(yè)務(wù)需求的前提條件。一般來說, 業(yè)務(wù)模型是完全忠實于現(xiàn)實世界或者問題域的,是現(xiàn)實世界 或者問題域中規(guī)律的真實體現(xiàn)和反映。系統(tǒng)模

2、型和業(yè)務(wù)模型 之間的關(guān)系是依賴關(guān)系,如圖8.1所示。 第8章 業(yè) 務(wù) 模 型 圖8.1 軟件系統(tǒng)對業(yè)務(wù)模型的依賴性 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)模型和系統(tǒng)模型的區(qū)別在于業(yè)務(wù)模型一般與計算機 系統(tǒng)或者實現(xiàn)環(huán)境無關(guān),但與分析方法有關(guān)。分析方法則與 計算機系統(tǒng)及實現(xiàn)方法有關(guān),如數(shù)據(jù)流、實體關(guān)系、對象關(guān) 系等,所以分析方法是業(yè)務(wù)模型和系統(tǒng)模型之間的橋梁。 在現(xiàn)代軟件工程方法中,建立業(yè)務(wù)模型的工作顯得越來 越重要。在傳統(tǒng)的軟件工程方法中,是在需求分析階段進行 建立業(yè)務(wù)模型的活動。用來建立業(yè)務(wù)模型的主要工具是系統(tǒng) 業(yè)務(wù)流程圖、數(shù)據(jù)字典和E-R圖。在現(xiàn)代的軟件工程中,建 立業(yè)務(wù)模型的工作被劃分成一個獨立的階

3、段任務(wù)。在RUP中, 業(yè)務(wù)建模是核心工作流中的第一個工作流。使用UML進行 業(yè)務(wù)建模時常用的工具是類圖、活動圖等工具,它們分別對 應(yīng)著傳統(tǒng)軟件工程中的E-R圖和流程圖。 第8章 業(yè) 務(wù) 模 型 根據(jù)問題種類的不同,業(yè)務(wù)模型的內(nèi)容有所不同。對于 某個組織的信息系統(tǒng)來說,其內(nèi)容一般包括組織目標(biāo)、組織 結(jié)構(gòu)、業(yè)務(wù)崗位、業(yè)務(wù)職責(zé)、業(yè)務(wù)用例、業(yè)務(wù)流程、業(yè)務(wù)對 象等;對于科學(xué)問題,其業(yè)務(wù)模型則應(yīng)該包含著工程問題的 目標(biāo)及結(jié)構(gòu)等,如大型結(jié)構(gòu)計算問題,其目標(biāo)是求解大型結(jié) 構(gòu)的受力和變形,業(yè)務(wù)對象包含了鋼梁、桁架、連接件等; 對于游戲類問題,其業(yè)務(wù)模型一般為游戲背景、游戲角色人 物和游戲情節(jié)等。 本章重點以組織

4、信息系統(tǒng)為例,分別就建立業(yè)務(wù)模型的 目的和內(nèi)容、業(yè)務(wù)建模流程以及業(yè)務(wù)建模中使用到的元素進 行說明,最后給出一個業(yè)務(wù)建模實例。 第8章 業(yè) 務(wù) 模 型 8.2 業(yè)務(wù)建模的目的及內(nèi)容業(yè)務(wù)建模的目的及內(nèi)容 8.2.1 業(yè)務(wù)建模的目的業(yè)務(wù)建模的目的 建立組織信息系統(tǒng)業(yè)務(wù)模型的目的在于: (1) 理解組織的目標(biāo),明晰目前存在的問題,標(biāo)識出潛 在的改進措施。 (2) 評估組織業(yè)務(wù)變化的可能性和這種變化的影響范圍。 (3) 保證客戶、用戶、開發(fā)者和其他相關(guān)人員對組織有 一致的理解。 (4) 導(dǎo)出支持目標(biāo)組織的軟件系統(tǒng)需求。 (5) 理解將要部署的軟件系統(tǒng)怎樣才能適合于組織的需 求。 第8章 業(yè) 務(wù) 模 型

5、組織業(yè)務(wù)是否需要改變?nèi)Q于成本、質(zhì)量、組織預(yù)期的 上市時間等因素。業(yè)務(wù)建模要確定組織當(dāng)前存在的問題,標(biāo) 識需要改進的環(huán)節(jié)。一個健壯組織的特征就是要能夠根據(jù)業(yè) 務(wù)的改變而及時進行組織調(diào)整,即實現(xiàn)所謂的“業(yè)務(wù)驅(qū)動”。 組織目標(biāo)是該組織要實現(xiàn)或者要達成的目標(biāo)。組織結(jié)構(gòu) 是實現(xiàn)組織目標(biāo)的物質(zhì)基礎(chǔ),它包含部門、崗位設(shè)置、業(yè)務(wù) 組成等等。只有靜態(tài)的組織結(jié)構(gòu)圖尚不足以理解業(yè)務(wù)是如何 工作的,還需要使用業(yè)務(wù)流程等動態(tài)視圖,因此業(yè)務(wù)模型應(yīng) 該涵蓋組織結(jié)構(gòu)的靜態(tài)視圖和組織中業(yè)務(wù)流程的動態(tài)視圖。 第8章 業(yè) 務(wù) 模 型 許多和項目相關(guān)的人,如投資者、開發(fā)者都需要理解業(yè) 務(wù)。因為這些人有著不同的背景和興趣,因此他們對

6、業(yè)務(wù)的 觀察過程往往具有不同的視角,會得出不同的看法。在業(yè)務(wù) 建模過程中,我們必須要使用通用的符號和簡單易理解的方 式進行業(yè)務(wù)建模,必須保證得出的業(yè)務(wù)模型能夠支持不同的 描述方式、能夠適應(yīng)不同的觀察角度和不同的抽象級別。否 則,業(yè)務(wù)模型的可理解性就會受到影響,而如果業(yè)務(wù)模型難 以被人理解,則業(yè)務(wù)建模工作也就失去了意義。 第8章 業(yè) 務(wù) 模 型 8.2.2 業(yè)務(wù)建模的內(nèi)容業(yè)務(wù)建模的內(nèi)容 在RUP的業(yè)務(wù)建模過程中,除了建立業(yè)務(wù)用例(business usecase)模型和業(yè)務(wù)分析(business analyse)模型之外,還需要 建立: (1) 業(yè)務(wù)愿景(business vision):包含業(yè)

7、務(wù)目標(biāo)、范圍、 前景等。 (2) 業(yè)務(wù)體系結(jié)構(gòu)(business architect):包括組織結(jié)構(gòu)和 業(yè)務(wù)結(jié)構(gòu)。 (3) 補充的業(yè)務(wù)規(guī)格說明(business specification):主要的 業(yè)務(wù)規(guī)格外的非關(guān)鍵的業(yè)務(wù) 要求。 (4) 業(yè)務(wù)規(guī)則(business rule):包含了業(yè)務(wù)進行的約束和 條件。 (5) 業(yè)務(wù)詞典(business dictionary):包含了業(yè)務(wù)系統(tǒng)中的 主要業(yè)務(wù)術(shù)語及解釋。 第8章 業(yè) 務(wù) 模 型 8.3 業(yè)務(wù)建模流程和任務(wù)業(yè)務(wù)建模流程和任務(wù) 圖8.2 RUP中業(yè)務(wù)建模流程 第8章 業(yè) 務(wù) 模 型 (1) 評估企業(yè)狀態(tài)。該任務(wù)的目的是理解問題域,發(fā)現(xiàn) 潛在

8、的問題。即通過對當(dāng)前業(yè)務(wù)過程、業(yè)務(wù)工具、業(yè)務(wù)技能、 市場環(huán)境的分析,評估并描述組織的當(dāng)前狀態(tài),描述為什么 需要設(shè)計組織目標(biāo),標(biāo)識出業(yè)務(wù)建模的參與者(Business Actor),通過業(yè)務(wù)建模,達到選擇更高效的業(yè)務(wù)途徑的目標(biāo)。 第8章 業(yè) 務(wù) 模 型 (2) 描述目前企業(yè)的業(yè)務(wù)狀態(tài)、定義企業(yè)的業(yè)務(wù)體系結(jié) 構(gòu),包括: 業(yè)務(wù)體系結(jié)構(gòu)分析:理解影響業(yè)務(wù)的關(guān)鍵因素,包 括業(yè)務(wù)體系結(jié)構(gòu)、業(yè)務(wù)模式、關(guān)鍵機制。該任務(wù)只對業(yè)務(wù)重 構(gòu)有用。 業(yè)務(wù)操作分析設(shè)計:細化關(guān)鍵業(yè)務(wù)用例的業(yè)務(wù)操作, 使用子系統(tǒng)動作和協(xié)作原理,將業(yè)務(wù)子系統(tǒng)之間的交互關(guān)系 映射到業(yè)務(wù)設(shè)計模型的操作中實現(xiàn)。 業(yè)務(wù)用例分析:對履行用例工作流所涉及

9、的元素進 行標(biāo)識,包括業(yè)務(wù)系統(tǒng)、業(yè)務(wù)工人。使用業(yè)務(wù)分析用例將業(yè) 務(wù)用例中的行為分配到這些元素上。要標(biāo)識出業(yè)務(wù)系統(tǒng)和工 人的職責(zé)、屬性和關(guān)聯(lián)關(guān)系、標(biāo)識出業(yè)務(wù)實體和事件。 第8章 業(yè) 務(wù) 模 型 捕獲公共業(yè)務(wù)詞匯:定義公共業(yè)務(wù)詞匯,用于有關(guān) 業(yè)務(wù)的描述,特別是業(yè)務(wù)用例的描述中。 構(gòu)造業(yè)務(wù)體系結(jié)構(gòu):提出至少一個解決方案(也可能 只是概念性的)來滿足關(guān)鍵體系結(jié)構(gòu)的需求。 定義業(yè)務(wù)系統(tǒng)環(huán)境:基于業(yè)務(wù)用例模型,創(chuàng)建一個 系統(tǒng)圖,用于表示業(yè)務(wù)系統(tǒng)和業(yè)務(wù)參與者之間的頂層協(xié)作。 其中業(yè)務(wù)參與者應(yīng)當(dāng)包括業(yè)務(wù)系統(tǒng)外部的I/O業(yè)務(wù)實體。 第8章 業(yè) 務(wù) 模 型 (3) 對業(yè)務(wù)體系結(jié)構(gòu)進行細化,建立域模型,為定義過 程

10、自動化準(zhǔn)備,包括: 細化業(yè)務(wù)實體:保證業(yè)務(wù)實體能夠提供所需求的功 能、性能,標(biāo)識出觸發(fā)業(yè)務(wù)實體的所有業(yè)務(wù)事件,評估業(yè)務(wù) 實體之間的關(guān)系。 細化業(yè)務(wù)用例:描述業(yè)務(wù)用例的工作流,保證業(yè)務(wù) 用例足以支持業(yè)務(wù)策略,保證客戶、用戶、風(fēng)險承擔(dān)者都能 理解業(yè)務(wù)用例的工作流。 細化業(yè)務(wù)工人:描述業(yè)務(wù)工人的職責(zé),標(biāo)識業(yè)務(wù)工 人的能力需求,保證業(yè)務(wù)工人可以履行職責(zé)。 發(fā)現(xiàn)業(yè)務(wù)參與者和業(yè)務(wù)用例:定義出業(yè)務(wù)的邊界, 定義誰或者什么和業(yè)務(wù)交互,勾畫業(yè)務(wù)流程,創(chuàng)建業(yè)務(wù)用例 模型圖,制定針對用例模型圖的測量指標(biāo)。 第8章 業(yè) 務(wù) 模 型 標(biāo)識業(yè)務(wù)目標(biāo):使用自下而上的方法,標(biāo)識出業(yè)務(wù) 目標(biāo);標(biāo)識出為實現(xiàn)業(yè)務(wù)目標(biāo)所必需的業(yè)務(wù)計

11、劃和管理活動; 將業(yè)務(wù)翻譯成業(yè)務(wù)策略;提供度量和改進業(yè)務(wù)活動的基礎(chǔ)。 在此項工作中,要保證長期戰(zhàn)略目標(biāo)和短期運作目標(biāo)的一致 性。 維護業(yè)務(wù)規(guī)則:確定項目中要考慮滿足的業(yè)務(wù)規(guī)則, 給出業(yè)務(wù)規(guī)則的細節(jié)定義。 標(biāo)識業(yè)務(wù)用例優(yōu)先級:定義一組系統(tǒng)關(guān)鍵場景和業(yè) 務(wù)用例,并標(biāo)識出其優(yōu)先級。 將業(yè)務(wù)用例模型結(jié)構(gòu)化:抽取抽象的業(yè)務(wù)用例,發(fā) 現(xiàn)抽象的業(yè)務(wù)參與者(Abstract Actor)。 第8章 業(yè) 務(wù) 模 型 8.4 業(yè)務(wù)建模中使用到的業(yè)務(wù)建模中使用到的UML元素和版型元素和版型 在采用UML進行業(yè)務(wù)建模時,經(jīng)常要用到一些概念、 元素和版型來提高建模效率,下面對此進行簡要介紹與描述。 8.4.1 業(yè)務(wù)系統(tǒng)

12、業(yè)務(wù)系統(tǒng)(Business System) 業(yè)務(wù)系統(tǒng)封裝了一組角色和資源,定義了一組職責(zé)。通 過這些職責(zé),能夠?qū)崿F(xiàn)一個具體目標(biāo)。在RUP和UML中, 通過包的特殊版型來表示,其圖標(biāo)如圖 8.3所示。(版型Stereotype是UML的一種分類擴充機制,可 以給元素增加更多的信息。) 第8章 業(yè) 務(wù) 模 型 圖8.3 業(yè)務(wù)系統(tǒng)圖標(biāo) 第8章 業(yè) 務(wù) 模 型 8.4.2 業(yè)務(wù)目標(biāo)業(yè)務(wù)目標(biāo)(Business Goal) 業(yè)務(wù)目標(biāo)是業(yè)務(wù)系統(tǒng)要完成或者達成的任務(wù)。在RUP和 UML中,通過類的特殊版型來表示業(yè)務(wù) 目標(biāo)。業(yè)務(wù)目標(biāo)的圖標(biāo)如圖8.4所示。 第8章 業(yè) 務(wù) 模 型 圖8.4 業(yè)務(wù)目標(biāo)圖標(biāo) 第8章

13、業(yè) 務(wù) 模 型 圖8.5 業(yè)務(wù)目標(biāo)細化舉 第8章 業(yè) 務(wù) 模 型 8.4.3 業(yè)務(wù)規(guī)則業(yè)務(wù)規(guī)則(Business Rule) 業(yè)務(wù)規(guī)則是指業(yè)務(wù)活動必須要滿足的政策、條件和約束。 它是業(yè)務(wù)模型或者業(yè)務(wù)需求中的一部分,它可能會涉及到法 律或者規(guī)則,也可能是為了適應(yīng)業(yè)務(wù)架構(gòu)或者風(fēng)格的需求。 通常描述業(yè)務(wù)規(guī)則有兩種方法可以選用: (1) 基于模型描述業(yè)務(wù)規(guī)則:業(yè)務(wù)規(guī)則作為UML模型中 類的一種版型約束,如圖8.6所示。規(guī)則可以使用自然語言 聲明或者使用更形式化的記號,如Object Constraint Language(OCL)來描述。這種方法的好處是業(yè)務(wù)規(guī)則和業(yè)務(wù) 模型在一起,缺點是比較分散,難以

14、觀察相關(guān)聯(lián)的業(yè)務(wù)規(guī)則, 也不容易描述得非常精確。 第8章 業(yè) 務(wù) 模 型 圖8.6 業(yè)務(wù)規(guī)則圖標(biāo) 第8章 業(yè) 務(wù) 模 型 (2) 基于文檔描述業(yè)務(wù)規(guī)則:業(yè)務(wù)規(guī)則在另一個文檔中 進行描述。優(yōu)點是適于描述大量的業(yè)務(wù)規(guī)則,如金融產(chǎn)品; 缺點是和業(yè)務(wù)模型的描述風(fēng)格不一致。 例如使用OCL描述業(yè)務(wù)規(guī)則:團隊成員不能超過10人。 context Team inv: self.numberOfMembers = 10; 第8章 業(yè) 務(wù) 模 型 圖8.7 激發(fā)和響應(yīng)規(guī)則 第8章 業(yè) 務(wù) 模 型 如何在模型中描述業(yè)務(wù)規(guī)則呢?可以分成以下幾種情況 進行描述: (1) 激發(fā)和響應(yīng)規(guī)則:約束將被轉(zhuǎn)換成業(yè)務(wù)流程圖中的

15、一個分支。例如在訂單管理組織中,有如下規(guī)則:當(dāng)訂單被 取消時,如果訂單還沒有發(fā)貨,則關(guān)閉訂單。該業(yè)務(wù)規(guī)則被 反映到業(yè)務(wù)流程圖中,如圖8.7所示。 第8章 業(yè) 務(wù) 模 型 (2) 操作約束規(guī)則:約束規(guī)則被轉(zhuǎn)換成工作流的前提條 件或者后置條件,或者可選路徑,或者性能目標(biāo)。 例如指定計算公式,產(chǎn)品的實價為:product price * (1 + tax percentage/100),計算產(chǎn)品實價是任務(wù)Ship Order的一部 分;發(fā)貨給客戶:僅當(dāng)客戶有發(fā)貨地址時(等價于發(fā)貨地址 不能為空),被轉(zhuǎn)換成流程圖的一個分支;客戶咨詢必須在 24小時內(nèi)得到響應(yīng),被轉(zhuǎn)換成業(yè)務(wù)用例的性能目標(biāo)。 第8章 業(yè)

16、務(wù) 模 型 (3) 結(jié)構(gòu)約束規(guī)則:該種約束影響業(yè)務(wù)實體實例之間的關(guān)系, 可表示成兩個業(yè)務(wù)實體之間的關(guān)聯(lián)關(guān)系或者多重性約束。例如: 一個訂單至少必須包含一個產(chǎn)品,該規(guī)則被轉(zhuǎn)換成訂單和產(chǎn)品之 間的一對多(1對1.*)的關(guān)聯(lián)關(guān)系。 (4) 推導(dǎo)規(guī)則:類似于其他規(guī)則,區(qū)別在于必須通過幾步思 考才能到達結(jié)論(非直接)。此規(guī)則暗含一個方法,被反映在工作 流的某個活動狀態(tài)中,并最終反映在業(yè)務(wù)工人或者業(yè)務(wù)實體的一 個操作中。 例如,一個客戶是好的當(dāng)且僅當(dāng):寄給該客戶的未付款發(fā)票 不能超過30天。該規(guī)則對應(yīng)到工作流中的一個可選的路徑,在活 動評估客戶中包含一個方法來對客戶進行判斷,該方法需要計 算未付款發(fā)票發(fā)出

17、去的時間,并進行判斷。因此,這一規(guī)則不是 一目了然的或者十分顯然的,屬于“推導(dǎo)規(guī)則”,如圖8.8所示。 第8章 業(yè) 務(wù) 模 型 (5) 計算規(guī)則:類似于導(dǎo)出規(guī)則。區(qū)別在于該規(guī)則所對 應(yīng)的方法更加正式,更像一個算法。與導(dǎo)出規(guī)則一樣,該方 法需要被跟蹤到一個工作流的任務(wù)(活動)中,最終轉(zhuǎn)換成業(yè) 務(wù)工人或者業(yè)務(wù)實體的操作。從圖8.9中可以看出,計算凈 價格轉(zhuǎn)換為業(yè)務(wù)工人客戶代表的一個操作。 第8章 業(yè) 務(wù) 模 型 圖8.8 業(yè)務(wù)規(guī)則中的推導(dǎo)規(guī)則 第8章 業(yè) 務(wù) 模 型 圖8.9 業(yè)務(wù)規(guī)則中的計算規(guī)則情況 第8章 業(yè) 務(wù) 模 型 8.4.4 業(yè)務(wù)參與者業(yè)務(wù)參與者(Business Actor) 業(yè)務(wù)參

18、與者是和業(yè)務(wù)交互的各種元素,代表著業(yè)務(wù)環(huán)境 (區(qū)別于業(yè)務(wù)系統(tǒng))中和業(yè)務(wù)有關(guān)的、由人或者事物扮演的角 色。比如說業(yè)務(wù)客戶、供貨商、合作伙伴、潛在客戶、上級 相關(guān)部門、相關(guān)的外部信息系統(tǒng)等。業(yè)務(wù)參與者和業(yè)務(wù)系統(tǒng) 的交互包括啟動業(yè)務(wù)、提出需求、獲取結(jié)果等等。 業(yè)務(wù)參與者用于定義系統(tǒng)邊界(標(biāo)識哪些是系統(tǒng)之外的 因素,哪些是系統(tǒng)之內(nèi)的因素),描述和業(yè)務(wù)用例的交互過 程等,是業(yè)務(wù)用例模型中的重要元素。在UML中,業(yè)務(wù)參 與者使用對象的版型來表示,如圖8.10 所示。 第8章 業(yè) 務(wù) 模 型 圖8.10 業(yè)務(wù)參與者 第8章 業(yè) 務(wù) 模 型 8.4.5 業(yè)務(wù)工人業(yè)務(wù)工人(Business Worker) 業(yè)務(wù)

19、工人是指人、軟件或者硬件的抽象。它代表著業(yè)務(wù) 用例實現(xiàn)過程中的一個角色。業(yè)務(wù)工人通過和其他業(yè)務(wù)工人 協(xié)作、響應(yīng)業(yè)務(wù)事件、維護業(yè)務(wù)實體等方式來履行職責(zé)。 業(yè)務(wù)參與者和業(yè)務(wù)工人都是和系統(tǒng)有關(guān)的人、物的抽象, 它們的區(qū)別在于業(yè)務(wù)參與者是系統(tǒng)之外的和系統(tǒng)有關(guān)的各種 因素,而業(yè)務(wù)工人則是屬于系統(tǒng)之內(nèi)的,參與到業(yè)務(wù)用例實 現(xiàn)過程中的因素,如企業(yè)采購過程中財務(wù)、庫房等角色。 在RUP中,使用對象的特殊版型表 示業(yè)務(wù)工人,如圖8.11所示。 第8章 業(yè) 務(wù) 模 型 圖8.11 業(yè)務(wù)規(guī)則圖標(biāo) 第8章 業(yè) 務(wù) 模 型 8.4.6 業(yè)務(wù)實體業(yè)務(wù)實體(Business Entity) 業(yè)務(wù)實體是一個被動類,也就是它不

20、會調(diào)用自己的方法, 而是由其他類調(diào)用其方法。一個業(yè)務(wù)對象可以參與到多個不 同業(yè)務(wù)用例的實現(xiàn)中,通常其生命周期比一個用例中的交互 周期更長。在業(yè)務(wù)建模中,實體表示業(yè)務(wù)工人訪問、檢查、 維護、產(chǎn)生等操作的對象。例如:訂單、入庫單、庫存、賬 戶等等。業(yè)務(wù)實體對象為參與不同用例實現(xiàn)的不同業(yè)務(wù)工人 提供了共享的基礎(chǔ)。在RUP和UML中,業(yè)務(wù)實體使用對象 的特殊版型表示,圖標(biāo)如圖8.12所示。 第8章 業(yè) 務(wù) 模 型 圖8.12 業(yè)務(wù)實體圖標(biāo) 第8章 業(yè) 務(wù) 模 型 8.4.7 業(yè)務(wù)事件業(yè)務(wù)事件(Business Event) 業(yè)務(wù)事件表示業(yè)務(wù)活動中的關(guān)鍵事件,由業(yè)務(wù)參與者、 業(yè)務(wù)工人、業(yè)務(wù)實體接收。業(yè)務(wù)

21、事件用于觸發(fā)業(yè)務(wù)用例、通 知業(yè)務(wù)狀態(tài)的變化、在業(yè)務(wù)用例之間傳遞信息。業(yè)務(wù)事件具 有如下特性:重要性、隨機性、獨立性、響應(yīng)性。在RUP和 UML中,業(yè)務(wù)事件使用對象的特殊版型 來表示,其圖標(biāo)如圖8.13所示。 第8章 業(yè) 務(wù) 模 型 圖8.13 業(yè)務(wù)事件的圖標(biāo)表示 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)事件的觸發(fā)方式有如下幾種: (1) 由業(yè)務(wù)參與者觸發(fā),表示一個業(yè)務(wù)用例開始或者結(jié) 束。如:當(dāng)供應(yīng)商交付貨物時,一個交付事件指示交付貨物 業(yè)務(wù)用例開始。 (2) 由業(yè)務(wù)實體觸發(fā),表示狀態(tài)變化。如:作為招聘員 工業(yè)務(wù)用例的一部分,候選資格業(yè)務(wù)事件指示一個潛在的雇 員被檢查通過了。 (3) 由業(yè)務(wù)工人觸發(fā),表示業(yè)

22、務(wù)用例實現(xiàn)中的一個特定 點。如:一旦一個火箭被發(fā)射了,一個發(fā)射業(yè)務(wù)事件指示跟 蹤火箭軌跡業(yè)務(wù)用例開始。 (4) 由時間觸發(fā)。例如:病人出手術(shù)室六小時后,一個 病人照看業(yè)務(wù)事件指示護士應(yīng)該去檢查病人。 第8章 業(yè) 務(wù) 模 型 觸發(fā)事件的類叫做發(fā)行者(事件源);接收業(yè)務(wù)事件的類 稱為訂閱者(事件處理者)。發(fā)行者和業(yè)務(wù)事件之間有一個版 型為的依賴關(guān)系。 業(yè)務(wù)事件也可以關(guān)聯(lián)多個業(yè)務(wù)實體,如產(chǎn)品。訂閱者需 要有一個操作,版型為,名字和業(yè)務(wù)事 件名字一樣,參數(shù)則與業(yè)務(wù)事件的屬性一樣,如圖8.14所示 (庫存低(String warehouse,Product p,Integer Stock)。也可以在業(yè)務(wù)

23、事件和訂閱者之間通過版型 為的依賴關(guān)系來導(dǎo)出上述方法簽名。 第8章 業(yè) 務(wù) 模 型 圖8.14 業(yè)務(wù)事件舉例 第8章 業(yè) 務(wù) 模 型 8.4.8 業(yè)務(wù)用例業(yè)務(wù)用例(Business Use Case) 1業(yè)務(wù)用例的基本概念業(yè)務(wù)用例的基本概念 圖8.15 業(yè)務(wù)用例 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)用例定義了一組業(yè)務(wù)用例實例。每個實例都是一組 為獲得對業(yè)務(wù)參與者有影響的結(jié)果的業(yè)務(wù)行為,或者是展示 業(yè)務(wù)是如何響應(yīng)業(yè)務(wù)事件以獲得一個業(yè)務(wù)結(jié)果。業(yè)務(wù)用例是 從業(yè)務(wù)系統(tǒng)外部的角度對業(yè)務(wù)過程的描述,它定義了業(yè)務(wù)系 統(tǒng)的邊界。業(yè)務(wù)用例是面向過程的業(yè)務(wù)規(guī)格描述,它包括了 業(yè)務(wù)與業(yè)務(wù)參與者之間的交互和關(guān)鍵業(yè)務(wù)事件。在R

24、UP和 UML中,使用用例的特殊版型表示 業(yè)務(wù)用例,參見圖8.15。 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)用例定義中經(jīng)常會出現(xiàn)的一些詞匯,解釋如下: (1) 業(yè)務(wù)用例實例:是指業(yè)務(wù)的一次具體的執(zhí)行過程。 業(yè)務(wù)用例實例是一個具體的工作流或者情景,一個承擔(dān)某種 角色(崗位)的雇員可以在幾個不同業(yè)務(wù)用例實例中做同樣的 事情。例如:在機場登記柜臺,個人登記和團隊登記業(yè)務(wù)用 例都同樣需要登記人員的服務(wù),都需要訪問同樣的航班信息, 因此這兩個業(yè)務(wù)用例都被設(shè)計成使用同樣的登記代理業(yè)務(wù)工 人和航班實體。 (2) 業(yè)務(wù)參與者:指參與業(yè)務(wù)的具體個體,如客戶、供 應(yīng)商等。 第8章 業(yè) 務(wù) 模 型 (3) 有價值的結(jié)果:據(jù)此

25、可以確定業(yè)務(wù)用例的粒度,不 至于太大或者太小。如維護商品信息和修改商品信息是兩個 不同粒度的用例。 (4) 業(yè)務(wù)有關(guān):只描述和業(yè)務(wù)有關(guān)的行為。 (5) 業(yè)務(wù)行為:業(yè)務(wù)行為可以由參與者發(fā)出請求或觸發(fā) (調(diào)用),或者在某個時間被觸發(fā)(調(diào)用)。 第8章 業(yè) 務(wù) 模 型 (6) 業(yè)務(wù)用例命名:業(yè)務(wù)用例的名字應(yīng)該是動態(tài)的,表 示當(dāng)業(yè)務(wù)用例履行時發(fā)生了什么事情。一般使用動名詞短語 來命名業(yè)務(wù)用例,如修改訂單。業(yè)務(wù)用例的名字可以用來從 外部觀點或者內(nèi)部觀點出發(fā)描述業(yè)務(wù)用例的任務(wù),例如接收 訂單。但最恰當(dāng)?shù)拿椒ㄊ菑臉I(yè)務(wù)的主要參與者的觀點出 發(fā)來命名。一旦決定使用一種命名風(fēng)格,對于業(yè)務(wù)用例模型 中的所有業(yè)務(wù)

26、用例都應(yīng)該遵循該命名規(guī)則。 (7) 目的/目標(biāo):可以從內(nèi)、外兩個方面描述業(yè)務(wù)用例的 目標(biāo)。從外部觀點出發(fā),指參與者所需要獲取的價值;從內(nèi) 部觀點考慮,則是從組織角度定義的該用例應(yīng)達到的目標(biāo)。 第8章 業(yè) 務(wù) 模 型 (8) 性能目標(biāo):可以從下面幾個方面考慮,如執(zhí)行一個 工作流或者部分工作流所花費的大約時間、花費或者成本、 質(zhì)量。例如:產(chǎn)品下線的次品率不能超過2%。 (9) 工作流的結(jié)構(gòu):很多工作流可以進一步分成一些子 工作流。有些業(yè)務(wù)用例有公共的子工作流。如果這些子工作 流形成獨立的和自然分割的部分,那么將這個子工作流分離 出來,形成一個獨立的用例會更清楚。這個新的用例或者被 包含在原始用例之

27、中,或者作為另一個用例的擴展,或者作 為父用例。例如:在機場登記柜臺,個人登記和團隊登記用 例使用同樣的步驟來處理個人的行李。因為這個子工作流獨 立于處理機票,但邏輯上又是有聯(lián)系的,因此被單獨建模成 一個用例“處理行李”。 第8章 業(yè) 務(wù) 模 型 圖8.16 業(yè)務(wù)工作流活動圖實例 第8章 業(yè) 務(wù) 模 型 活動圖的特點在于直觀,但細節(jié)不夠清晰,文字描述則 比較細致。針對這一工作流,圖8.16相應(yīng)的文字描述如下: (1) 初次接觸:該過程由客戶和公司之間的初次聯(lián)系啟 動。具體方式可以是由客戶主動聯(lián)系公司提出咨詢或者請求, 公司確定了自身的產(chǎn)品對客戶有益,存在合作前景。也可以 是通過公司與客戶雙方聯(lián)

28、系人作交流,分析是否是新客戶, 搜集有關(guān)本項目的建議信息及客戶出價情況。 第8章 業(yè) 務(wù) 模 型 (2) 前期準(zhǔn)備工作:該環(huán)節(jié)具有收集客戶請求、進行機 會分析兩個目的。其中收集客戶初步信息、制定銷售計劃 (可選)、進行可行性分析的工作可以迭代進行,也可以并行。 應(yīng)當(dāng)通過與客戶的初步交流,獲取產(chǎn)品需求和客戶業(yè)務(wù)需求。 并通過機會分析判斷項目是否可行。 一個完整的項目需求應(yīng)當(dāng)包括技術(shù)選擇(可能有多個, 如果客戶想要幾種替換方案)、產(chǎn)品參數(shù)、功能需求、期限、 服務(wù)需求、價格需求等。機會分析包括機會風(fēng)險(產(chǎn)品可用 性、競爭性、客戶風(fēng)險)、ROI、機會類型(復(fù)雜、簡單)、銷 售可能性、銷售規(guī)模預(yù)測、估計

29、進度。公司要根據(jù)這一階段 的工作結(jié)果,決定是否繼續(xù)進行下一步工作。 第8章 業(yè) 務(wù) 模 型 (3) 制定初步方案、撰寫項目計劃:如果判定項目可行, 則要設(shè)計項目的初步方案,并指定專人制定項目計劃書;如 果認為當(dāng)前了解的信息尚不足以作出項目是否可行的決策, 則進一步通過和客戶的交流,搜集確實的信息;如果判定項 目在當(dāng)前需求范圍不可行,則考慮拒絕接受項目,也可以重 新和客戶進行協(xié)商變更項目需求規(guī)格或者提出引進合作伙伴 的建議。 (4) 制定并提交項目計劃:針對本項目制定一個初步計 劃,其內(nèi)容包括項目時間進度、可用資源、工程能力分析、 開發(fā)新產(chǎn)品的可能性、采用第三方產(chǎn)品的可能性等等。 第8章 業(yè) 務(wù)

30、 模 型 (5) 項目報價:以分析方案為依據(jù)針對項目提出報價。 (6) 搜集其他缺失的信息:收集并匯總客戶需要的其他 信息。如目前能力、將來的能力、項目必須符合的標(biāo)準(zhǔn)、目 前和將來可能需要的服務(wù)信息等等。 (7) 分析并審定方案:根據(jù)所了解到的各種信息,對初 步方案進行審核確定。 (8) 提交方案:將上述經(jīng)審核確定的建議方案提供給客 戶方。 (9) 獲取客戶決策意見:獲取客戶對方案、計劃的最終 反饋意見。如果客戶持肯定意見,則可繼續(xù)跟蹤,直至簽訂 合同;如果客戶作出了否定決策,則中止售前工作。 第8章 業(yè) 務(wù) 模 型 2. 業(yè)務(wù)用例規(guī)格說明業(yè)務(wù)用例規(guī)格說明(Business Use Case

31、Specification) 模板模板 業(yè)務(wù)用例使用過程結(jié)構(gòu)或模板來描述,說明業(yè)務(wù)功能, 這種描述也需要遵循一定的規(guī)范和模式??晒I(yè)務(wù)用例規(guī)格 說明的模板有許多,但最核心的是必須要能夠反映出該用例 的本質(zhì)特點、用例的交互過程、與其他用例或參與者的關(guān)系、 用例的執(zhí)行對系統(tǒng)的影響等內(nèi)容。 下面是一種業(yè)務(wù)用例規(guī)格說明的模板舉例: 名稱:說明業(yè)務(wù)用例的名稱。 簡要描述:簡要描述角色設(shè)置和業(yè)務(wù)目的。 第8章 業(yè) 務(wù) 模 型 性能目標(biāo):和業(yè)務(wù)用例有關(guān)的性能要求,如“用戶投訴 需要在七個工作日中得到響應(yīng)”。 工作流:業(yè)務(wù)用例所表示的工作流的文本描述。該工作 流應(yīng)該描述給業(yè)務(wù)參與者帶來了什么價值,而不是描述怎

32、么 解決這個問題。 分類:核心、支持、管理。 風(fēng)險:執(zhí)行或者實現(xiàn)該業(yè)務(wù)用例的風(fēng)險,并描述期待業(yè) 務(wù)和已提供業(yè)務(wù)之間的區(qū)別。 可能性:估計改進的潛力。 過程擁有者:負責(zé)管理和計劃改變。 第8章 業(yè) 務(wù) 模 型 特殊需求:工作流中沒有描述的業(yè)務(wù)用例特性和量化指 標(biāo)。 擴展點:事件流中多個位置,利用extend 關(guān)系,可以擴 展成其他功能。 支持的業(yè)務(wù)目標(biāo):表示該業(yè)務(wù)用例實現(xiàn)的業(yè)務(wù)目標(biāo)。 關(guān)系:該用例參與的關(guān)系,如通信關(guān)聯(lián)關(guān)系、包含和擴 展關(guān)系。 活動圖:描述工作流的圖形。 用例圖:描述該用例及其關(guān)系的圖形。 工作流草圖:手繪的草圖或者情景討論(storyboarding session)結(jié)果。 如

33、果業(yè)務(wù)建模僅僅是圖示說明一個現(xiàn)存的目標(biāo)組織,而 不是為了改變它,可以不用描述性能目標(biāo)、風(fēng)險、可能性、 過程擁有者。 第8章 業(yè) 務(wù) 模 型 3. 業(yè)務(wù)用例結(jié)構(gòu)及業(yè)務(wù)用例之間的關(guān)系業(yè)務(wù)用例結(jié)構(gòu)及業(yè)務(wù)用例之間的關(guān)系 1) 業(yè)務(wù)用例的泛化關(guān)系 某些業(yè)務(wù)用例之間存在著很大的相似性,例如銀行掛失 包含電話掛失、網(wǎng)上掛失、柜臺掛失等,這些用例的實現(xiàn)過 程有很大的相似性,此時可以抽取一個抽象的銀行掛失用例 作為父用例,抽取出所有掛失中公共的操作,在父類操作中 有些可能是抽象的,例如輸入掛失信息,這對于不同的掛失 方法,其實現(xiàn)是不一樣的,必須到子用例中才能實現(xiàn)。業(yè)務(wù) 用例的本質(zhì)是業(yè)務(wù)類,是一種業(yè)務(wù)過程類,所以

34、在業(yè)務(wù)用例 之間存在著泛化的關(guān)系。業(yè)務(wù)用例之間的泛化關(guān)系如圖8.17 所示。 第8章 業(yè) 務(wù) 模 型 圖8.17 業(yè)務(wù)用例之間的泛化關(guān)系 第8章 業(yè) 務(wù) 模 型 2) 業(yè)務(wù)用例的包含關(guān)系 圖8.18 業(yè)務(wù)用例之間的包含關(guān)系 第8章 業(yè) 務(wù) 模 型 3) 業(yè)務(wù)用例的擴展關(guān)系 有時候很難確定一個業(yè)務(wù)服務(wù)是一個還是多個業(yè)務(wù)實例。以 機場登記為例,乘客將票和行李遞給登記人員,后者為乘客尋找 座位,打印登機牌并處理行李。如果乘客的行李屬于正常范圍, 登記員打印行李單、客戶認領(lǐng)憑證、登機牌,用例終止。如果行 李超出正常范圍如特殊形狀或者特殊內(nèi)容,因此不能正常托運, 乘客必須將其拿到特殊行李柜臺。如果行李很

35、重,乘客必須為此 到售票處繳費,因為登記人員是不收錢的。這里是需要一個業(yè)務(wù) 用例還是三個業(yè)務(wù)用例呢?該業(yè)務(wù)包含三種動作類型(相當(dāng)于三個 分支),但并不是對每個乘客都有價值(大部分的乘客不需要為行 李額外繳費)。推薦將聯(lián)系密切的服務(wù)放在一起,這樣可以一起評 審、修改、測試、寫用戶手冊等。類似的例子有逛商店、瀏覽商 品、購買商品、加入購物車、結(jié)賬。 第8章 業(yè) 務(wù) 模 型 圖8.19 業(yè)務(wù)用例的擴展關(guān)系 第8章 業(yè) 務(wù) 模 型 8.4.9 業(yè)務(wù)用例實現(xiàn)業(yè)務(wù)用例實現(xiàn)(Business Use Case Realization) 業(yè)務(wù)用例模型使用業(yè)務(wù)參與者(客戶)和業(yè)務(wù)用例(業(yè)務(wù)過 程)來描述業(yè)務(wù)。業(yè)

36、務(wù)用例模型包含工作流描述,這標(biāo)識了 該業(yè)務(wù)做什么(what),而不是怎么做(how)。業(yè)務(wù)用例怎么做 是在業(yè)務(wù)分析模型中實現(xiàn)的,具體的說,是在業(yè)務(wù)用例實現(xiàn) 中才去描述怎么做的問題。 業(yè)務(wù)用例實現(xiàn)描述了業(yè)務(wù)系統(tǒng)、業(yè)務(wù)工人、業(yè)務(wù)實體和 業(yè)務(wù)事件是如何協(xié)作來完成一個特定的業(yè)務(wù)用例的。同一個 類的實例可以參與到多個業(yè)務(wù)用例的實現(xiàn)中。 在RUP和UML中,業(yè)務(wù)用例實現(xiàn)使用用例的特殊版型 (Business Use Case Realization)來表現(xiàn),如圖8.20所示。 第8章 業(yè) 務(wù) 模 型 圖8.20 業(yè)務(wù)用例實現(xiàn)的圖標(biāo) 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)系統(tǒng)是業(yè)務(wù)部門、業(yè)務(wù)工人和業(yè)務(wù)實體的層次結(jié)構(gòu)

37、的封裝。業(yè)務(wù)系統(tǒng)之間的交互可以只在業(yè)務(wù)系統(tǒng)邊界進行, 而不去暴露其內(nèi)部細節(jié)。僅在特殊情況下,也可以和某個業(yè) 務(wù)系統(tǒng)中的元素進行交互。 通常使用活動圖、類圖、順序圖等工具來描述業(yè)務(wù)用例 的實現(xiàn)?;顒訄D是描述業(yè)務(wù)用例實現(xiàn)的首選方法??梢允褂?活動圖中的泳道(swimlane)來代表業(yè)務(wù)系統(tǒng)或者業(yè)務(wù)工人。 一個用例實現(xiàn)可以使用多個活動圖來描述其工作流。也可以 使用交互圖來描述業(yè)務(wù)用例實現(xiàn)中的業(yè)務(wù)系統(tǒng)、業(yè)務(wù)工人、 業(yè)務(wù)實體等之間的交互情況。 第8章 業(yè) 務(wù) 模 型 交互圖包括順序圖和通信圖兩種。通信圖是UML舊版 本中的協(xié)作圖(Collaboration Diagram),它們表達同樣的信息, 但仍有

38、所不同。順序圖表示一個顯式的事件序列,在描述復(fù) 雜情景時,比活動圖有優(yōu)勢,它可以一直對應(yīng)到對象的操作。 通信圖表示對象之間的連接關(guān)系和通信信息。如果分支較少, 但業(yè)務(wù)實體較多,交互圖比活動圖能更好地顯示業(yè)務(wù)實現(xiàn)的 工作流。也可以使用類圖描述參與用例實現(xiàn)的業(yè)務(wù)系統(tǒng)、業(yè) 務(wù)工人、業(yè)務(wù)實體及其關(guān)系。 第8章 業(yè) 務(wù) 模 型 8.4.10 業(yè)務(wù)用例與業(yè)務(wù)用例實現(xiàn)的區(qū)別業(yè)務(wù)用例與業(yè)務(wù)用例實現(xiàn)的區(qū)別 在用例驅(qū)動業(yè)務(wù)建模過程中,可以從兩個角度描述業(yè)務(wù):業(yè) 務(wù)用例和業(yè)務(wù)用例實現(xiàn)。 業(yè)務(wù)用例表示業(yè)務(wù)的外部視圖,定義履行該業(yè)務(wù)必須的操作 以及參與者與業(yè)務(wù)的交互。業(yè)務(wù)用例的描述不涉及業(yè)務(wù)實際的內(nèi) 部結(jié)構(gòu)。業(yè)務(wù)用例也

39、描述業(yè)務(wù)事件及其業(yè)務(wù)狀態(tài)的變化,但不描 述狀態(tài)是如何被建立和維護的,或者業(yè)務(wù)事件在內(nèi)部是如何傳遞 的。就這一點而言,有點類似于事件機制,程序員只關(guān)心事件什 么時候或者在什么情況下產(chǎn)生、如何傳遞、怎么響應(yīng),而不關(guān)心 其內(nèi)部是如何產(chǎn)生和維護的。也類似于異常機制。通常人認為用 例和用例實現(xiàn)是事物的兩個方面:外部和內(nèi)部。但所謂內(nèi)、外的 概念也是相對的,例如針對程序員和開發(fā)環(huán)境的用例說明,對于 最終用戶來說是用例實現(xiàn)。 第8章 業(yè) 務(wù) 模 型 業(yè)務(wù)用例實現(xiàn)給出業(yè)務(wù)用例工作過程的內(nèi)部視圖。由相 關(guān)的業(yè)務(wù)工人、業(yè)務(wù)實體及交互組成,定義了業(yè)務(wù)用例怎樣 實現(xiàn)(how),與業(yè)務(wù)用例規(guī)格描述(what)是一致的。 總之,業(yè)務(wù)用例的兩種視圖主要是為業(yè)務(wù)相關(guān)的人員設(shè) 計的,包括為業(yè)務(wù)用例外部的人員設(shè)計的外部視圖,為業(yè)務(wù) 用例內(nèi)部的人員設(shè)計的內(nèi)部視圖。 第8章 業(yè) 務(wù) 模 型 8.5 業(yè)務(wù)建模舉例業(yè)務(wù)建模舉例 8.5.1 業(yè)務(wù)目標(biāo)業(yè)務(wù)目

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論