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

面向領域的.NET應用系統開發架構研究

2011-02-09 01:58:00雪,鹿旸,張
制造業自動化 2011年10期
關鍵詞:模型系統

王 雪,鹿 旸,張 辛

(中國地質大學(北京) 軟件學院,北京 100083)

0 引言

領域是指一組具有相似或相近軟件需求的應用系統所覆蓋的功能區域[1]。在傳統的軟件開發中,從對軟件系統最初的概念到可操作實現的過程,有多個環節多種工作是重復勞動的。軟件工程中軟件復用的思想就是為了避免重復勞動的解決方案,其出發點就是應用系統的開發不再采用一切“從零開始”的模式,而是充分利用過去應用系統開發過程中積累的知識和經驗,從而使軟件工作者著重于新系統中的新問題和新需求。領域工程就是以軟件復用為目的,解決可復用信息的識別、組織和利用問題。它是軟件開發者用于為相應領域定義范圍、指定結構和創建可復用資產的過程和實踐,涵蓋界定、分類及創建可復用構件的所有活動。

領域工程是基于可重用構件的,軟件產品中的通用功能嵌入在各種軟件構件之中,因此領域工程中一項很重要的工作就是生產和組織封裝性良好的和易于重用的軟件構件。基于構件的軟件開發重在構件的集成而不是軟件的編程。近年來,軟件復用的研究結果表明基于體系結構、特定領域的重用能在軟件的質量和產量上有較大的改進。軟件的體系機構或者說架構是一組協同工作的類,它們為特定類型的軟件構筑了一個可重用的設計。面向領域的軟件產品族架構同過去的單一軟件產品的體系架構不同之處就在于領域平臺提供了公共資產,包含領域框架、領域建模工具、公共構件庫等。

1 平臺與架構

1.1 .NET框架

.NET Framework在底層的執行引擎源于托管的虛擬機概念,其通用語言運行時不僅支持內存回收機制和異常處理機制,并且實現了跨語言承諾和組件自描述等特性。其次,.NET Framework為面向對象程序設計提供了單根繼承、多接口實現等直接的支持,提供了繪圖、網絡、線程、ADO.NET等一系列的API,可以說對現代組件編程從設計、編碼、配置到運行都給予了很好的支持。作為新一代應用程序的開發平臺,其平臺構造對其代碼的生產性與移植性是高效的[2]。

1.2 系統架構

在軟件的體系架構中,分層式結構是最為常見也最為重要的一種結構[3]。如圖1所示是.NET中標準的B/S分層式結構。

基于.NET Framework的應用程序一般屬于如上的三層式結構:數據訪問層、業務邏輯層和表示層。數據訪問層主要負責對數據庫的操作;業務邏輯層是整個系統的核心,涉及到系統相關的業務;表示層主要負責使用者與系統的交互,側重用戶的體驗。分層式結構降低了層與層之間的依賴,有利用各層模塊的修改與復用,使開發人員可以只關注其整個結構中的某一層。概括來說,分層式設計可以達到如下目的:分散關注、松散耦合、邏輯復用和標準定義的目的,從而提高了開發效率。

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

圖1 .NET中標準的B/S分層式結構

2 面向領域的軟件架構

2.1 領域工程

過去軟件工程中關注的軟件開發大多是針對一個單獨的應用系統,即針對特定的用戶需求和背景給予分析、設計和實現。隨著軟件工程領域的不斷發展,這種高成本、長周期的開發模式已經不適用現在日益激烈的市場競爭和多變的軟件需求。軟件產品需要進化,軟件的生產模式同樣需要進化。領域工程便是實現這種軟件生產模式進化的重要手段,使軟件生產由“單一模式”走向“工廠模式”。

領域工程包括:領域分析、領域設計與領域實現。領域分析定義領域范圍,識別領域中應用的共同特征和可變特征,從而建立領域模型。領域分析基于兩個概念:抽象和求精。抽象是一種處理復雜性的有效手段,領域分析使用抽象原則降低復雜性,有效地從領域的一系列應用中抽取特征,創建領域分析產品;對領域分析產品進行求精就可以開發領域中的特定應用。領域設計和領域實現分別根據領域模型給出設計與實現。因此說,領域分析是面向領域的軟件工程中開發經驗的系統的和正、逆向的整合。

2.2 面向領域的軟件架構

面向領域的軟件架構與單一的軟件架構不同之處在于增加了領域平臺,如圖2所示,應用系統層主要指基于領域工程的特定的軟件應用;領域平臺層主要包括領域框架、領域建模及相應的軟件資源庫;基礎設施層包括各種服務器、數據庫及操作系統。一個應用系統可以根據用戶的具體需求對領域平臺中的資源進行整合,包括選擇、裁剪和添加。

圖2 面向領域的軟件產品架構

基于領域的軟件工程過程模型可簡化為如圖3所示形式。其中需求分析、系統設計和系統實現三個階段均可以有領域工程的參與,這樣軟件工作者能夠快速并高效地建立一個應用系統。具體來說,任何一個應用程序都可以從領域平臺中復用領域通用功能及其相應構件,同時把差異功能及其構件提供給領域平臺。

3 面向領域的.NET應用系統架構

3.1 面向領域的.NET應用系統架構

面向領域的. NET應用系統架構就是指借助于.NET開發平臺對某一領域問題所建立的通用的軟件架構,它的功能在于能夠把握許多相似應用程序的結構,為運行一批對象提供了一個有組織的環境。基于該思想應用系統開發轉變成以構件庫為中心的開發,實現動態地組裝構件從而完成軟件的即插即用。構件資源庫可以是任何已有的或待開發的構件,是對領域中某種功能的實現,可以是共性的資源,也可以是特性的資源。

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

.NET應用程序和應用程序域通過消息進行彼此的通信,.NET信道服務為此通信提供了基礎傳輸機制。.NET應用程序配置文件相當于COM中系統注冊表的作用,登記構件的位置、構件對象的激活類型和通信的信道配置等。.NET模型支持web服務,其底層細節均由.NET框架完成,減少了對操作系統的依賴性。因此,.NET構件之間的交互更簡便,給程序開發帶來了便利。作為構件技術的.NET簡化了構件軟件的開發和軟件構件的部署,.NET構件模型是一種更理想的軟件構件模型。這些也就是在開發大型而復雜的應用系統時建議使用.NET平臺的理由。

圖3 基于領域的應用系統開發模型

圖4 面向領域的LEC應用系統架構

3.2 案例分析

比如對于微軟推出的基于ASP.NET的PetShop以及現在具有廣泛應用的圖書銷售系統、電子訂餐系統等電子商務類的應用程序,他們在系統架構上和功能上存在極大的相似性,如果逐一開發,就會導致重復工作和效率低下。借助于.NET框架及其優良的構件模型,搭建一個面向領域的輕量級電子商務應用系統(Lightweight Electronic Commerce, LEC)架構。一般來說,該類應用程序包括以下基本功能:用戶管理模塊、購物車模塊、訂單結算模塊、商品瀏覽模塊、商品管理模塊。對應的LEC架構如圖4所示。

其中,功能構件庫中的構件是可定制的,對于電子商務類門戶系統,可以根據用戶的具體需求,應用定制工具選取相應的構件。當某個用戶的需求沒有相應的構件在構件庫中存在時,可以向構件庫中添加相應構件,因此構件庫是可擴充的。采用定制工具這種可配置的體系結構,可以快速滿足用戶的需求,開發出滿足用戶的新系統。

4 結束語

良好的系統架構和領域工程的思想可有效地提高軟件的可重用性和可維護性。本文通過對.NET框架多層系統架構及構件開發模型的分析,給出了面向領域的輕量級電子商務類應用系統的構件式開發架構,雖然不同領域有不同的特點,但是基于.NET多層架構領域模型的應用系統開發的思路同樣適用于其它領域。

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

[2] 曾誠. 高性能ASP.NET應用程序的探討與研究[J]. 湖北大學學報, 2004:22-26.

[3] 章利. 基于.NET的多層分布式企業應用架構的設計與實現[D]. 2007.

[4] 惠長江, 吳江. 軟件進化研究綜述[J]. 計算機技術與發展, 2007, 17(4):196-200.

[5] 黃玉坤. 軟件復用技術及領域工程綜述[J]. 計算機與現代化, 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.

猜你喜歡
模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
3D打印中的模型分割與打包
主站蜘蛛池模板: 国产第二十一页| 国产成人啪视频一区二区三区| 欧美一级在线播放| 欧美中文字幕一区| 国产一区二区三区精品久久呦| 亚洲熟女中文字幕男人总站| 综合五月天网| 国产美女91视频| 国产中文一区二区苍井空| 宅男噜噜噜66国产在线观看| 国产精品福利社| 国产三级a| 欧美色综合网站| 免费毛片视频| 99在线视频免费| 国产一级二级三级毛片| 国产一级二级在线观看| 亚洲午夜国产精品无卡| 国产清纯在线一区二区WWW| 99这里只有精品在线| 99久久国产精品无码| 国产成人精品一区二区不卡| 丁香婷婷激情综合激情| 亚洲欧美日韩色图| 国产成人亚洲综合a∨婷婷| 一本色道久久88亚洲综合| 2020久久国产综合精品swag| 青青热久免费精品视频6| 性色在线视频精品| 色婷婷成人| 国产97区一区二区三区无码| 日本一区高清| 九九九精品成人免费视频7| 免费A∨中文乱码专区| 日本伊人色综合网| 在线欧美日韩| 欧美爱爱网| 五月婷婷亚洲综合| 久视频免费精品6| 免费啪啪网址| 亚洲系列中文字幕一区二区| 国产精品午夜福利麻豆| 无码丝袜人妻| 熟妇人妻无乱码中文字幕真矢织江| 亚洲欧美日韩天堂| 激情乱人伦| 亚洲动漫h| 热热久久狠狠偷偷色男同| 亚洲欧美人成人让影院| 国产精品微拍| 国产不卡在线看| 免费99精品国产自在现线| 农村乱人伦一区二区| 九九九国产| 精品视频在线观看你懂的一区| 免费va国产在线观看| 日韩大片免费观看视频播放| av一区二区三区在线观看| 免费看美女毛片| a级毛片免费网站| 亚洲黄网视频| 亚洲伊人久久精品影院| 四虎亚洲精品| 高清国产va日韩亚洲免费午夜电影| 四虎影视国产精品| 国产爽妇精品| 99这里只有精品6| 色综合天天操| 自拍偷拍一区| 午夜不卡视频| 国产尤物在线播放| 丁香六月激情综合| 日本少妇又色又爽又高潮| 国产在线一二三区| 99re精彩视频| 99伊人精品| 成年人久久黄色网站| 欧美午夜理伦三级在线观看| 国产综合精品日本亚洲777| 毛片免费在线视频| 1024你懂的国产精品| 精品久久久久无码|