檔案系統的業務領域建模

2022-09-01 15:00:16 字數 1884 閱讀 7096

領域模型是什麼

領域模型,又稱概念模型、領域物件模型、分析物件模型,是對領域內的概念類或現實世界中物件的視覺化表示,其將結構的概念和行為的概念結合了起來。在書《uml和模式應用》中,就認為領域模型是需求分析階段的業務模型,是一種業務概念實體的模型。它專注於分析問題領域本身,發掘重要的業務領域概念,並建立業務領域概念之間的關係。領域模型構成了您的模型的靜態部分的基礎,而用例是動態部分的基礎。靜態部分描述結構;動態部分描述行為。

下面將從領域模型和業務模型之間區別的角度來舉個例子對其概念加以說明。如乙個讀者持借書卡去圖書館借書這個場景,在業務模型中會存在乙個借書卡的業務概念,而在領域模型中,我們很可能會去掉借書卡,因為它只是乙個借書的工具,是借書系統用來識別讀者的乙個工具,系統真的的目的是為了知道哪個賬號在借書,而不關心如何識別出這個賬號。

(業務建模是以軟體模型方式描述企業管理和業務所涉及的物件和要素、以及它們的屬性、行為和彼此關係,業務建模強調以體系的方式來理解、設計和構架企業資訊系統)

***對業務領域模型的理解***

每乙個複雜的軟體都應該按層來組織,每一層就代表系統的乙個邏輯部件。其中,抽象的講業務邏輯層是系統的一部分,用來處理和業務相關的任務,其處在乙個分層系統的中間,和表現層、資料訪問層交換資訊。而業務領域模型即為業務層實現乙個結構化的檢視。

***為什麼要進行業務領域建模***

領域建模可以降低軟體和現實世界之間的差異,用真實的業務概念劃分職責,目的是實現乙個可以高效低成本維護的可持續發展的軟體系統。

從領域模型推導到系統實現是一套引導思考的方式,也是一套科學的開發流程。其核心目的在於提供了系統設計的「指導方針」。領域模型必須站在使用者需求和業務發展的角度上,既可以用來同客戶溝通驗證需求,又可以避免模型因實現的考量而帶偏(實現成本、遺留系統)

軟體工程師需要在不同的領域或不同的專案中工作,來自不同的背景,這可能會影響他們對應用程式域的感知。他們需要領域知識來開發系統。

***領域建模一般步驟***

– focus on the functional requirements

– also consider other requirements and documents

brainstorming

classifying the domain concepts into:

– classes

– attributes / attribute values

– relationships

• association, inheritance, aggregation

document result using uml class diagram

首先是收集業務領域資訊,我們不僅要關注業務功能要求,還需要考慮其他的要求和檔案。

而我們工程實踐的題目為低功耗檔案系統的實現,主要應用場景為各種型別嵌入式裝置,為我們的終端提供檔案訪問、管理等功能,具體來說有:提供檔案基本操作介面、提供裝置檔案管理方案、提供合適的低功耗方案等。

brainstorming

接著要根據上一步列出重要的應用領域概念以及他們的屬性,還需要找出互相之間存在的關係並列出來。

操作介面:檔案屬性(檔案id、檔案型別、檔案許可權),檔案具體操作id,檔案具體操作功能(檔案開啟、檔案關閉、檔案讀、檔案寫)等

檔案管理:檔案屬性(檔案id、檔案型別、檔案許可權)、管理型別(掛起、喚醒、入棧、出棧等)、操作所需結構(佇列、鍊錶、堆疊等)

低功耗:(接觸中。。。)

classifying the domain concepts

然後對領域概念進行分類

檔案屬性類、檔案操作類、檔案管理類

*document result using uml class diagram*

最後根據以上分析製作完成類圖

領域、業務、業務模型

業務層領域模型物件模型

業務領域建模Domain Modeling

每個業務都有乙個對應的業務模型,這個業務模型設計的時候,完全不需要考慮任何軟體設計的思想,比如物件的抽象 繼承 儲存 效能,等。我們是從業務本身出發,分析業務邊界範圍內的各種業務概念,以及業務概念之間的關係,通常我們可以使用乙個業務模型的圖來表達這些業務概念以及業務概念之間的關係。那麼如何得到乙個業...

業務領域建模Domain Modeling

以您的工程實踐專案為例,在深入理解需求的基礎上進行業務領域建模domain modeling 最終畫出業務類圖,並說明業務類圖中每乙個類 屬性 方法的 對於有關聯類association class的情況要進一步給出關聯式資料庫的模型。記住 我們是對業務建模,不是對系統建模!我的工程實踐題目改成了 ...

業務領域建模Domain Modeling

我的工程實踐業務是設計和實現乙個搜尋引擎,並在此基礎上搭建乙個食譜查詢服務。1 找出業務中用到的類 食譜 食材 食材處理步驟 食譜爬蟲 請求分發處理器 分詞器 相似度衡量器 計算詞向量相似度 食譜queryer web服務請求者 使用者 系統管理員 2 建立類和類之間的聯絡 類與類之間的關係通常包括...