領(lǐng)域模型是什么意思有什么核心元素
領(lǐng)域模型是對領(lǐng)域內(nèi)的概念類或現(xiàn)實世界中對象的可視化表示。領(lǐng)域模型的主要核心元素相信很多人不是很了解吧。以下是由學(xué)習(xí)啦小編整理的領(lǐng)域模型的內(nèi)容,希望大家喜歡!
領(lǐng)域模型的概念
業(yè)務(wù)對象模型(也叫領(lǐng)域模型 domain model)是描述業(yè)務(wù)用例實現(xiàn)的對象模型。它是對業(yè)務(wù)角色和業(yè)務(wù)實體之間應(yīng)該如何聯(lián)系和協(xié)作以執(zhí)行業(yè)務(wù)的一種抽象。業(yè)務(wù)對象模型從業(yè)務(wù)角色內(nèi)部的觀點定義了業(yè)務(wù)用例。該模型為產(chǎn)生預(yù)期效果確定了業(yè)務(wù)人員以及他們處理和使用的對象(“業(yè)務(wù)類和對象”)之間應(yīng)該具有的靜態(tài)和動態(tài)關(guān)系。它注重業(yè)務(wù)中承擔(dān)的角色及其當(dāng)前職責(zé)。這些模型類的對象組合在一起可以執(zhí)行所有的業(yè)務(wù)用例。
領(lǐng)域模型的核心元素
業(yè)務(wù)角色顯示了一個人承擔(dān)的一系列職責(zé)。業(yè)務(wù)實體表示使用或產(chǎn)生的可交付工件、資源和事件。業(yè)務(wù)用例實現(xiàn)顯示了協(xié)作的業(yè)務(wù)角色和業(yè)務(wù)實體如何執(zhí)行某個工作流程。使用以下幾種圖來記錄業(yè)務(wù)用例實現(xiàn): 圖顯示參與的業(yè)務(wù)角色和業(yè)務(wù)實體?;顒訄D,其中泳道顯示業(yè)務(wù)角色的職責(zé),而對象流顯示如何在工作流程中使用業(yè)務(wù)實體。 序列圖描述業(yè)務(wù)角色和業(yè)務(wù)主角之間交互的詳細(xì)情況,并顯示如何在業(yè)務(wù)用例執(zhí)行過程中訪問業(yè)務(wù)實體。
業(yè)務(wù)對象模型將結(jié)構(gòu)的概念和行為的概念結(jié)合了起來。
它是一個紐帶工件,用于對業(yè)務(wù)關(guān)系進(jìn)行清晰的表述,表述方式與軟件開發(fā)人員的思考方式類似,同時仍保留一些純粹的業(yè)務(wù)內(nèi)容。將我們所知道的有關(guān)業(yè)務(wù)的信息按照對象、屬性和職責(zé)進(jìn)行了合并。
它探索業(yè)務(wù)領(lǐng)域知識的本質(zhì),所采用的方式使我們能夠從對業(yè)務(wù)問題的思考轉(zhuǎn)變到對軟件應(yīng)用程序的思考上來。
它是一種確定需求的方法,使需求能夠為待建信息系統(tǒng)使用,并得到該系統(tǒng)的支持。
確定業(yè)務(wù)對象定義、對象間關(guān)系、對象名稱和對象間關(guān)系名稱的流程使我們能夠以一種能被業(yè)務(wù)領(lǐng)域?qū)<依斫夂万炞C的精確方式來表達(dá)業(yè)務(wù)領(lǐng)域知識。
領(lǐng)域模型的模型
在業(yè)務(wù)對象模型中,業(yè)務(wù)角色代表雇員將擔(dān)當(dāng)?shù)慕巧?,而業(yè)務(wù)實體則代表雇員將處理的對象。一方面,可以使用業(yè)務(wù)對象模型來確定業(yè)務(wù)雇員將如何進(jìn)行交互,以產(chǎn)生業(yè)務(wù)主角所期望的結(jié)果。另一方面,系統(tǒng)用例模型和設(shè)計模型指定了業(yè)務(wù)的信息系統(tǒng)。
業(yè)務(wù)建模和系統(tǒng)建模解決不同的問題,其抽象程度也不一樣。所以一般而言,信息系統(tǒng)不應(yīng)該直接出現(xiàn)在業(yè)務(wù)模型中。
另一方面,雇員作為業(yè)務(wù)角色來使用信息系統(tǒng),實現(xiàn)相互之間的通信、與主角的通信以及對業(yè)務(wù)實體信息進(jìn)行訪問。所有的鏈接、關(guān)聯(lián)關(guān)系或?qū)傩远加心硞€潛在的信息系統(tǒng)對其進(jìn)行支持。
這兩類建模環(huán)境有以下關(guān)系:
作為特定業(yè)務(wù)角色的雇員與信息系統(tǒng)的一個系統(tǒng)主角相對應(yīng)。如果建立的信息系統(tǒng)使該雇員在業(yè)務(wù)用例中的所有工作都得到一個系統(tǒng)用例的支持,則他最有可能得到最好的支持。 另外,如果業(yè)務(wù)用例規(guī)模大、生存期長或者合并了多個獨(dú)立領(lǐng)域中的工作,信息系統(tǒng)用例將可以支持業(yè)務(wù)角色的操作。 雇員工作的對象(建模為業(yè)務(wù)實體)常在信息系統(tǒng)中得到表現(xiàn)。在信息系統(tǒng)的對象模型中,這些業(yè)務(wù)實體作為實體類出現(xiàn)。業(yè)務(wù)實體之間的關(guān)聯(lián)關(guān)系和聚合關(guān)系常常使設(shè)計模型中實體類之間產(chǎn)生對應(yīng)的關(guān)聯(lián)關(guān)系和聚合關(guān)系。 因此,系統(tǒng)用例訪問并操作設(shè)計模型中的實體類,這些實體類代表由被支持業(yè)務(wù)用例訪問的業(yè)務(wù)實體。最后,直接使用業(yè)務(wù)信息系統(tǒng)的業(yè)務(wù)主角也成為信息系統(tǒng)的系統(tǒng)主角。 當(dāng)確定對支持業(yè)務(wù)的信息系統(tǒng)的需求時,這些關(guān)系十分關(guān)鍵。
領(lǐng)域模型的關(guān)系
認(rèn)為領(lǐng)域模型它是一個分析模型,幫助系統(tǒng)分析人員、用戶認(rèn)識現(xiàn)實業(yè)務(wù)的工具,描述的是業(yè)務(wù)中涉及到的實體及其相互之間的關(guān)系,它是需求分析的產(chǎn)物,與問題領(lǐng)域相關(guān)。領(lǐng)域模型是需求分析人員與用戶交流的有力工具,是需求分析人員與用戶共同理解的概念,是彼此之間交流的語言。而數(shù)據(jù)模型是系統(tǒng)設(shè)計、實現(xiàn)的一部分,描述的是對用戶需求在數(shù)據(jù)結(jié)構(gòu)上的實現(xiàn),僅此而已。當(dāng)然數(shù)據(jù)模型中的概念模型設(shè)計與領(lǐng)域模型類似,缺乏的是實體之間更廣泛的關(guān)系描述。
通常大家會考慮數(shù)據(jù)怎么存放的問題,我的理解是領(lǐng)域模型設(shè)計期間不用考慮數(shù)據(jù)的存放問題,只考慮業(yè)務(wù)描述中涉及的實體以及實體之間的關(guān)系。
實體之間的關(guān)系,很多書都講了,無非是泛化、依賴和關(guān)聯(lián),關(guān)聯(lián)又分了一般關(guān)聯(lián)、聚合、組合等等,我這里就不列了。
領(lǐng)域模型的定位
通常的做法是不在業(yè)務(wù)對象模型中對信息系統(tǒng)進(jìn)行明確建模,因為信息系統(tǒng)只是業(yè)務(wù)角色所使用的工具而已。但當(dāng)業(yè)務(wù)的信息系統(tǒng)被客戶直接使用時,這種做法就不合適了。如果這個交互是業(yè)務(wù)服務(wù)的主要部分,您可能會出于商業(yè)上重要性的考慮而希望在業(yè)務(wù)對象模型中將其展示出來。電話銀行業(yè)務(wù)就是此類信息系統(tǒng)的一個很好的例子。
從業(yè)務(wù)建模的觀點來看,建議使用以下方法:
將信息系統(tǒng)看做一個和主角交互的完全自動化的業(yè)務(wù)角色。如果信息系統(tǒng)和任何其他業(yè)務(wù)角色或業(yè)務(wù)實體相關(guān),則考慮使用鏈接或關(guān)聯(lián)關(guān)系來說明這種關(guān)系。系統(tǒng)可能會向某個業(yè)務(wù)角色通知其進(jìn)度,或者使用與某個業(yè)務(wù)實體相關(guān)的信息。 簡單地說明業(yè)務(wù)角色,同時列出代表業(yè)務(wù)對象模型中信息系統(tǒng)的服務(wù)。在信息系統(tǒng)模型中對信息系統(tǒng)和其環(huán)境的所有細(xì)節(jié)和特征進(jìn)行建模。引入一個命名約定,這樣可以容易地在業(yè)務(wù)角色中確定那些完全自動化的業(yè)務(wù)角色,例如,一個前綴或后綴,如"自動<業(yè)務(wù)角色名稱>"或"<業(yè)務(wù)角色名稱>(IT 系統(tǒng))"。您甚至可以使用一個特殊的圖標(biāo)來定義構(gòu)造型。
看過“領(lǐng)域模型的模型”的人還看了:
3.什么是模型
5.什么是零序電流