999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于三層結(jié)構(gòu)模型的類模型分析

2013-12-31 00:00:00宋金華
計(jì)算機(jī)時(shí)代 2013年11期

摘 要: 類的構(gòu)造是面向?qū)ο笙到y(tǒng)分析的難點(diǎn),類的構(gòu)造合理與否很大程度上決定了系統(tǒng)的成敗。因此,在面向?qū)ο笙到y(tǒng)分析和設(shè)計(jì)過程中,類模型的分析是復(fù)雜的、重要的且容易重復(fù)勞動(dòng)。為了降低設(shè)計(jì)過程的復(fù)雜性,減少重復(fù)性勞動(dòng),高效率且高質(zhì)量地完成系統(tǒng)建模與設(shè)計(jì),提出一種基于層次結(jié)構(gòu)模型的類模型分析方法,并闡述了這種方法的機(jī)理;結(jié)合“移動(dòng)學(xué)習(xí)系統(tǒng)的學(xué)生選課子系統(tǒng)”的開發(fā)實(shí)例,深入探討了從類模型到層次結(jié)構(gòu)模型的映射過程。

關(guān)鍵詞: 類構(gòu)造; 層次結(jié)構(gòu)模型; 類模型; 三層結(jié)構(gòu)模型

中圖分類號(hào):TP311.5 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2013)11-01-03

0 引言

在傳統(tǒng)的面向?qū)ο蟮姆治雠c設(shè)計(jì)過程中,類的構(gòu)造和軟件架構(gòu)是相互獨(dú)立的,然而類必將映射到軟件架構(gòu)中,這一過程是復(fù)雜且較困難的。類構(gòu)造的合理性以及類與軟件層次結(jié)構(gòu)的相互適應(yīng)性必將影響到系統(tǒng)完成的效率與質(zhì)量。

系統(tǒng)的層次結(jié)構(gòu)是系統(tǒng)設(shè)計(jì)的“軀體”,主要是定義和說明包(子系統(tǒng)),以及包與包之間的相互依賴與通信機(jī)制[1]。類構(gòu)造是系統(tǒng)設(shè)計(jì)的“大腦”,主要是定義系統(tǒng)的運(yùn)作過程,與實(shí)現(xiàn)方法、技術(shù)無關(guān)。因此,基于層次結(jié)構(gòu)模型的類模型分析的優(yōu)點(diǎn)有:①系統(tǒng)結(jié)構(gòu)清晰;②降低設(shè)計(jì)過程的復(fù)雜性;③開發(fā)人員的思路更清晰易懂;④開發(fā)效率高。層次結(jié)構(gòu)模型可以劃分為若干層,目前流行的三層結(jié)構(gòu)模型。

本文選用目前流行的層次結(jié)構(gòu)模型——三層結(jié)構(gòu)模型,結(jié)合“移動(dòng)學(xué)習(xí)系統(tǒng)”的子系統(tǒng)“學(xué)生選課系統(tǒng)”分析設(shè)計(jì)過程,探究如何實(shí)現(xiàn)類模型到層次結(jié)構(gòu)模型的映射。

1 層次結(jié)構(gòu)模型

層次結(jié)構(gòu)(hierarchy)是一種計(jì)算機(jī)操作系統(tǒng)的構(gòu)成方法。它是根據(jù)信息的類型、級(jí)別、優(yōu)先級(jí)等一組特定的規(guī)則排列的一組硬件或軟件項(xiàng)目。這種結(jié)構(gòu)的最大特點(diǎn)就是將一個(gè)大型、復(fù)雜的系統(tǒng)分解成若干單向依賴的層次。該結(jié)構(gòu)通過分解問題來降低問題的復(fù)雜性,從而確保程序的可靠性和易讀性,也便于人們對(duì)系統(tǒng)進(jìn)行局部修改。UNIX操作系統(tǒng)就是采用層次結(jié)構(gòu)實(shí)現(xiàn)結(jié)構(gòu)設(shè)計(jì)的。

層次結(jié)構(gòu)模型也被廣泛用于應(yīng)用軟件的構(gòu)成。層次結(jié)構(gòu)模型的建立,是在深入分析實(shí)際問題的基礎(chǔ)上,將相關(guān)的各個(gè)因素按照不同屬性自上而下地分解成若干層次,同一層的諸因素從屬于上一層的因素或?qū)ι蠈右蛩赜杏绊懀瑫r(shí)又支配下一層的因素或受到下層因素的作用。

目前流行的層次結(jié)構(gòu)模型是三層結(jié)構(gòu)模型,它是在由Buschmann等提出的“層模式”基礎(chǔ)上發(fā)展起來的。三層結(jié)構(gòu)是根據(jù)用戶與軟件系統(tǒng)的交互過程,將系統(tǒng)劃分為由上層到底層的的模型。層次的劃分按照高內(nèi)聚松耦合的原則進(jìn)行劃分。三層結(jié)構(gòu)分別為:用戶表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層。各層的功能如下:將實(shí)現(xiàn)人機(jī)界面的所有表單和組件放在表示層,將所有業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn)封裝在負(fù)責(zé)業(yè)務(wù)邏輯組件中,將所有和數(shù)據(jù)庫的交互封裝在數(shù)據(jù)訪問組件中,如圖1所示。

三層結(jié)構(gòu)是一種嚴(yán)格分層方法,各層只能調(diào)用下一層,且不能越界調(diào)用。用戶通過表示層將請(qǐng)求傳送給業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層完成相關(guān)業(yè)務(wù)規(guī)則和邏輯,并通過數(shù)據(jù)訪問層訪問數(shù)據(jù)庫獲得數(shù)據(jù),然后按照預(yù)想的順序依次返回,并將數(shù)據(jù)顯示在表示層。

2 類的分析構(gòu)造

類的構(gòu)造與分析,是對(duì)現(xiàn)實(shí)世界的抽象,用于處理功能性的需求。在面向?qū)ο蟮姆治鲞^程中,通常從三個(gè)緯度對(duì)系統(tǒng)的類進(jìn)行分析,分別為邊界類、控制類和實(shí)體類[2],如圖2所示。

邊界類表示系統(tǒng)內(nèi)部工作方式與其周圍環(huán)境之間的各種交互作用,用于陳述和收集系統(tǒng)的邊界需求。邊界類包括:通過圖形化用戶界面與用戶交互;與其他參與者交互(如代表其他系統(tǒng)的參與者);與設(shè)備通信等。

控制類用于系統(tǒng)內(nèi)的控制邏輯與模型行為,用于對(duì)某一個(gè)具體的用例相關(guān)的控制或者其他業(yè)務(wù)邏輯建模。通常將協(xié)調(diào)、排序等事物處理或者涉及多個(gè)對(duì)象的復(fù)雜事務(wù)邏輯隔離在一個(gè)或多個(gè)控制類中。

實(shí)體對(duì)象表示對(duì)系統(tǒng)的重要信息。它們通常是持久的,并能在一個(gè)延續(xù)的時(shí)期內(nèi)存在。它們的主要的目的是表示和管理系統(tǒng)內(nèi)的信息。實(shí)體類通常表示為一種邏輯的數(shù)據(jù)結(jié)構(gòu)。

3 類與三層結(jié)構(gòu)模型的映射

統(tǒng)一軟件開發(fā)過程RUP中定義了四個(gè)模型:用例模型、分析模型、設(shè)計(jì)模型和實(shí)現(xiàn)模型[2]。類模型的分析屬于分析階段,三層結(jié)構(gòu)架構(gòu)模型屬于設(shè)計(jì)階段。類模型的分析是與具體實(shí)現(xiàn)無關(guān)的,而三層結(jié)構(gòu)架構(gòu)模型是與具體實(shí)現(xiàn)有關(guān)的。基于設(shè)計(jì)的分析,有助于開發(fā)人員更容易理解系統(tǒng),更容易開發(fā)系統(tǒng)。

通過對(duì)三層結(jié)構(gòu)架構(gòu)模型與類模型的分析,得到如下結(jié)論:邊界類和表示層從不同角度處理與外界的交互,控制類與業(yè)務(wù)邏輯層從不同角度處理服務(wù)行為與動(dòng)作行為,實(shí)體類與數(shù)據(jù)層從不同角度處理持久性數(shù)據(jù)。這樣,在分析類模型的同時(shí),進(jìn)行層次分析。具體類模型到三層結(jié)構(gòu)架構(gòu)模型的映射過程如圖3所示。

4 實(shí)例說明

我們以“學(xué)生選課系統(tǒng)”為例來說明。

4.1 數(shù)據(jù)層的設(shè)計(jì)

4.1.1 實(shí)體類的獲取

對(duì)“學(xué)生選課系統(tǒng)”,采用領(lǐng)域建模的方法,獲取該系統(tǒng)的實(shí)體類。所謂領(lǐng)域建模,就是對(duì)領(lǐng)域內(nèi)的概念類或現(xiàn)實(shí)世界中的對(duì)象進(jìn)行可視化表示,它注重分析問題概念本身,發(fā)掘重要的業(yè)務(wù)領(lǐng)域概念,并建立業(yè)務(wù)領(lǐng)域概念之間的關(guān)系[3]。

領(lǐng)域模型的一個(gè)對(duì)象往往就與一個(gè)實(shí)體類對(duì)應(yīng),它們之間存在著各種關(guān)系,例如,一對(duì)多、多對(duì)多、一對(duì)一、繼承等關(guān)系。根據(jù)“學(xué)生選課”子系統(tǒng)的功能,應(yīng)該創(chuàng)建如下一些領(lǐng)域模型類,即實(shí)體類,如圖4所示。

4.1.2 創(chuàng)建實(shí)體類

通過領(lǐng)域模型分析,得到三個(gè)實(shí)體類,具體如下:

⑴ 學(xué)生實(shí)體類(Student):表示一個(gè)學(xué)生,負(fù)責(zé)進(jìn)行選課。

⑵ 課程實(shí)體類(Course):表示一門課程,可以被學(xué)生選中放入選課信息中。

⑶ 學(xué)生課程實(shí)體類(Scourse):表示屬于學(xué)生的所有所選課程。

4.2 業(yè)務(wù)邏輯層的設(shè)計(jì)

4.2.1 控制類的獲取

業(yè)務(wù)邏輯層是系統(tǒng)中最核心的部分,它關(guān)系到整個(gè)軟件系統(tǒng)的邏輯是怎么執(zhí)行的,功能是怎樣實(shí)現(xiàn)的,完全由用戶的需求來決定,是最靈活的一層。我們通常采用構(gòu)建用例模型,分析業(yè)務(wù)邏輯關(guān)系。

業(yè)務(wù)邏輯的設(shè)計(jì)主要是根據(jù)系統(tǒng)提供的功能而定的,也就是說,系統(tǒng)提供給用戶多少個(gè)功能,就對(duì)應(yīng)著多少個(gè)業(yè)務(wù)邏輯。根據(jù)“學(xué)生選課”子系統(tǒng)的功能,給出該系統(tǒng)的用例模型,如圖5所示。

4.2.2 創(chuàng)建控制類

⑴ 學(xué)生登錄類(StudentLogin)。

⑵ 學(xué)生退出類(StudentCheckout)。

⑶ 學(xué)生選課類(SelectCourse)。

4.3 表示層的設(shè)計(jì)

4.3.1 表示層的設(shè)計(jì)

表示層的作用表示系統(tǒng)內(nèi)部工作方式與其周圍環(huán)境之間的各種交互作用,它們可以把系統(tǒng)的其余部分與外界環(huán)境隔離和屏蔽起來。根據(jù)用戶與系統(tǒng)交互的需求,確定邊界類。

4.3.2 創(chuàng)建邊界類

⑴ 用戶主登錄界面(LogAction):用于登錄,將引用一個(gè)StudentLogin類。

⑵ 選課主界面(ListCourseAction):用于展示課程信息。

⑶ 學(xué)生所選課程界面(StudentCourse):用于顯示學(xué)生所選的課程信息。

5 結(jié)束語

層次結(jié)構(gòu)模型廣泛應(yīng)用于面向?qū)ο笙到y(tǒng)架構(gòu),而在面向?qū)ο笙到y(tǒng)的分析和設(shè)計(jì)過程中,類模型的建立是關(guān)鍵且復(fù)雜的。通過不斷編程實(shí)踐和總結(jié)出的,基于層次結(jié)構(gòu)模型(三層結(jié)構(gòu)模型)的類模型分析方法在軟件開發(fā)過程中很實(shí)用,能顯著降低程序開發(fā)困難,提高開發(fā)效率。

參考文獻(xiàn):

[1] 董連.基于UML和.NET三層B_S系統(tǒng)的開發(fā)[J].計(jì)算機(jī)與數(shù)字工程.2010,38(12):77-80

[2] 李軍.一種從用例模型到分析模型的設(shè)計(jì)方法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012.21(1):191-192

[3] 常倬林.JavaWeb從入門到精通[M].機(jī)械工業(yè)出版社,2011.

[4] 閆敏敏.基于UML與三層架構(gòu)的遠(yuǎn)程教育系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].長(zhǎng)春工程學(xué)院學(xué)報(bào),2012.13(1):95-100

[5] 郭廣軍等.基于SSH整合架構(gòu)的教學(xué)支持系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009.30(13):3111-3116

[6] 李雷等.SSH整合框架的研究與應(yīng)用[J].內(nèi)蒙古工業(yè)大學(xué)學(xué)報(bào),2012.31(2):40-44

[7] 王智超,王敏.軟件開發(fā)過程與UML關(guān)系的研究[J].中國科技信息,2011.20:97

主站蜘蛛池模板: 亚洲欧洲日本在线| 中文字幕 91| jizz国产视频| 精品小视频在线观看| 手机精品视频在线观看免费| 亚洲精品视频免费看| 五月丁香伊人啪啪手机免费观看| 欧美日韩国产高清一区二区三区| 欧美在线中文字幕| 亚洲人在线| 国产乱人伦AV在线A| 大乳丰满人妻中文字幕日本| 国内精品一区二区在线观看 | 国产成人一区免费观看| 国产日韩欧美成人| 日韩av无码DVD| 欧美国产日韩在线| 91在线无码精品秘九色APP| 日韩av在线直播| 国产视频一区二区在线观看 | 男女性色大片免费网站| 中文国产成人精品久久| 亚洲精品视频免费| 亚洲国产清纯| 五月婷婷综合网| 欧美激情首页| 日韩精品毛片| 毛片免费视频| 精品久久人人爽人人玩人人妻| 亚洲国产精品日韩专区AV| 亚洲一区二区无码视频| 嫩草在线视频| 欧美成人日韩| 无码综合天天久久综合网| 久久9966精品国产免费| 四虎影院国产| 一级爱做片免费观看久久 | 538国产在线| 日韩精品久久久久久久电影蜜臀| 日韩毛片免费观看| 蜜桃臀无码内射一区二区三区| 久久激情影院| 亚洲国产中文综合专区在| 亚洲色图欧美在线| 国产青青草视频| 国内精品视频| 国产va视频| 国产精品 欧美激情 在线播放| 欧美午夜理伦三级在线观看| 99精品伊人久久久大香线蕉| 亚洲天堂视频在线免费观看| 无码有码中文字幕| 国产欧美日韩综合在线第一| 91系列在线观看| 国产拍揄自揄精品视频网站| 91口爆吞精国产对白第三集| 久久99国产视频| 毛片一区二区在线看| 久久semm亚洲国产| 国产午夜精品一区二区三| 亚洲动漫h| 九色视频线上播放| 国产靠逼视频| 亚洲天堂网在线观看视频| 亚洲第一区欧美国产综合| 日日拍夜夜操| 亚洲欧美日韩另类| 久久亚洲天堂| 亚洲永久色| 一区二区偷拍美女撒尿视频| 国产资源站| 69视频国产| 四虎成人免费毛片| 欧美成人国产| 亚洲不卡影院| 视频二区中文无码| 伊人久久精品亚洲午夜| 亚洲综合色婷婷中文字幕| 亚洲天堂久久新| 亚洲欧洲自拍拍偷午夜色无码| 国产一级无码不卡视频| 国产精品七七在线播放|