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

基于領域工程的構件的軟件開發技術研究

2009-04-29 00:00:00
電腦知識與技術 2009年33期

摘要:該文分析和研究了基于構件的軟件開發的含義和優點,研究了基于構件的軟件開發的基本思路和生命周期模型,總結了基于構件的軟件開發的不足,引出了領域工程的概念,對領域工程的相關理論知識,領域工程、專向領域工程概念,以及與應用工程的區別進行了研究,在此基礎上,提出了一種基于領域工程的構件的軟件開發過程及生命周期模型。

關鍵詞:構件技術;領域工程;軟件工程

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)33-9300-02

Study on Software Development Technology Based on Component of Field Engineering

HU Hui

(Suzhou Institute of Industry Technology, Suzhou 215104, China)

Abstract: The meaning and advantage of software development based on component were analyzed and studied, the basic thought and life cycle model of software development based on component was researched, the insufficiency of software development based on component was summarized, and the concept of field engineering was introduced, the related theoretic knowledge, field engineering, concept of special field engineering concept as well as the difference of applied field engineeringwas studied, respectively, on this base, a kind of software development process and life cycle mode base on the component based on field engineering was brought forward.

Key words: software component technology; field engineering; software engineering

1 傳統構件開發技術

雖然以構件為單位獨立地進行設計和實現,提高了應用系統各部分開發的獨立性,是長期以來主流的復用技術,但是,實際操作起來,在整個過程及構件的開發、尋找和使用階段必須要解決一些技術上面的問題。實際上,基于構件的開發并未真正實現其最初的“復用和靈活性”的承諾,并非很多的構件可以真正復用,一些因素阻礙了它的發展:

1) 構件在實際應用中的變化性。多數構件在應用時都有其局限性,需要對其修改以適應新系統,而且,構件的這種變化性需要在系統中加以實現才能真正實現軟件復用。

2) 構件的發展還處于不完善階段,多數構件的應用還是僅僅局限于代碼復用或模塊復用,而越來越多的大規模軟件開發項目要求更高層次的復用。構件要達到一定的數量,才能支持有效的復用,而大量構件的獲得需要有很高的投入和長期的積累。

正是這些因素的存在,在實際應用過程中,存在一些不太現實或者目前看來不夠成熟的地方。

CBD采用獨立的方式進行開發時,這一活動通常被稱為領域分析(Domain Analysis)或領域工程(Domain Engineering)。領域工程中可復用構件開發的目標是針對于某一特定的應用領域,對該領域中一組已開發的系統進行領域分析,確定目標領域的公共特性,進行抽象并編碼實現,包裝為可復用構件,并在領域開發過程中,進行構件適當的修改,就可以在領域內實現真正的復用,并在實際的應用中,加入最流行的軟件開發思想,如設計模式,分層思想等技術對其不足之處加以改進,從而使其更好地實現復用的目的,這樣的軟件開發技術叫基于領域工程的構件的軟件開發技術。

2 基于領域工程的開發技術

2.1 領域工程的基本概念

領域工程中有一些基本的概念,正確、深入的理解這些概念對于理解和實施領域工程具有非常重要的意義。

1) 領域:領域是指一組具有相似或相近軟件需求的應用系統所覆蓋的功能區域。

2) 領域模型:領域模型描述領域中系統之間的共同需求。領域模型描述了需求上的共性,因此稱領域模型中描述的需求為“領域需求”。

領域需求是通過考察領域中己有的系統獲得的,當領域中存在大量的系統時,需要選擇它們的一個子集作為樣本系統,對樣本系統需求的考察將顯示領域需求的一個變化范圍。一些需求對所有被考察的系統是共有的,一些需求是單個系統所獨有的,依據己獲取的領域需求可以建立起領域模型,一般包括用例模型和特征模型。

用例建模是需求工程的一種形式,被認為是軟件工程中良好的實踐之一,在現在的軟件工程中被廣泛運用。從外部用戶的視角看,一個用例是執行者與目標軟件系統之間的一次典型的交互作用。對一個用例的完整描述包括用例名稱、用例目標簡述、執行者、前置條件、一個主事件流、零到多個輔事件流、后置條件和附加信息。如果用例的事件流比較復雜,還可以使用活動圖來更為精確和直觀地描述。

特征模型被作為領域需求的一種重要表現方式。它是對一個特定領域的軟件所具有的特征的有組織的描述,主要記錄了特征自身具有的重要屬性和特征之間存在的各種關系。在領域工程的各個階段領域分析、領域設計、領域實現中可能存在的特征都應該被一一記錄到特征模型中。特征模型由特征圖和特征描述信息組成,特征圖是由特征和特征之間的關系組成的分層結構圖。

3) 領域工程:領域工程是為一組相似或相近的應用工程建立基本能力和必備基礎的過程,它覆蓋了建立可復用軟件構件的所有活動。領域工程對領域中的系統進行分析,識別這些應用的共同特征和可變特征,對刻畫這些特征的對象和操作進行選擇和抽象,形成領域模型,依據領域模型產生體系結構,并以此為基礎識別、開發和組織可復用構件。這樣,當開發同一領域中的新應用時,可以根據領域模型,確定新應用的需求規約,根據特定領域的軟件體系結構形成新應用的設計,并以此為基礎選擇可復用構件并進行組裝,從而形成新系統。

2.2 領域工程的三個基本階段

實施領域工程的過程包含了一些基本的行為,雖然具體的領域工程方法可能定義不同的概念、步驟、產品等,但這些基本行為大體上是一致的,這些行為分為三個階段。

1) 領域分析:這個階段的主要目標是獲得領域模型。在這個階段中首先要進行一些準備性的工作,包括定義領域的邊界,明確分析的對象,識別信息源,即領域分析和整個領域工程過程中信息的來源,可能的信息源包括現存系統、技術文獻、問題域和系統開發的專家、用戶調查和市場分析、領域演化的歷史記錄等。在此基礎上,就可以分析領域中系統的需求,確定哪些需求是被領域中的系統廣泛共享的,從而建立領域模型。

2) 領域設計:這個階段的目標是獲得特定領域的軟件體系結構(DSSA)。建立了領域模型之后可以派生出滿足這些領域需求的DSSA。由于領域模型中的領域需求具有一定的變化性,DSSA也要相應地具有變化性。同時復用構件是依據領域模型和DSSA來組織的,因此在這個階段通過獲得DSSA,也就同時形成了復用構件的規約。

3) 領域實現:這個階段的主要目標是依據DSSA開發和組織可復用信息。這些可復用信息可能是從現有系統中提取得到的,也可能需要通過新的開發得到。這個階段也可以看作復用構件的實現階段。

需要說明的是,領域工程的三個基本階段所描述的過程是一個反復的、逐漸求精的過程。在實施領域工程的每個階段中,都可能返回到以前的步驟,對以前得到的結果進行修改和完善,再回到當前步驟,在新的基礎上實施本階段的過程。

2.3 專向領域工程

將領域工程技術引入軟件復用中,形成了專向領域復用思想。專同領域工程的目標就是在一個特地給你的應用領域中實現軟件復用。由于目標集中,因此可復用構件的制作不需要在很廣的范圍內考慮其通用性,構件庫也不需要包括與本領域無關的構件。因此,構件的開發和構件的存儲與管理都比較容易,構件的使用頻率與檢索效率都會明顯的提高。另外,在專向領域中,由于同一領域的應用系統之間有更多的共性構件的粒度可以增大。

2.4 領域工程和應用工程的關系

領域工程和應用工程又是互相聯系的。一方面,通過應用工程得到的現有系統(包括需求規約、設計、實現等)是領域工程的主要信息來源,領域工程的各個階段主要是對應用工程中相應階段產品的抽象,領域工程又對本領域中新系統的開發提供了支持。另一方面,領域工程和應用工程需要解決一些相似的問題,例如怎樣從各種信息源中獲取用戶的需求,如何表示需求規約,如何進行設計,如何表示設計模型,如何進行構件開發,如何在需求規約、設計和實現間保持邏輯聯系,如何對需求規約、設計和實現進行演化等。因此,領域工程的步驟,行為、產品等很多方面都可以和應用工程進行類比,在應用到構件的軟件開發過程中時可以使需求更全面,獲取得到的可復用構件更具有全面性,有利于提高軟件開發的效率,更有利于軟件的復用。

3 基于領域工程的構件的軟件開發

3.1 基于領域工程的軟件開發過程模型

基于領域工程的軟件開發過程可以概括為:

1) 領域分析:領域分析階段的主要任務是通過對領域知識的抽象,區分出共性和可變性,生成概念級BCMS。領域分析的最終結果是領域知識的形式化表示,用基于UML的領域模型來表示。包括領域框架和領域構件的設計。領域模型中的共性在領域框架中映射為穩定不變的凝固點,領域模型中的可變性在領域框架中映射為易變的熱點。在具體構件的設計中可以遵循COM/DCOM/COM+/OLE/ACTIVEX構件模型標準。

2) 領域實現:領域實現階段產生物理模型。物理模型包括領域構件和熱點子系統的具體設計、編碼和測試及領域框架的動態生成,加入最先進的軟件開發思想,完成代碼級的開發。

3)應用實現:領域工程向應用工程的過渡,體現構件化開發的行業分工思想,把系統開發者分為構件生產者和構件裝配者。應用工程將參考領域框架進行系統設計,生成具體應用的體系結構(框架);然后根據應用框架要求從領域構件庫挑選構件進行組裝,實現構件在框架上的集成(靜態或動態的),或根據熱點子系統對熱點進行特化,實現靜態的集成領域設計階段產生邏輯模,它是領域模型的具體設計。

圖1是根據實踐結合最新的軟件思想得來的過程模型,領域工程創建應用領域的模型,該模型被用作在軟件工程流中分析用戶需求的基礎。類屬的軟件體系結構為應用的設計提供了輸入。最后,在可復用構件己經被購買、從現存庫中選出或構造好后作為領域工程的一部分,它們可以被從事基于構件開發的軟件工程師使用。

3.2 基于領域工程的構件軟件生命周期

在軟件開發的發展歷史中,軟件開發經歷了無模型、瀑布型、快速原型、漸增模型、螺旋型、軟件復用型、基于CASE模型等階段。軟件復用結合了技術、方法和過程。

圖2反映了面向領域工程的軟件生命周期。其中構件庫是核心,它是構件及其關系組成,構造構件庫必須注意兩方面的問題:一是可復用構件應具有有用性、可用性、質量、適用性、可移植性;二是領域工程。軟件構件是對系統整體結構設計的刻畫,包括全局組織與控制結構,構件間通訊、同步和數據訪問的協議,功能分配,物理布局,設計元素集成,伸縮性和性能,設計選擇等以及指導這些集成的模式。

4 總結與展望

隨著軟件需求的激增,軟件規模和復雜度的不斷增大,傳統的軟件開發模式面臨著前所未有的挑戰,人們開始探索新的軟件開發技術來適應軟件發展的要求,軟件復用則是解決這一軟件危機行之有效的方法,軟件構件技術則在軟件復用中扮演著重要的角色,是當前軟件復用研究的焦點。構件技術的基本實現在于創建和利用復用的軟件構件來解決應用軟件的開發問題。它與面向對象編程語言不同,只規定構件的外在形式,不關心其實現方法。只要遵循構件技術規范,各個軟件開發商就可以用自己方便的語言去實現構件,應用軟件可以通過構件間相互提出請求和返回服務結果的協同工作機制來達到系統目標。

參考文獻:

[1] 楊芙清,梅宏,李克勤.軟件復用與軟件構件技術[J].電子學報,1999,27(2):41-42.

[2] 薛春光,吳紹東.軟件復用技術及其展望[J].天津理工學院學報,2002,18(1):68-71.

[3] 梅宏.軟件復用技術研究與應用[J].科技與經濟,2002(1):12-13.

[4] 張世混,張文娟,常欣,等.基于軟件體系結構的可復用構件制作和組裝[J].軟件學報,2001(9):12-14.

[5] 朱建江,基于軟件構件的軟件復用的研究[D].南京航空航天大學博士論文,2002.

[6] Brown A W,大規模基于構件的軟件開發[M].趙文耘,譯.北京:機械工業出版社,2003.

[7] 張偉,梅宏.一種面向特征的領域模型及其建模過程[J].軟件學報,2003(8):1-3.

主站蜘蛛池模板: 久久久久无码精品| 久久成人国产精品免费软件| 不卡视频国产| 九九热在线视频| 99精品久久精品| 丁香综合在线| 秋霞一区二区三区| 色哟哟色院91精品网站| 91精品小视频| 夜色爽爽影院18禁妓女影院| 无码在线激情片| 国产成人91精品| 国产呦精品一区二区三区下载| 夜夜操国产| 欧美翘臀一区二区三区| lhav亚洲精品| 精品伊人久久久久7777人| 99人体免费视频| 中文字幕精品一区二区三区视频| 99这里只有精品免费视频| 国产成人禁片在线观看| 午夜毛片免费观看视频 | 国产亚洲视频中文字幕视频| 亚洲天堂日韩在线| 99久久无色码中文字幕| 精品乱码久久久久久久| 亚洲精品不卡午夜精品| 国产麻豆精品久久一二三| 99热这里只有免费国产精品| 久视频免费精品6| 亚洲成人黄色网址| 亚洲精品卡2卡3卡4卡5卡区| 青青草原国产免费av观看| 国产人碰人摸人爱免费视频| 国产91高清视频| 国产成人无码综合亚洲日韩不卡| 亚洲国产清纯| 日韩av在线直播| 激情综合网激情综合| 成人日韩精品| 国产精品福利导航| 国产国语一级毛片在线视频| 国产精品久久久久久久久久98 | 欧美激情视频在线观看一区| 国产精品9| 丁香五月婷婷激情基地| 成人在线亚洲| 97在线公开视频| 午夜高清国产拍精品| 亚洲男人天堂2020| 国产伦片中文免费观看| 97国产成人无码精品久久久| 久久精品国产精品国产一区| 四虎永久在线| 国产成人无码AV在线播放动漫| 日本精品中文字幕在线不卡| 亚洲天堂自拍| 国产成人一区在线播放| 狠狠亚洲五月天| 欧美视频在线观看第一页| 91av成人日本不卡三区| 亚洲综合亚洲国产尤物| 日本伊人色综合网| 国产精品白浆无码流出在线看| 99精品视频九九精品| 中文字幕无码制服中字| 国产91精品久久| 中文字幕一区二区人妻电影| 国产乱人激情H在线观看| 四虎影视永久在线精品| 真人高潮娇喘嗯啊在线观看| 国产精品尤物在线| 在线观看无码av免费不卡网站 | 91免费国产高清观看| 激情午夜婷婷| 国产精品蜜臀| 国产三级韩国三级理| 久久成人国产精品免费软件| 999福利激情视频| 强奷白丝美女在线观看| 丁香婷婷在线视频| 999福利激情视频|