亚洲综合专区|和领导一起三p娇妻|伊人久久大香线蕉aⅴ色|欧美视频网站|亚洲一区综合图区精品

UML軟件開發(fā)過程和支持環(huán)境研究論文

時間:2021-04-14 19:49:11 論文 我要投稿

UML軟件開發(fā)過程和支持環(huán)境研究論文

  國際上,軟件工程領(lǐng)域在近3年內(nèi)取得了前所未有的發(fā)展,其成果超過軟件工程領(lǐng)域過去10至15年來的成就總和。其中最重要的、具有劃時代意義的成果之一就是統(tǒng)一建模語言UML(Uni—fiedModelingLanguage)的出現(xiàn)。

UML軟件開發(fā)過程和支持環(huán)境研究論文

  UML是繼80年代末和90年代初面向?qū)ο蠼<夹g(shù)高潮后,出現(xiàn)方法學大戰(zhàn),應市場對統(tǒng)一建模語言的要求,由世界著名的面向?qū)ο蠹夹g(shù)專家Booch>Jacobson和Rumbaugh發(fā)起,在著名的Booch表示法、OOSE方法和OMT方法的基礎(chǔ)上,廣泛征求意見,集眾家之長,幾經(jīng)修改而完成時。在美國,截至1996年10月,UML已經(jīng)獲得工業(yè)界、科技界和應用界的廣泛支持,已有700多個公司表示支持采用UML語言作為建模語言。

  到1997年11月17日UML被OMG(ObjectManagementGroup)米納為基于面向?qū)ο蠹夹g(shù)的建模語言標準。這標志著面向?qū)ο蠹夹g(shù)中建模語言的爭論暫時告一段落。

  作為建模語言,UML可以說是一種定義良好、易于表達、功能強大且普遍適用的建模語言,

  它為用戶建模提供了完整的符號表示和不同層次的兀模型(metamodel)如用例圖(uses—casedia—gram)包圖(packagediagram)、類圖(classdiag—ram)、狀態(tài)圖(statediagram)、X寸象圖(objectdia—gram)、活動圖(activitydiagram)、順序圖(se—quencediagram)合作圖(collaborationdiagram)組件圖(componentdiagram)、配置圖(deploy—mentdiagram)等。它的作用域不僅支持面向?qū)ο蟮姆治雠c設(shè)計,還支持從需求分析開始的軟件開發(fā)的全過程,但如何恰當?shù)貙⑦@些可視化圖形建模技術(shù)用于解決軟件開發(fā)所面臨的問題以及對建模過程的研究和支持工具的研究,仍是目前該領(lǐng)域的熱點問題。

  目前,在基于UML的開發(fā)方法和環(huán)境方面國際上已經(jīng)進行了一些研究和實際開發(fā)工作。Ra—tional公司正致力于它稱之為Objectory過程的研究,并試圖將其原有支持OMT的工具作進一步擴充,以期支持UML建模,并支持對OMT模型的升級。國內(nèi)對UML的研究尚處于起步階段。

  本文從當前對軟件開發(fā)過程的需求出發(fā),提出了UML柔性軟件開發(fā)過程,并設(shè)計了相應的集成化支持環(huán)境的組成框架。

  1UML柔性軟件開發(fā)過程

  電子計算機技術(shù)和現(xiàn)代通訊技術(shù)的飛速發(fā)展正迅速改變著人們對時間和空間的概念,世界在物理上正變得越來越小,而內(nèi)容卻比以前任何時候都復雜。全球經(jīng)濟競爭、信息高速公路等近代信息技術(shù)都迫使各個企業(yè)面臨著新的挑戰(zhàn)。為了能在瞬息萬變的市場和激烈的競爭中保住一席之地,負責信息技術(shù)機構(gòu)的主管人員將不得不學會應變管理技術(shù)(changemanagement)。在軟件開發(fā)領(lǐng)域,需要改變其開發(fā)與生產(chǎn)的范式,以滿足這種新的需求。

  傳統(tǒng)的軟件開發(fā)模式越來越難以滿足當前企業(yè)和市場的需求。新的產(chǎn)品開發(fā)周期已不再是一次性的從需求定義、軟件設(shè)計、實現(xiàn)和交付,迭代式增量開發(fā)方式已得到廣泛采用。這是由于軟件系統(tǒng)的規(guī)模越來越大,其復雜程度不斷提高,而與此同時又不得不面臨激烈的競爭對手和瞬息萬變的市場。時間就是效益,誰先占領(lǐng)市場,誰就是勝利者。但是占領(lǐng)市場和擊敗對手的條件除了時間之外,更重要的是過硬的.質(zhì)量和提供用戶真正需要的產(chǎn)品。因此將新的軟件開發(fā)模式歸結(jié)為圖1所示的迭代式開發(fā)和圖2所示的柔性軟件開發(fā)模型。

  所謂柔性軟件開發(fā)是指軟件開發(fā)過程應在需求工程的牽引下,首先建立系統(tǒng)模型,對模型進行模擬、分析和調(diào)整,進行從需求到建模的“自頂向下建模,由底向上修改”即從需求工程出發(fā),首先明確用戶要求,確定需求優(yōu)先級;在此基礎(chǔ)上為系統(tǒng)建立模型,該模型應是可模擬的,通過對模型的模擬運行,以分析模型是否滿足用戶需求和滿足的程度。整個建模過程是自頂向下逐層細化的,而模擬修改則由底向上地進行。

  然后在保證模型正確的基礎(chǔ)上,進行代碼的生成,同時還應考慮到對需求修改的靈活性和快速響應能力,因此應能進行‘閉環(huán)開發(fā)”即不僅能支持從模型到代碼的自動生成,將新的模型轉(zhuǎn)換為代碼,還應能支持從代碼到模型的逆向變換,將原有的代碼轉(zhuǎn)化成模型,進行再次分析、修改和調(diào)整,進行新一輪的開發(fā),從而為增量式開發(fā)提供支持,能分階段提交產(chǎn)品,也提高了對用戶需求變化的響應速度和應變能力,滿足用戶不斷變化的需求。

  2UML軟件開發(fā)支持環(huán)境

  為此,新一代集成化UML軟件開發(fā)環(huán)境應是能無縫集成以上2個階段的一個柔性軟件開發(fā)環(huán)境。其組成應包括UML可視化建模系統(tǒng)、UML模擬系統(tǒng)、UML代碼生成系統(tǒng)、UML逆向變換系統(tǒng)及其支持環(huán)境等,且這些環(huán)境的創(chuàng)建均應基于UML的定義,除了語法規(guī)則外,還包括詳細的語義定義,如圖3所示。從而支持系統(tǒng)建模、模擬和“閉環(huán)式開發(fā)'。

  1)UML可視化建模系統(tǒng)UML可視化建模系統(tǒng)支持從系統(tǒng)需求、系統(tǒng)分析到系統(tǒng)設(shè)計的整個建模過程,提供UML圖形的編輯和美化工具,保證得到語法正確、語義完整的UML圖形模型,并提供包括文檔管理、圖形打印等輔助支持。可進一步分為以下幾個子系統(tǒng),如圖4所示。

  ()可視化模型建造系統(tǒng)由于UML不僅支持對系統(tǒng)的對象建模,還支持對需求和系統(tǒng)體系結(jié)構(gòu)的建模;不僅支持系統(tǒng)的靜態(tài)模型,還支持對系統(tǒng)動態(tài)模型的描述。因此模型建造系統(tǒng)應支持以下模型的創(chuàng)建和編輯:需求模型。包括靜態(tài)模型和動態(tài)模型。靜態(tài)模型即功能模型,在UML中通過用例圖描述系統(tǒng)功能和各功能的潛在用戶及它們之間的關(guān)系;動態(tài)模型通過活動圖支持對業(yè)務過程或事務處理過程的描述。

  系統(tǒng)對象模型。同樣包括靜態(tài)模型和動態(tài)模型。通過包圖、類圖和對象圖定義系統(tǒng)對象及對象間的靜態(tài)關(guān)系。通過順序圖、合作圖和狀態(tài)圖描述對象間的交互關(guān)系和交互順序、對象的生命周期以及生命周期中對象可能存在的狀態(tài)以及狀態(tài)間的轉(zhuǎn)換約束。

  系統(tǒng)體系結(jié)構(gòu)模型。通過組件圖、配置圖支持軟件體系結(jié)構(gòu)和硬件體系結(jié)構(gòu)以及通信機制的定義。進一步還應支持軟硬件系統(tǒng)之間的合作關(guān)系的可視化表示。

  (2)UML語法正確性檢測機制

  為保證所得到的UML圖形模型符合UML的語法定義[61,應提供語法正確性檢查機制。一個較好的方法是提供語法制導的UML可視化建模工具,從而在模型的建造過程中提供動態(tài)的語法制導和語法檢

  測功能,既方便用戶學習和使用,也可保證所建造的模型在語法結(jié)構(gòu)上的正確性。

  (2)UML模型的一致性檢查機制

  由于UML支持從需求分析到系統(tǒng)設(shè)計整個建模過程,并且支持用戶從不同角度描述系統(tǒng),而大型軟件項目各模型間的協(xié)作和約束關(guān)系錯綜復雜,顯然不應由用戶獨自承當它們的管理和維護工作。作為建模支持系統(tǒng),應提供模型間的一致性檢查機制。

  首先,該機制應根據(jù)以上對基于UML軟件開發(fā)模型的討論,在軟件開發(fā)階段時間軸上確定引入模型的時間;其次,明確同一種模型的細化分層機制,以及怎樣用其它模型描述主模型的細節(jié);第三,在軟件開發(fā)階段時間軸上,一個模型存在自頂向下分解的層次結(jié)構(gòu),各時間階段產(chǎn)生的層次結(jié)構(gòu)中各種UML模型相互約束協(xié)作又產(chǎn)生復雜的網(wǎng)狀關(guān)系,需要建立不同階段、不同功能的同一種模型和不同種模型約束和協(xié)作的數(shù)學模型;最后,在該數(shù)學模型的基礎(chǔ)上,研究將約束和協(xié)作關(guān)系有機地加入軟件開發(fā)各個階段的模型一致性檢查機制。

  此外,由于允許從不同的角度描述同一模型,如交互圖包括順序圖和合作圖,這兩者之間允許存在冗余信息,因此不僅應保證二者間信息的一致性,作為進一步的支持,還可考慮支持模型間的一致性轉(zhuǎn)換。

  (3)UML模型的完備性檢查機制

  完備性檢查機制須在UML語義定義的基礎(chǔ)上,首先定義UML圖形模型的完備性準則,以保證UML圖形模型的完備性。對于UML圖形模型的完備性可以分3個層次來考慮:各個圖形的完備性;各個子模型的完備性,即相關(guān)圖形的組合完備性;系統(tǒng)模型的整體完備性。區(qū)分這3種完備性的意義在于:在不同階段可以進行語義完備性和語義正確性檢查。如在需求分析階段,可以對通過完備性檢查的活動圖進行模擬,以檢查該活動圖的正確性。而在整個系統(tǒng)模型通過完備性檢查之后,方可進行代碼的自動生成。

  (5)文檔生成和管理工具

  文檔生成工具是指文檔自動生成機制。作為一個建模支持系統(tǒng),應支持包括需求描述、面向?qū)ο蠓治龊驮O(shè)計、系統(tǒng)體系結(jié)構(gòu)等文檔資料的自動生成。文檔管理工具是指文檔資料的版本管理等輔助管理工作。

  1)UML模擬系統(tǒng)

  系統(tǒng)模擬機制支持對UML模型的功能模擬和性能模擬,它包括以下3個部分:

  (1)對動態(tài)模型的模擬

  主要包括對活動模型、交互模型(順序圖和交互圖)以及狀態(tài)圖的模擬。根據(jù)預先定義的語義,模擬各個模型對系統(tǒng)在時間特性上的描述是否真實地反映了客觀現(xiàn)實和用戶需求;并應提供相應的跟蹤調(diào)試機制。

  (2)對系統(tǒng)功能(需求)和用戶界面的模擬。

  用來支持快速原型。借助于代碼自動生成工

  具和用戶界面自動生成工具的支持,產(chǎn)生系統(tǒng)原型,并盡早提供給用戶,以確保建模的有效性。

  (3)系統(tǒng)性能的模擬

  UML支持對系統(tǒng)體系結(jié)構(gòu)的建模,作為一個良好的建模和開發(fā)支持工具,應支持對不同系統(tǒng)配置和功能分配情況下對系統(tǒng)性能的模擬,以便得到較好的系統(tǒng)設(shè)計方案和合理的系統(tǒng)配置。

  2)UML代碼生成系統(tǒng)

  支持可視化對象和行為的代碼生成,也稱之為UML支持環(huán)境的正向變換系統(tǒng)。

  軟件開發(fā)的最終目的是產(chǎn)生可執(zhí)行代碼。大多數(shù)軟件開發(fā)環(huán)境中,建模和編碼過程缺少有機的統(tǒng)一,這是有其歷史原因的。其中最重要的原因是缺少功能強大、簡單清楚、標準統(tǒng)一的建模語言。UML的出現(xiàn)并被OMG接受為標準,為消除這個障礙提供了一個最好的起點。

  UML雖然是一種可視化建模語言,不是編程語言。但是它與大多數(shù)面向?qū)ο笳Z言(例如C++、Java)存在緊密的映射關(guān)系。在UML語言的代碼生成機制方面,國際上一些大公司有一些有益的研究和開發(fā)工作。比較有代表性的有Ra—tional公司和AdvancedSoftwareTechnologiesInc。但這些研究和實現(xiàn)大多限于UML語言的靜態(tài)模型中的類圖,其它模型的代碼自動生成機制的研究資料則非常罕見。

  為此代碼自動生成機制應根據(jù)UML語言多種模型動態(tài)協(xié)作、關(guān)系復雜的特點,首先界定UML的語義和面向?qū)ο缶幊陶Z言(首先是Java)的語義,研究專用語義機制描述面向?qū)ο竽P秃驼Z言中動態(tài)和靜態(tài)機制,建立兩者的語義模型;再在該語義模型下建立兩者的映射模型;并研究代碼自動生成實現(xiàn)技術(shù)和獨立于UML語言本身的編程語言的特殊機制。代碼自動生成機制的研究與實現(xiàn)應考慮后面的逆向轉(zhuǎn)換機制。

  3)UML逆向變換系統(tǒng)

  當用戶對生成的代碼進行修改后,逆向轉(zhuǎn)換機制將用戶的修改轉(zhuǎn)換到模型上。否則將造成模型和代碼間的不一致性,使得系統(tǒng)的擴充、增刪和維護難以進行。

  逆向轉(zhuǎn)換機制一般由建模、析取和抽象3個步

  驟組成。動態(tài)模型的逆向轉(zhuǎn)換機制是研究的難點。我們將在正向轉(zhuǎn)換的基礎(chǔ)上,建立起模型到代碼的映射關(guān)系,嘗試建立起一套約束機制,實現(xiàn)自動的或人工導引的逆向轉(zhuǎn)換機制。在國際上,這方面的研究并不成熟。

  3結(jié)束語

  根據(jù)一年多來對UML的學習和分析以及對UML支持環(huán)境的研究和開發(fā)工作,本文從當前對軟件過程的需求出發(fā),提出了當前軟件開發(fā)應具備的特點和開發(fā)模型,在此基礎(chǔ)上設(shè)計了集成化UML軟件開發(fā)環(huán)境框架,提出了需解決的問題。目前我們已經(jīng)完成了UML可視化建模系統(tǒng)的開發(fā)工作,并在研究生課程中由80多名學生進行了試用,反映良好。UML軟件開發(fā)支持環(huán)境的其他子系統(tǒng)正在研究、開發(fā)之中。

【UML軟件開發(fā)過程和支持環(huán)境研究論文】相關(guān)文章:

環(huán)境評價研究論文04-02

環(huán)境保護研究論文12-30

內(nèi)控環(huán)境問題研究的論文06-17

人居居住環(huán)境研究論文10-27

研究論文的類型和結(jié)構(gòu)07-16

水利工程生態(tài)環(huán)境和發(fā)展共存的研究論文05-27

環(huán)境侵權(quán)免責事由研究的論文06-17

企業(yè)環(huán)境成本控制研究論文10-23

環(huán)境公益訴訟主體研究論文11-04