• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    UML建模技術綜述

    2012-03-30 20:20:33貴陽醫(yī)學院計算機教研室唐翠娥
    電子世界 2012年12期
    關鍵詞:開發(fā)人員面向對象視圖

    貴陽醫(yī)學院計算機教研室 唐翠娥

    1.引言

    UML(Unified Modeling Language)作為一個優(yōu)秀的“交流語言”、“代碼生成工具”和“系統(tǒng)設計工具”自1997年誕生以來,受到無數(shù)廠商、組織、專家學者的追捧和擁護,它提供的用例圖、狀態(tài)圖、活動圖、類圖等功能各一,基本涵蓋了軟件工程的各個方面。它不但支持面向對象的分析與設計,還支持從需求分析開始的軟件開發(fā)的全過程。但國內的正規(guī)大型軟件項目比較少,軟件工程技術起步很晚;市場上也難以找到一本有“中國特色”的能夠上程序員快速掌握自己所需的知識的教材,所以國內的在項目中使用UML的都是鳳毛麟角,即便使用了,也是在很小的范圍內,完全沒有發(fā)揮出UML1%的功效。作者在參閱大量的文獻資料以及最具權威性的文章,將UML相關知識和UML建模技術的目的與原則、使用對象以及使用UML建模應該注意的事項概述如下,供UML初學者共享。

    2.UML統(tǒng)一建模語言

    2.1 UML的誕生背景

    70年代中期,公認的面向對象的建模語言開始出現(xiàn),從1989年到1994年,其數(shù)量從不到十種增加到了五十多種。在眾多的建模語言中,語言的創(chuàng)造者努力推崇自己的產品,并在實踐中不斷完善。但不同的建模語言大多雷同,各有千秋,并且存在某些細微的差別。OO方法的用戶并不了解不同建模語言的優(yōu)缺點及相互之間的差異,因而很難根據(jù)應用特點選擇合適的建模語言,極大地妨礙了用戶之間的交流。因此極有必要在精心比較不同的建模語言優(yōu)缺點及總結面向對象技術應用實踐的基礎上,組織聯(lián)合設計小組,根據(jù)應用需求,取其精華,去其糟粕,求同存異,統(tǒng)一建模語言。UML的出現(xiàn)既統(tǒng)一了Booch、OMT、OOSE,以及其他方法,又統(tǒng)一了面向對象方法中使用的符號,并且在提出后不久就被OMG接納為其標準之一。從而改變了數(shù)十種面向對象的建模語言相互獨立且各有千秋的局面,使得面向對象的分析技術有了空前發(fā)展。

    2.2 UML的主要內容

    UML(Unified Modeling Language)作為一種建模語言,是面向對象開發(fā)中的一種通用的圖形化、可視化的建模語言,它能讓系統(tǒng)構造者用標準的、易于理解的方式建立起能夠表達出他們想象的系統(tǒng)藍圖。它提供一種機制,以便不同人之間有效地共享和交流設計結果。

    UML統(tǒng)一建模語言包括語義和表示法兩個部分。

    (1)UML語義描述基于精確元模型定義,元模型為所有元素在語法和語義上提供了簡單、一致、通用的定義性說明,使開發(fā)者能在語義上取得一致,消除了因人而異的最佳表達方法所造成的影響;

    (2)UML表示法定義符號的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號和文本語法為系統(tǒng)建模提供了標準。

    UML的重要內容可以由下列五類圖(共9種圖形)來定義:

    第一類是用例圖,從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。

    第二類是靜態(tài)圖(Static diagram),包括類圖、對象圖和包圖。

    類圖定義系統(tǒng)中的類,表示類之間的聯(lián)系如關聯(lián)、依賴、聚合等類,用于描述系統(tǒng)中類的靜態(tài)結構,在系統(tǒng)的整個生命周期都是有效的。

    對象圖是類圖的實例,幾乎使用與類圖完全相同的標識。他們的不同點在于對象圖顯示類的多個對象實例,而不是實際的類。一個對象圖是類圖的一個實例。

    包圖由包或類組成,表示包與包之間的關系。包圖用于描述系統(tǒng)的分層結構。

    第三類是行為圖(Behavior diagram),包括狀態(tài)圖和活動圖,用于描述系統(tǒng)的動態(tài)模型和組成對象間的交互關系。

    狀態(tài)圖描述類的對象所有可能的狀態(tài)以及事件發(fā)生時狀態(tài)的轉移條件,通常是對類圖的補充。在項目設計中并不需要為所有的類畫狀態(tài)圖,只需對那些有多個狀態(tài),其行為受外界環(huán)境的影響并且發(fā)生改變的類畫狀態(tài)圖。

    活動圖描述滿足用例要求所要進行的活動以及活動間的約束關系,有利于識別并行活動。

    第四類是交互圖(Interactive diagram),包括順序圖和合作圖(合稱為交互圖),用于描述對象間的交互關系。

    順序圖顯示對象之間的動態(tài)合作關系,它強調對象之間消息發(fā)送的順序,同時顯示對象之間的交互。

    合作圖描述對象間的協(xié)作關系,可顯示信息交換和以及對象之間的關系。合作圖和順序圖相似,用于顯示對象間的動態(tài)合作關系。在項目設計中,如果強調時間和順序,則使用順序圖;如果強調上下級關系,則選擇合作圖。

    第五類是實現(xiàn)圖(Implementation diagram),包括構件圖和配置圖。

    其中構件圖描述代碼部件的物理結構及各部件之間的依賴關系。一個部件可能是一個資源代碼部件、一個二進制部件或一個可執(zhí)行部件。它包含邏輯類或實現(xiàn)類的有關信息。

    配置圖定義系統(tǒng)中軟硬件的物理體系結構。它可以顯示實際的計算機和設備以及它們之間的連接關系,也可顯示連接的類型及部件之間的依賴性。

    2.3 UML的功能

    UML作為一種建模語言,主要用于系統(tǒng)開發(fā)人員之間、開發(fā)人員與用戶之間的交流,其主要功能如下:

    (1)為軟件系統(tǒng)的產生建立可視化模型;

    (2)規(guī)約軟件系統(tǒng)的產出;

    (3)定義再開發(fā)軟件系統(tǒng)過程中需要做的重要分析、設計和實現(xiàn)的規(guī)格說明,使建立的模型準確、無歧義并且完整;

    (4)構造軟件系統(tǒng)的產出;

    (5)為軟件系統(tǒng)的產出建立文檔;

    (6)可以為系統(tǒng)的體系結構及其所有細節(jié)建立文檔。

    2.4 UML的應用領域

    UML的目標是以面向對象的方式來描述任何類型的系統(tǒng),具有很寬的應用領域。其中最常用的是用于建立軟件系統(tǒng)的模型,但它同樣可以用于描述非軟件領域的系統(tǒng),如機械系統(tǒng)、企業(yè)機構或業(yè)務過程,具有實時要求的工業(yè)系統(tǒng)或工業(yè)過程等。此外,適用于系統(tǒng)開發(fā)過程中從需求規(guī)格描述到系統(tǒng)完成后測試的不同階段??傊?,UML是一個通用的標準建模語言,可以對任何具有靜態(tài)結構和動態(tài)行為的系統(tǒng)進行建模。

    3.UML建模技術

    3.1 UML建模技術

    UML建模技術就是用模型元素來組建整個系統(tǒng)的模型,模型元素包括系統(tǒng)中的類、類和類之間的關聯(lián)、類的實例相互配合實現(xiàn)系統(tǒng)的動態(tài)行為等。UML提供了多種圖形可視化描述模型元素,同一個模型元素可能會出現(xiàn)在多個圖中對應多個圖形元素,人們可以從多個視圖來考察模型。

    UML建模技術主要分為結構建模、動態(tài)建模。

    結構建模是從系統(tǒng)的內部結構和靜態(tài)角度來描述系統(tǒng)的,在靜態(tài)視圖、用例視圖、實施視圖和配置視圖中適用,采用了類圖、用例圖、組件圖和配置圖等圖形。

    動態(tài)建模是從系統(tǒng)中對象的動態(tài)行為和組成對象間的相互作用、消息傳遞來描述系統(tǒng)的,在狀態(tài)機視圖、活動視圖和交互視圖中適用,采用了狀態(tài)機圖、活動圖、順序圖和合作圖等圖形。

    3.2 UML建模技術要點

    3.2.1 建模技術的目的與原則

    (1)幫助項目設計人員按照實際情況或按需要的樣式對系統(tǒng)進行可視化設計;提供一種詳細說明系統(tǒng)的結構或行為的方法;給出一個指導系統(tǒng)構造的模板;對所做出的決策進行文檔化;

    (2)僅當需要模型時,才構建它;

    (3)選擇要創(chuàng)建什么模型對如何動手解決問題和形成解決方案有著意義深遠的影響;每一種模型可以在不同的精度級別上表示;最好的模型是與現(xiàn)實相聯(lián)系的;單個模型是不充分的,對每個重要的系統(tǒng)最好用一組幾乎獨立的模型去處理。

    3.2.2 UML建模技術的使用對象

    (1)業(yè)務建模:以領域專家為主,需求分析人員是主力,系統(tǒng)分析員、架構師可參與;

    (2)需求模型:以需求分析人員為主,系統(tǒng)分析員是主力,領域專家提供指導,架構師和資深開發(fā)人員參與;

    (3)設計模型:高層設計模型以架構師為主,系統(tǒng)分析員從需求方面提供支持,資深開發(fā)人員從技術實現(xiàn)方面提供支持。詳細設計模型則以資深開發(fā)人員為主,架構師提供指導;

    (4)實現(xiàn)模型:以資深開發(fā)人員(設計人員)為主,架構師提供總體指導;

    (5)數(shù)據(jù)庫模型:以數(shù)據(jù)庫開發(fā)人員為主,架構師提供指導,資深開發(fā)人員(設計人員)予以配合。

    3.2.3 建模需要注意的問題

    建模時,對軟件開發(fā)過程是有要求的,必須是用例驅動,以架構為中心,迭代和遞增的開發(fā),如果軟件開發(fā)組織的軟件開發(fā)過程不能滿足這三點要求,那么的使用效果就會大打折扣。

    綜上所述,建模雖然是軟件建模的有利武器,也要遵循一定的規(guī)則來使用,否則就不能很好地發(fā)揮它的價值,也會事倍功半。理解使用的前提,并認真按照這些方法進行實施,相信會有理想的效果。

    4.結束語

    通過對大量的文獻資料以及最具權威性的文章分析,可以對UML建模技術的特性和發(fā)展現(xiàn)狀作出如下判斷:

    (1)已進入全面應用階段的事實標準;

    (2)應用領域正在逐漸擴展,包括嵌入式系統(tǒng)建模、業(yè)務建模、流程建模等多個領域;

    (3)成為“產生式編程”的重要支持技術。

    [1]Bailey,Diane E.and Barley,Stephen R.Return to work:Toward post-industrial engineering[J].IIE Transactions,2005,37:737-752.

    [2]Yves vanderperren,Wol fgang Mueller an d Wim Pehaene.UML for electronic systems design:a comprehensive overview[J].Design Automation for Embedded Systems.2009,12(4):261-292.

    [3]Yyan Labiche.The UML is more than Boxes and Lines[M].Canada:Lecture Notes in Computer Science,2009,275-386.

    [4]Object Management Group.UML Specif i cation l.5[EB/OL].http://www.omg.org/uml,2003-11-05.

    [5]周飛,楊根興,蔡立志.基于UML的測試用例生成方法研究[J].計算機應用與軟件,2009,26(2):107-110.

    [6]張慶,雷航.一種基于UML狀態(tài)圖的面向對象類級測試模型[J].計算機工 程,2005,31(21):75-77.

    [7]覃釗璇,曾一,柴艷欣等.基于UML活動圖的多態(tài)性測試用例生成[J].計算機工程,2010,36(11):83-84.

    [8]李留英,王戟,齊治昌.UML statecharts的測試用例生成方法[J].計算機研究與發(fā)展,2001,38(6):691-697.

    [9]蔣俊.基于UML的面向對象建模技術的研究[J].信息與電腦,2010(4):148.

    [10]李興鵬.基于UMI高校教務管理系統(tǒng)的分析與設計[J].電腦知識與技術,2007,22:899-900

    [11]趙雪峰.基于UML的教學評價系統(tǒng)建模[J].計算機與信息技術,2010.

    [12]張從亮.基于UML的面向對象軟件分析與建模[J].信息與電腦(理論版),2010(4):74-75.

    猜你喜歡
    開發(fā)人員面向對象視圖
    Semtech發(fā)布LoRa Basics 以加速物聯(lián)網應用
    面向對象的計算機網絡設計軟件系統(tǒng)的開發(fā)
    電子測試(2018年15期)2018-09-26 06:01:34
    面向對象的數(shù)據(jù)交換協(xié)議研究與應用
    5.3 視圖與投影
    視圖
    Y—20重型運輸機多視圖
    SA2型76毫米車載高炮多視圖
    面向對象Web開發(fā)編程語言的的評估方法
    讓Windows 10進入開發(fā)者模式
    電腦迷(2015年12期)2015-04-29 23:22:51
    后悔了?教你隱藏開發(fā)人員選項
    電腦愛好者(2015年6期)2015-04-03 01:20:56
    马鞍山市| 湛江市| 丹江口市| 神池县| 色达县| 枝江市| 叙永县| 崇左市| 保山市| 南和县| 安龙县| 禄劝| 土默特右旗| 苍溪县| 弥渡县| 巴彦淖尔市| 蒙山县| 新和县| 乌苏市| 沙河市| 琼中| 车险| 若羌县| 岳普湖县| 克什克腾旗| 唐山市| 景宁| 乡城县| 五常市| 托里县| 闽侯县| 福海县| 竹山县| 化德县| 喀什市| 颍上县| 南和县| 浠水县| 木兰县| 光山县| 左云县|