基于三層結構模型的類模型分析(全文)_第1頁
基于三層結構模型的類模型分析(全文)_第2頁
基于三層結構模型的類模型分析(全文)_第3頁
基于三層結構模型的類模型分析(全文)_第4頁
基于三層結構模型的類模型分析(全文)_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于三層結構模型的類模型分析XX:1006-8228(20XX)11-01-030引言在傳統的面向對象的分析與設計過程中,類的構造和軟件架構是相互獨立的,然而類必將映射到軟件架構中,這一過程是復雜且較困難的。類構造的合理性以及類與軟件層次結構的相互適應性必將影響到系統完成的效率與質量。系統的層次結構是系統設計的“軀體”,主要是定義和說明包(子系統),以及包與包之間的相互依賴與通信機制。類構造是系統設計的“大腦”,主要是定義系統的運作過程,與實現方法、技術無關。因此,基于層次結構模型的類模型分析的優點有:系統結構清楚;降低設計過程的復雜性;開發人員的思路更清楚易懂;開發效率高。層次結構模型可以劃

2、分為若干層,目前流行的三層結構模型。本文選用目前流行的層次結構模型三層結構模型,結合“移動學習系統”的子系統“學生選課系統”分析設計過程,探究如何實現類模型到層次結構模型的映射。層次結構模型層次結構(hierrchy)是一種計算機操作系統的構成方法。它是根據信息的類型、級別、優先級等一組特定的規則排列的一組硬件或軟件項目。這種結構的最大特點就是將一個大型、復雜的系統分解成若干單向依賴的層次該結構通過分解問題來降低問題的復雜性,從而確保程序的可靠性和易讀性,也便于人們對系統進行局部修改。UNIX操作系統就是采納層次結構實現結構設計的。層次結構模型也被廣泛用于應用軟件的構成。層次結構模型的建立,是

3、在深入分析實際問題的基礎上,將相關的各個因素按照不同屬性自上而下地分解成若干層次,同一層的諸因素從屬于上一層的因素或對上層因素有影響,同時又支配下一層的因素或受到下層因素的作用。目前流行的層次結構模型是三層結構模型,它是在由Buschmnn等提出的“層模式”基礎上進展起來的。三層結構是根據用戶與軟件系統的交互過程,將系統劃分為由上層到底層的的模型。層次的劃分按照高內聚松耦合的原則進行劃分。三層結構分別為:用戶表示層、業務邏輯層、數據訪問層。各層的功能如下:將實現人機界面的所有表單和組件放在表示層,將所有業務規則和邏輯的實現封裝在負責業務邏輯組件中,將所有和數據庫的交互封裝在數據訪問組件中,如圖

4、1所示。三層結構是一種嚴格分層方法,各層只能調用下一層,且不能越界調用。用戶通過表示層將請求傳送給業務邏輯層,業務邏輯層完成相關業務規則和邏輯,并通過數據訪問層訪問數據庫獲得數據,然后按照預想的順序依次返回,并將數據顯示在表示層。類的分析構造類的構造與分析,是對現實世界的抽象,用于處理功能性的需求。在面向對象的分析過程中,通常從三個緯度對系統的類進行分析,分別為邊界類、操縱類和實體類,如圖2所示。邊界類表示系統內部工作方式與其周圍環境之間的各種交互作用,用于陳述和收集系統的邊界需求。邊界類包括:通過圖形化用戶界面與用戶交互;與其他參與者交互(如代表其他系統的參與者);與設備通信等。操縱類用于系

5、統內的操縱邏輯與模型行為,用于對某一個具體的用例相關的操縱或者其他業務邏輯建模。通常將協調、排序等事物處理或者涉及多個對象的復雜事務邏輯隔離在一個或多個操縱類中。實體對象表示對系統的重要信息。它們通常是持久的,并能在一個連續的時期內存在。它們的主要的目的是表示和治理系統內的信息。實體類通常表示為一種邏輯的數據結構。類與三層結構模型的映射統一軟件開發過程RUP中定義了四個模型:用例模型、分析模型、設計模型和實現模型。類模型的分析屬于分析階段,三層結構架構模型屬于設計階段。類模型的分析是與具體實現無關的,而三層結構架構模型是與具體實現有關的。基于設計的分析,有助于開發人員更容易理解系統,更容易開發

6、系統。通過對三層結構架構模型與類模型的分析,得到如下結論:邊界類和表示層從不同角度處理與外界的交互,操縱類與業務邏輯層從不同角度處理服務行為與動作行為,實體類與數據層從不同角度處理持久性數據。這樣,在分析類模型的同時,進行層次分析。具體類模型到三層結構架構模型的映射過程如圖3所示。實例說明我們以“學生選課系統”為例來說明。數據層的設計實體類的獵取對“學生選課系統”,采納領域建模的方法,獵取該系統的實體類。所謂領域建模,就是對領域內的概念類或現實世界中的對象進行可視化表示,它注重分析問題概念本身,發掘重要的業務領域概念,并建立業務領域概念之間的關系。領域模型的一個對象往往就與一個實體類對應,它們

7、之間存在著各種關系,例如,一對多、多對多、一對一、繼承等關系。根據“學生選課”子系統的功能,應該創建如下一些領域模型類,即實體類,如圖4所示。創建實體類通過領域模型分析,得到三個實體類,具體如下:學生實體類(Student):表示一個學生,負責進行選課。課程實體類(Course):表示一門課程,可以被學生選中放入選課信息中。學生課程實體類(Scourse):表示屬于學生的所有所選課程。業務邏輯層的設計操縱類的獵取業務邏輯層是系統中最核心的部分,它關系到整個軟件系統的邏輯是怎么執行的,功能是怎樣實現的,完全由用戶的需求來決定,是最靈活的一層。我們通常采納構建用例模型,分析業務邏輯關系。業務邏輯的

8、設計主要是根據系統提供的功能而定的,也就是說,系統提供給用戶多少個功能,就對應著多少個業務邏輯。根據“學生選課”子系統的功能,給出該系統的用例模型,如圖5所示。創建操縱類學生登錄類(StudentLogin)。學生退出類(StudentCheckout)。學生選課類(SelectCourse)。表示層的設計表示層的設計表示層的作用表示系統內部工作方式與其周圍環境之間的各種交互作用,它們可以把系統的其余部分與外界環境隔離和屏蔽起來。根據用戶與系統交互的需求,確定邊界類。創建邊界類用戶主登錄界面(Logction):用于登錄,將引用一個StudentLogin類。選課主界面(ListCoursection):用于展示課程信息。學生所選課程界面(StudentCourse):用于顯示學生所選的課

溫馨提示

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

評論

0/150

提交評論