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

面向領(lǐng)域的.NET應(yīng)用系統(tǒng)開(kāi)發(fā)架構(gòu)研究

2011-02-09 01:58:00雪,鹿旸,張
制造業(yè)自動(dòng)化 2011年10期
關(guān)鍵詞:模型系統(tǒng)

王 雪,鹿 旸,張 辛

(中國(guó)地質(zhì)大學(xué)(北京) 軟件學(xué)院,北京 100083)

0 引言

領(lǐng)域是指一組具有相似或相近軟件需求的應(yīng)用系統(tǒng)所覆蓋的功能區(qū)域[1]。在傳統(tǒng)的軟件開(kāi)發(fā)中,從對(duì)軟件系統(tǒng)最初的概念到可操作實(shí)現(xiàn)的過(guò)程,有多個(gè)環(huán)節(jié)多種工作是重復(fù)勞動(dòng)的。軟件工程中軟件復(fù)用的思想就是為了避免重復(fù)勞動(dòng)的解決方案,其出發(fā)點(diǎn)就是應(yīng)用系統(tǒng)的開(kāi)發(fā)不再采用一切“從零開(kāi)始”的模式,而是充分利用過(guò)去應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程中積累的知識(shí)和經(jīng)驗(yàn),從而使軟件工作者著重于新系統(tǒng)中的新問(wèn)題和新需求。領(lǐng)域工程就是以軟件復(fù)用為目的,解決可復(fù)用信息的識(shí)別、組織和利用問(wèn)題。它是軟件開(kāi)發(fā)者用于為相應(yīng)領(lǐng)域定義范圍、指定結(jié)構(gòu)和創(chuàng)建可復(fù)用資產(chǎn)的過(guò)程和實(shí)踐,涵蓋界定、分類及創(chuàng)建可復(fù)用構(gòu)件的所有活動(dòng)。

領(lǐng)域工程是基于可重用構(gòu)件的,軟件產(chǎn)品中的通用功能嵌入在各種軟件構(gòu)件之中,因此領(lǐng)域工程中一項(xiàng)很重要的工作就是生產(chǎn)和組織封裝性良好的和易于重用的軟件構(gòu)件。基于構(gòu)件的軟件開(kāi)發(fā)重在構(gòu)件的集成而不是軟件的編程。近年來(lái),軟件復(fù)用的研究結(jié)果表明基于體系結(jié)構(gòu)、特定領(lǐng)域的重用能在軟件的質(zhì)量和產(chǎn)量上有較大的改進(jìn)。軟件的體系機(jī)構(gòu)或者說(shuō)架構(gòu)是一組協(xié)同工作的類,它們?yōu)樘囟愋偷能浖?gòu)筑了一個(gè)可重用的設(shè)計(jì)。面向領(lǐng)域的軟件產(chǎn)品族架構(gòu)同過(guò)去的單一軟件產(chǎn)品的體系架構(gòu)不同之處就在于領(lǐng)域平臺(tái)提供了公共資產(chǎn),包含領(lǐng)域框架、領(lǐng)域建模工具、公共構(gòu)件庫(kù)等。

1 平臺(tái)與架構(gòu)

1.1 .NET框架

.NET Framework在底層的執(zhí)行引擎源于托管的虛擬機(jī)概念,其通用語(yǔ)言運(yùn)行時(shí)不僅支持內(nèi)存回收機(jī)制和異常處理機(jī)制,并且實(shí)現(xiàn)了跨語(yǔ)言承諾和組件自描述等特性。其次,.NET Framework為面向?qū)ο蟪绦蛟O(shè)計(jì)提供了單根繼承、多接口實(shí)現(xiàn)等直接的支持,提供了繪圖、網(wǎng)絡(luò)、線程、ADO.NET等一系列的API,可以說(shuō)對(duì)現(xiàn)代組件編程從設(shè)計(jì)、編碼、配置到運(yùn)行都給予了很好的支持。作為新一代應(yīng)用程序的開(kāi)發(fā)平臺(tái),其平臺(tái)構(gòu)造對(duì)其代碼的生產(chǎn)性與移植性是高效的[2]。

1.2 系統(tǒng)架構(gòu)

在軟件的體系架構(gòu)中,分層式結(jié)構(gòu)是最為常見(jiàn)也最為重要的一種結(jié)構(gòu)[3]。如圖1所示是.NET中標(biāo)準(zhǔn)的B/S分層式結(jié)構(gòu)。

基于.NET Framework的應(yīng)用程序一般屬于如上的三層式結(jié)構(gòu):數(shù)據(jù)訪問(wèn)層、業(yè)務(wù)邏輯層和表示層。數(shù)據(jù)訪問(wèn)層主要負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)的操作;業(yè)務(wù)邏輯層是整個(gè)系統(tǒng)的核心,涉及到系統(tǒng)相關(guān)的業(yè)務(wù);表示層主要負(fù)責(zé)使用者與系統(tǒng)的交互,側(cè)重用戶的體驗(yàn)。分層式結(jié)構(gòu)降低了層與層之間的依賴,有利用各層模塊的修改與復(fù)用,使開(kāi)發(fā)人員可以只關(guān)注其整個(gè)結(jié)構(gòu)中的某一層。概括來(lái)說(shuō),分層式設(shè)計(jì)可以達(dá)到如下目的:分散關(guān)注、松散耦合、邏輯復(fù)用和標(biāo)準(zhǔn)定義的目的,從而提高了開(kāi)發(fā)效率。

一般而言,應(yīng)用系統(tǒng)的架構(gòu)包含兩個(gè)因素:首先,它是一個(gè)應(yīng)用系統(tǒng)從整體到部分的最高層次的劃分,包括架構(gòu)元素、連接器和任務(wù)流;其次,它是開(kāi)發(fā)一個(gè)應(yīng)用系統(tǒng)所做出的最高層次的、以后難以更改的商業(yè)的和技術(shù)的決定,因此,軟件架構(gòu)是系統(tǒng)成敗的重要決定。軟件架構(gòu)是一個(gè)應(yīng)用系統(tǒng)的草圖,描述的對(duì)象是直接構(gòu)成應(yīng)用系統(tǒng)的抽象組件,各個(gè)組件之間的連接明確和相對(duì)細(xì)致地描述了組件間的通訊。因此,一個(gè)好的應(yīng)用程序架構(gòu)需要滿足安全性、可靠性、可擴(kuò)展性、可維護(hù)性以及可定制化這些要求。

圖1 .NET中標(biāo)準(zhǔn)的B/S分層式結(jié)構(gòu)

2 面向領(lǐng)域的軟件架構(gòu)

2.1 領(lǐng)域工程

過(guò)去軟件工程中關(guān)注的軟件開(kāi)發(fā)大多是針對(duì)一個(gè)單獨(dú)的應(yīng)用系統(tǒng),即針對(duì)特定的用戶需求和背景給予分析、設(shè)計(jì)和實(shí)現(xiàn)。隨著軟件工程領(lǐng)域的不斷發(fā)展,這種高成本、長(zhǎng)周期的開(kāi)發(fā)模式已經(jīng)不適用現(xiàn)在日益激烈的市場(chǎng)競(jìng)爭(zhēng)和多變的軟件需求。軟件產(chǎn)品需要進(jìn)化,軟件的生產(chǎn)模式同樣需要進(jìn)化。領(lǐng)域工程便是實(shí)現(xiàn)這種軟件生產(chǎn)模式進(jìn)化的重要手段,使軟件生產(chǎn)由“單一模式”走向“工廠模式”。

領(lǐng)域工程包括:領(lǐng)域分析、領(lǐng)域設(shè)計(jì)與領(lǐng)域?qū)崿F(xiàn)。領(lǐng)域分析定義領(lǐng)域范圍,識(shí)別領(lǐng)域中應(yīng)用的共同特征和可變特征,從而建立領(lǐng)域模型。領(lǐng)域分析基于兩個(gè)概念:抽象和求精。抽象是一種處理復(fù)雜性的有效手段,領(lǐng)域分析使用抽象原則降低復(fù)雜性,有效地從領(lǐng)域的一系列應(yīng)用中抽取特征,創(chuàng)建領(lǐng)域分析產(chǎn)品;對(duì)領(lǐng)域分析產(chǎn)品進(jìn)行求精就可以開(kāi)發(fā)領(lǐng)域中的特定應(yīng)用。領(lǐng)域設(shè)計(jì)和領(lǐng)域?qū)崿F(xiàn)分別根據(jù)領(lǐng)域模型給出設(shè)計(jì)與實(shí)現(xiàn)。因此說(shuō),領(lǐng)域分析是面向領(lǐng)域的軟件工程中開(kāi)發(fā)經(jīng)驗(yàn)的系統(tǒng)的和正、逆向的整合。

2.2 面向領(lǐng)域的軟件架構(gòu)

面向領(lǐng)域的軟件架構(gòu)與單一的軟件架構(gòu)不同之處在于增加了領(lǐng)域平臺(tái),如圖2所示,應(yīng)用系統(tǒng)層主要指基于領(lǐng)域工程的特定的軟件應(yīng)用;領(lǐng)域平臺(tái)層主要包括領(lǐng)域框架、領(lǐng)域建模及相應(yīng)的軟件資源庫(kù);基礎(chǔ)設(shè)施層包括各種服務(wù)器、數(shù)據(jù)庫(kù)及操作系統(tǒng)。一個(gè)應(yīng)用系統(tǒng)可以根據(jù)用戶的具體需求對(duì)領(lǐng)域平臺(tái)中的資源進(jìn)行整合,包括選擇、裁剪和添加。

圖2 面向領(lǐng)域的軟件產(chǎn)品架構(gòu)

基于領(lǐng)域的軟件工程過(guò)程模型可簡(jiǎn)化為如圖3所示形式。其中需求分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)現(xiàn)三個(gè)階段均可以有領(lǐng)域工程的參與,這樣軟件工作者能夠快速并高效地建立一個(gè)應(yīng)用系統(tǒng)。具體來(lái)說(shuō),任何一個(gè)應(yīng)用程序都可以從領(lǐng)域平臺(tái)中復(fù)用領(lǐng)域通用功能及其相應(yīng)構(gòu)件,同時(shí)把差異功能及其構(gòu)件提供給領(lǐng)域平臺(tái)。

3 面向領(lǐng)域的.NET應(yīng)用系統(tǒng)架構(gòu)

3.1 面向領(lǐng)域的.NET應(yīng)用系統(tǒng)架構(gòu)

面向領(lǐng)域的. NET應(yīng)用系統(tǒng)架構(gòu)就是指借助于.NET開(kāi)發(fā)平臺(tái)對(duì)某一領(lǐng)域問(wèn)題所建立的通用的軟件架構(gòu),它的功能在于能夠把握許多相似應(yīng)用程序的結(jié)構(gòu),為運(yùn)行一批對(duì)象提供了一個(gè)有組織的環(huán)境。基于該思想應(yīng)用系統(tǒng)開(kāi)發(fā)轉(zhuǎn)變成以構(gòu)件庫(kù)為中心的開(kāi)發(fā),實(shí)現(xiàn)動(dòng)態(tài)地組裝構(gòu)件從而完成軟件的即插即用。構(gòu)件資源庫(kù)可以是任何已有的或待開(kāi)發(fā)的構(gòu)件,是對(duì)領(lǐng)域中某種功能的實(shí)現(xiàn),可以是共性的資源,也可以是特性的資源。

.NET中構(gòu)件是包含描述源碼中定義和引用類型和成員數(shù)據(jù)的程序集,面向.NET Framework的編譯器向所有的模塊和程序集嵌入元數(shù)據(jù),使.NET構(gòu)件成為自描述構(gòu)件,這種方式有助于構(gòu)件的無(wú)縫集成。.NET的開(kāi)發(fā)環(huán)境可以根據(jù)服務(wù)器構(gòu)件程序集中的元數(shù)據(jù)了解服務(wù)器構(gòu)件里的類及其方法、屬性、接口及事件等信息,構(gòu)件的交互只依賴于.NET的基礎(chǔ)機(jī)制。.NET構(gòu)件支持語(yǔ)言互用性,在程序編碼時(shí)允許使用另一種語(yǔ)言所開(kāi)發(fā)的構(gòu)件。

.NET應(yīng)用程序和應(yīng)用程序域通過(guò)消息進(jìn)行彼此的通信,.NET信道服務(wù)為此通信提供了基礎(chǔ)傳輸機(jī)制。.NET應(yīng)用程序配置文件相當(dāng)于COM中系統(tǒng)注冊(cè)表的作用,登記構(gòu)件的位置、構(gòu)件對(duì)象的激活類型和通信的信道配置等。.NET模型支持web服務(wù),其底層細(xì)節(jié)均由.NET框架完成,減少了對(duì)操作系統(tǒng)的依賴性。因此,.NET構(gòu)件之間的交互更簡(jiǎn)便,給程序開(kāi)發(fā)帶來(lái)了便利。作為構(gòu)件技術(shù)的.NET簡(jiǎn)化了構(gòu)件軟件的開(kāi)發(fā)和軟件構(gòu)件的部署,.NET構(gòu)件模型是一種更理想的軟件構(gòu)件模型。這些也就是在開(kāi)發(fā)大型而復(fù)雜的應(yīng)用系統(tǒng)時(shí)建議使用.NET平臺(tái)的理由。

圖3 基于領(lǐng)域的應(yīng)用系統(tǒng)開(kāi)發(fā)模型

圖4 面向領(lǐng)域的LEC應(yīng)用系統(tǒng)架構(gòu)

3.2 案例分析

比如對(duì)于微軟推出的基于ASP.NET的PetShop以及現(xiàn)在具有廣泛應(yīng)用的圖書(shū)銷售系統(tǒng)、電子訂餐系統(tǒng)等電子商務(wù)類的應(yīng)用程序,他們?cè)谙到y(tǒng)架構(gòu)上和功能上存在極大的相似性,如果逐一開(kāi)發(fā),就會(huì)導(dǎo)致重復(fù)工作和效率低下。借助于.NET框架及其優(yōu)良的構(gòu)件模型,搭建一個(gè)面向領(lǐng)域的輕量級(jí)電子商務(wù)應(yīng)用系統(tǒng)(Lightweight Electronic Commerce, LEC)架構(gòu)。一般來(lái)說(shuō),該類應(yīng)用程序包括以下基本功能:用戶管理模塊、購(gòu)物車模塊、訂單結(jié)算模塊、商品瀏覽模塊、商品管理模塊。對(duì)應(yīng)的LEC架構(gòu)如圖4所示。

其中,功能構(gòu)件庫(kù)中的構(gòu)件是可定制的,對(duì)于電子商務(wù)類門(mén)戶系統(tǒng),可以根據(jù)用戶的具體需求,應(yīng)用定制工具選取相應(yīng)的構(gòu)件。當(dāng)某個(gè)用戶的需求沒(méi)有相應(yīng)的構(gòu)件在構(gòu)件庫(kù)中存在時(shí),可以向構(gòu)件庫(kù)中添加相應(yīng)構(gòu)件,因此構(gòu)件庫(kù)是可擴(kuò)充的。采用定制工具這種可配置的體系結(jié)構(gòu),可以快速滿足用戶的需求,開(kāi)發(fā)出滿足用戶的新系統(tǒng)。

4 結(jié)束語(yǔ)

良好的系統(tǒng)架構(gòu)和領(lǐng)域工程的思想可有效地提高軟件的可重用性和可維護(hù)性。本文通過(guò)對(duì).NET框架多層系統(tǒng)架構(gòu)及構(gòu)件開(kāi)發(fā)模型的分析,給出了面向領(lǐng)域的輕量級(jí)電子商務(wù)類應(yīng)用系統(tǒng)的構(gòu)件式開(kāi)發(fā)架構(gòu),雖然不同領(lǐng)域有不同的特點(diǎn),但是基于.NET多層架構(gòu)領(lǐng)域模型的應(yīng)用系統(tǒng)開(kāi)發(fā)的思路同樣適用于其它領(lǐng)域。

[1] 焦金丹, 胡金柱, 等. 基于軟件復(fù)用的領(lǐng)域分析和建模技術(shù)[J]. 微電子學(xué)與計(jì)算機(jī). 2006, 23(增刊):143-145.

[2] 曾誠(chéng). 高性能ASP.NET應(yīng)用程序的探討與研究[J]. 湖北大學(xué)學(xué)報(bào), 2004:22-26.

[3] 章利. 基于.NET的多層分布式企業(yè)應(yīng)用架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 2007.

[4] 惠長(zhǎng)江, 吳江. 軟件進(jìn)化研究綜述[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2007, 17(4):196-200.

[5] 黃玉坤. 軟件復(fù)用技術(shù)及領(lǐng)域工程綜述[J]. 計(jì)算機(jī)與現(xiàn)代化, 2007(11):43-48.

[6] Jesse Liberty, Dan Hurwitz. Programming in ASP.NET[M].Wrox,2004.

[7] Jeffrey. Applied Microsoft.NET Framework programming[M]. Wintellect, 2003.

[8 ] Xuehong Dui, Jianxin Jiao, MitchellM Tseng. Architecture of Product Family for Mass Custiomization[J]. ICMIT,2000:437-443.

[9] BJOINER D.Software engineering 3 domains, requirements and software design[M]. Berlin: Springer, 2006.

猜你喜歡
模型系統(tǒng)
一半模型
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲欧美日韩色图| 亚洲欧洲日产国产无码AV| 亚洲第一视频网| 丝袜亚洲综合| 亚洲 欧美 日韩综合一区| 一级全黄毛片| 亚洲区欧美区| 久久免费精品琪琪| 91欧美亚洲国产五月天| 欧美不卡视频在线观看| 2022精品国偷自产免费观看| 台湾AV国片精品女同性| 亚洲国产成人精品一二区| 国产一二三区在线| 少妇高潮惨叫久久久久久| 91麻豆精品国产高清在线| 在线观看欧美国产| 国产男人的天堂| 波多野结衣一区二区三区AV| 好久久免费视频高清| 毛片手机在线看| 一级毛片在线播放免费观看| 人妻91无码色偷偷色噜噜噜| 国产成人91精品| 中文字幕欧美成人免费| 亚洲日本韩在线观看| 青青青草国产| 中文字幕在线播放不卡| …亚洲 欧洲 另类 春色| 极品尤物av美乳在线观看| 亚洲中文字幕97久久精品少妇| 99re精彩视频| 国产天天射| www精品久久| 久久国产乱子| 国产欧美精品一区aⅴ影院| 久久99热这里只有精品免费看| 久草热视频在线| 亚洲国产天堂久久综合| 在线精品自拍| 欧美日韩在线观看一区二区三区| 国产女人在线视频| 999福利激情视频| 日本成人在线不卡视频| 漂亮人妻被中出中文字幕久久| 国产18在线播放| 欧美一级在线看| 亚洲bt欧美bt精品| 好吊色国产欧美日韩免费观看| 中文字幕欧美日韩高清| 国产高清无码麻豆精品| 国产色网站| 亚洲人成电影在线播放| 视频一本大道香蕉久在线播放| 国产精品七七在线播放| 久久国产精品娇妻素人| 国产人人乐人人爱| 久久黄色一级片| 911亚洲精品| 亚洲无码高清一区| 亚洲精品无码高潮喷水A| 免费在线a视频| 午夜国产精品视频| 原味小视频在线www国产| 极品私人尤物在线精品首页| 国产丝袜丝视频在线观看| 国产精品久久久久久久久久98| 欧美日韩一区二区三| 亚洲国产成人精品无码区性色| 免费毛片视频| 久久综合九色综合97婷婷| 欧美日韩免费| 国产一区二区三区精品欧美日韩| 一本久道久久综合多人| 国产国模一区二区三区四区| 澳门av无码| 国产黄色片在线看| 亚洲V日韩V无码一区二区| 九九久久99精品| 少妇露出福利视频| 性欧美久久| 欧美三級片黃色三級片黃色1|