領域模型是什麼意思有什麼核心元素
領域模型是對領域內的概念類或現實世界中物件的視覺化表示。領域模型的主要核心元素相信很多人不是很瞭解吧。以下是由小編整理的領域模型的內容,希望大家喜歡!
領域模型的概念
業務物件模型***也叫領域模型 domain model***是描述業務用例實現的物件模型。它是對業務角色和業務實體之間應該如何聯絡和協作以執行業務的一種抽象。業務物件模型從業務角色內部的觀點定義了業務用例。該模型為產生預期效果確定了業務人員以及他們處理和使用的物件***“業務類和物件”***之間應該具有的靜態和動態關係。它注重業務中承擔的角色及其當前職責。這些模型類的物件組合在一起可以執行所有的業務用例。
領域模型的核心元素
業務角色顯示了一個人承擔的一系列職責。業務實體表示使用或產生的可交付工件、資源和事件。業務用例實現顯示了協作的業務角色和業務實體如何執行某個工作流程。使用以下幾種圖來記錄業務用例實現: 圖顯示參與的業務角色和業務實體。活動圖,其中泳道顯示業務角色的職責,而物件流顯示如何在工作流程中使用業務實體。 序列圖描述業務角色和業務主角之間互動的詳細情況,並顯示如何在業務用例執行過程中訪問業務實體。
業務物件模型將結構的概念和行為的概念結合了起來。
它是一個紐帶工件,用於對業務關係進行清晰的表述,表述方式與軟體開發人員的思考方式類似,同時仍保留一些純粹的業務內容。將我們所知道的有關業務的資訊按照物件、屬性和職責進行了合併。
它探索業務領域知識的本質,所採用的方式使我們能夠從對業務問題的思考轉變到對軟體應用程式的思考上來。
它是一種確定需求的方法,使需求能夠為待建資訊系統使用,並得到該系統的支援。
確定業務物件定義、物件間關係、物件名稱和物件間關係名稱的流程使我們能夠以一種能被業務領域專家理解和驗證的精確方式來表達業務領域知識。
領域模型的模型
在業務物件模型中,業務角色代表僱員將擔當的角色,而業務實體則代表僱員將處理的物件。一方面,可以使用業務物件模型來確定業務僱員將如何進行互動,以產生業務主角所期望的結果。另一方面,系統用例模型和設計模型指定了業務的資訊系統。
業務建模和系統建模解決不同的問題,其抽象程度也不一樣。所以一般而言,資訊系統不應該直接出現在業務模型中。
另一方面,僱員作為業務角色來使用資訊系統,實現相互之間的通訊、與主角的通訊以及對業務實體資訊進行訪問。所有的連結、關聯關係或屬性都有某個潛在的資訊系統對其進行支援。
這兩類建模環境有以下關係:
作為特定業務角色的僱員與資訊系統的一個系統主角相對應。如果建立的資訊系統使該僱員在業務用例中的所有工作都得到一個系統用例的支援,則他最有可能得到最好的支援。 另外,如果業務用例規模大、生存期長或者合併了多個獨立領域中的工作,資訊系統用例將可以支援業務角色的操作。 僱員工作的物件***建模為業務實體***常在資訊系統中得到表現。在資訊系統的物件模型中,這些業務實體作為實體類出現。業務實體之間的關聯關係和聚合關係常常使設計模型中實體類之間產生對應的關聯關係和聚合關係。 因此,系統用例訪問並操作設計模型中的實體類,這些實體類代表由被支援業務用例訪問的業務實體。最後,直接使用業務資訊系統的業務主角也成為資訊系統的系統主角。 當確定對支援業務的資訊系統的需求時,這些關係十分關鍵。
領域模型的關係
認為領域模型它是一個分析模型,幫助系統分析人員、使用者認識現實業務的工具,描述的是業務中涉及到的實體及其相互之間的關係,它是需求分析的產物,與問題領域相關。領域模型是需求分析人員與使用者交流的有力工具,是需求分析人員與使用者共同理解的概念,是彼此之間交流的語言。而資料模型是系統設計、實現的一部分,描述的是對使用者需求在資料結構上的實現,僅此而已。當然資料模型中的概念模型設計與領域模型類似,缺乏的是實體之間更廣泛的關係描述。
通常大家會考慮資料怎麼存放的問題,我的理解是領域模型設計期間不用考慮資料的存放問題,只考慮業務描述中涉及的實體以及實體之間的關係。
實體之間的關係,很多書都講了,無非是泛化、依賴和關聯,關聯又分了一般關聯、聚合、組合等等,我這裡就不列了。
領域模型的定位
通常的做法是不在業務物件模型中對資訊系統進行明確建模,因為資訊系統只是業務角色所使用的工具而已。但當業務的資訊系統被客戶直接使用時,這種做法就不合適了。如果這個互動是業務服務的主要部分,您可能會出於商業上重要性的考慮而希望在業務物件模型中將其展示出來。電話銀行業務就是此類資訊系統的一個很好的例子。
從業務建模的觀點來看,建議使用以下方法:
將資訊系統看做一個和主角互動的完全自動化的業務角色。如果資訊系統和任何其他業務角色或業務實體相關,則考慮使用連結或關聯關係來說明這種關係。系統可能會向某個業務角色通知其進度,或者使用與某個業務實體相關的資訊。 簡單地說明業務角色,同時列出代表業務物件模型中資訊系統的服務。在資訊系統模型中對資訊系統和其環境的所有細節和特徵進行建模。引入一個命名約定,這樣可以容易地在業務角色中確定那些完全自動化的業務角色,例如,一個字首或字尾,如"自動<業務角色名稱>"或"<業務角色名稱>***IT 系統***"。您甚至可以使用一個特殊的圖示來定義構造型。
領域模型的模型