国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于可視化技術的軟件體系結構教學

2013-04-12 13:17:10束永安
合肥師范學院學報 2013年3期
關鍵詞:體系結構虛擬世界視圖

束永安

(安徽大學 計算機科學與技術學院,安徽 合肥230039)

1 引言

大規(guī)模軟件系統(tǒng)相當復雜,具有大量的質量需求。在此背景下,軟件體系結構及其教學變得十分重要。但由于軟件體系結構是從較高層次把握和理解復雜軟件的整體系統(tǒng)結構設計,課程內容抽象。另外,學生在學習該課程之前大都缺乏大規(guī)模軟件開發(fā)經驗,對課程的重要性認識不足,導致學生沒有學習興趣。為提高軟件體系結構教學的質量,在教學過程中能夠引起學生學習興趣的教學方法尤為重要。

3D虛擬世界(VWs:virtual worlds)技術提供真實的三維環(huán)境,為用戶提供參與、互動及身臨其境的體驗,這也為軟件體系結構教學工作創(chuàng)造了新的機會。這些機會既與3D虛擬世界展現的教育活動的可靠性有關,也與3D虛擬世界提供的較高的互操作性有關。由于3D虛擬世界具有視覺呈現上的娛樂性、直接性,是對真實世界的仿真,能夠提供在現實世界中不可能、不劃算甚至是危險的全新的體驗,因此,3D虛擬世界在軟件體系結構教學中具有獨特優(yōu)勢。本文利用3D虛擬世界技術,創(chuàng)建學生感興趣的軟件體系結構學習環(huán)境SAVS 3D,提高教學質量。

2 相關研究

3D設計吸引人,整個設計過程充滿趣味[1]。這種視覺上的魅力可用于展示的場合,比如向潛在的客戶解釋軟件設計。如果在三維空間把軟件系統(tǒng)作為圖形對象顯示,將有助學生理解復雜的軟件系統(tǒng)。以前的研究表明,使用3D進行UML可視化非常實用。Gil和Kent[2]在綜合幾個熟悉的2D圖形的基礎上,描述了一組3D圖形標記。與SAVS 3D類似,Radfelder和Gogolla[3]的工作主要運用了靜態(tài)圖。Mcin-tosh等[4]針對UML的可視化方面進行研究,并把它作為向觀察者傳遞信息的工具。Lange等[5]提出一種支持面向任務建模的框架,并開發(fā)視圖及可視化技術。GEF3D框架[6]建立在Eclipse Graphical Editor Framework基礎上,把已有的Eclipse 2DUML編輯器擴展至3D。SAVS 3D方法的主要不同之處在于利用3D環(huán)境為理解復雜軟件體系結構提供手段。在SAVS 3D中,基本的思想是使3D可視圖像象2D一樣熟悉,給人以直覺感。SAVS 3D方法使用圖表視圖從不同的角度對系統(tǒng)進行可視化。

3 SAVS3D方法

目前,SAVS3D為大規(guī)模系統(tǒng)模型提供靜態(tài)視圖,強調系統(tǒng)的靜態(tài)結構,不過將來計劃表示行為。

3.1 基本系統(tǒng)原理

Jacobson等[7]根據近期學習系統(tǒng)模型和近期教育及復雜系統(tǒng)所取得的成功及面臨的挑戰(zhàn),描述了創(chuàng)建學習環(huán)境和工具的一組常用設計原理。SAVS3D系統(tǒng)對這些原理進行拓展。

(1)SAVS3D支持學生參加開發(fā)復雜項目。市場上發(fā)現的設計通常是大的系統(tǒng),具有高性能、高可靠性、低成本和高質量的需求,但學生大多沒有處理復雜系統(tǒng)的經歷。SAVS3D增強了很多組學生同時對系統(tǒng)建模的功能,支持學生對團隊協(xié)作的理解,從而促進學生對系統(tǒng)整體的理解。當理論出現在具體的實例中,學生常常理解得最好。

(2)SAVS3D縮小理論與實踐的差距。與理論相聯系,支持理論的實踐給課堂帶來巨大的活力,吸引學生更有意義的參與。

(3)SAVS3D支持學生在消化知識和技巧過程中的活動。SAVS3D有助于加強團隊成員間的交流,有助于團隊里任務的組織和劃分。SAVS3D把單個人的結果集成為一個團隊的活動,從而協(xié)作完成復雜任務。文獻[8]對這些問題作了系統(tǒng)的綜述。

(4)SAVS3D吸引學生。SAVS3D提供一個探索的環(huán)境,這個直覺的環(huán)境既有助于學生探索發(fā)現,也會使他們面臨挑戰(zhàn),并對他們的交互作出響應。

(5)最簡單最好。這個可視化工具的主要目的是簡單、易于使用和高效。由于軟件體系結構教師和學生學習新的概念的時間有限,如果需要花費很多時間和精力來熟悉這個工具,他們也許會失去使用這個工具的興趣。

(6)SAVS3D的目標3D圖有一個相似的2D源圖的景象,這樣它就變成一個經過擴展使用的熟悉的景象。即使在不同的表示形式下,用戶也能夠輕易地辨認出用戶自己的圖。

(7)SAVS3D用視覺增強來區(qū)分探索和交互的額外信息。3.3節(jié)討論使用深度和顏色表示新的視圖。

(8)SAVS3D隱藏屬性、方法、關聯名等細節(jié)以減少視覺污染。對于很大的圖,只在用戶請求的時候顯示,但顯示清晰。

3.2 系統(tǒng)概述

SAVS3D由三個主要模塊構成:體系結構模塊、增強現實模塊和虛擬現實模塊。

作為一門日常課程,教師通過墻上投影等手段展示一個大而復雜的系統(tǒng)圖。在不同的抽象層次,它顯示特性、構件、連接件等細節(jié),可能使用不同的體系結構風格。在使用SAVS3D前,所研究的軟件體系結構必須在一個軟件體系結構編輯器內被創(chuàng)建并文檔化。在體系結構模塊,圖必須用一個外部的UML編輯器建立并輸出到一個XMI文件中。SAVS3D能夠讀這個儲存的UML圖。

SAVS3D首先使用3D可視化增強現實技術,利用ARToolKit庫[9],來捕捉和辨識2D投影或打印的軟件體系結構(教師的圖),幫助教師和學生識別并快速訪問增強現實模塊獲取的這個結構。SAVS3D可以通過網絡攝像機把一個圖形模式捕獲進學生的電腦。SAVS3D使用這個特性識別正在研究的體系結構和這個體系結構的精確視點。增強現實模塊使用戶更好地接近研究的對象,在課堂活動中很自然地把它們集成在一起,幫助學生學習。

在識別了用2D顯示的軟件體系結構后,虛擬現實模塊據此自動產生一個等價的3DUML圖。這個結果圖應與2D圖等價,在沒有限制的空間顯示,同時具有一點深度。

3.3 SAVS3D功能

作為一個虛擬環(huán)境,SAVS3D支持學生用鼠標進行環(huán)境開發(fā),鼠標可以在空間左右上下移動,遠離或靠近平面,并進行旋轉運動。

在圖標和色彩的幫助下,學生能從不同的角度和距離觀看3D體系結構。SAVS3D也必須允許學生接近觀察,領會更多上下文信息的存在。這一特性允許從一個新的角度分析軟件體系結構,這樣就有可能發(fā)現該圖各個部分間的相似性,理解更復雜的關系、不同的技術和不同的體系結構風格。在3D可視化環(huán)境中,數據探索的巨大空間促進了在不同抽象層次或在不同人設計的版本上對圖的理解。

一個體系結構設計的形成常常產生大量的文檔以及項目不同風險承擔者進行協(xié)商而形成的初始決策的記錄。這些信息對于軟件架構師,特別是對于象學生這類新手理解體系結構創(chuàng)建及軟件開發(fā)的整個過程非常重要。通過使用SAVS3D,可以從2D自動產生3D體系結構并與上下文信息一起顯示,包含聲音、影像和視頻形式的多媒體文檔。當學生瀏覽體系結構時,他們在模型空間移動,能夠訪問這些疊加信息。

視點的功能促進了學生在預定義興趣點上的移動。教師或學生能在體系結構中選擇(定義)一個位置作為一個新的視點,用戶能在這些視點之間快速移動,即使它們在體系結構中相距很遠。

SAVS3D提供的另一個功能是查找代理,即允許通過關鍵詞或過濾器查找文件。查找結果可以是鏈接表,也可以是通過顏色或標志形成的可視化圖形。這個子系統(tǒng)允許快速而容易地訪問與所研究的體系結構相關聯的各種信息。系統(tǒng)還支持變焦技術,為特定視圖上的數據提供更多的細節(jié)。

除了允許在所有的圖之間遍歷,SAVS3D還可以定義視圖表示不同形式的可視化,目的是改善課程質量,與文獻[10]討論的內容保持一致。SAVS3D利用圖的視圖從不同的角度對軟件系統(tǒng)進行可視化處理。一個復雜的系統(tǒng)不可能僅從一個角度達到全面理解。主要思想是可以通過選擇正確的一組視圖獨立地聚焦系統(tǒng)的不同方面。這些視圖包括以下內容。

一個類圖視圖(One class diagram View):要全面理解模型中的一個類元素,有必要探索這個體系結構元素在不同圖中的屬性、方法和關聯。在這種可視化中,當用戶從一個圖變化到另一個圖中,選擇的類元素位于屏幕的中央。

包視圖(Package View):包視圖把體系結構元素匯集在一個包中。

度量視圖(Metric View):SAVS3D把已有的UML類圖的設計與可視化度量相結合,使用顏色、體積和形狀對值進行可視化。

屬性視圖(Properties View):用戶把光標移到體系結構元素上,它的屬性、方法和關系名在被請求時以可讀的大小顯示在一個窗口中。

作者視圖(Author View):在遠處,彩色圖標指示體系結構元素的作者。

文檔化視圖(Documentation View):當遍歷體系結構時,學生在模型空間移動,他們能夠訪問這個疊加的信息。文檔中圖標、色彩或標志表示的意義應容易理解。當用戶選擇閱讀一個文檔,與此相關聯的一個以上的體系結構元素將被標記出來。

注釋視圖(Annotation View):通過自發(fā)、有時甚至是游戲場景,學生能夠探索、創(chuàng)建、特別是能同其他同學或老師交流以獲得新的信息,通過使用注釋共享發(fā)現、疑問或簡單信息來建立自己的學習過程。

練習視圖(Exercise View):這個視圖允許教師和學生通過練習進行互動,提高學生的理論知識。

4 結論

本文提出SAVS3D方法。本文主要描述如何利用3D空間的優(yōu)點通過用戶有吸引力的體驗來支持理解復雜系統(tǒng)。

SAVS 3D使用3D可視化技術,如虛擬現實和增強現實,它是一個可視化并理解一個復雜軟件系統(tǒng)體系結構的新穎方法。使用該方法,教師和學生有很多機會去探索一個3D環(huán)境,該環(huán)境強調在說教背景下的直覺理解。由于學生有巨大動力去看操作的實際結果,SAVS 3D針對實際經驗的需要,橋接理論與實踐間的差距,同時重點構建集體推理以理解具體的場景。SAVS 3D也注重在圖形接口應用和文檔化上的開發(fā)以鼓勵學生并產生較優(yōu)的學習曲線。

該方法讓用戶探索不同的場景,無需強迫他們遵循指定的路線。這考慮到更多的創(chuàng)造性,由此產生有趣的觀察。在探索過程中,用戶能發(fā)現錯誤,檢查錯誤并從錯誤中學習。

為使軟件體系結構課程更有趣和鼓勵人,SAVS3D目標是學生重獲通過愉快的方式掌握知識的體會。其思想是給課堂注入巨大的活力,導致學生更有意義的參加。

然而,該工作仍在進行中,目前還沒有進行評價。下一步是完成原型的實現,包括在我們團隊的環(huán)境下與其它研究成果的集成,制定計劃并進行評價以便在具體的場景中檢查SAVS3D的優(yōu)缺點,如它的效率和吸引力的等級等。

[1]Loe Feijs,Roel de Jong,“3Dvisualization of software architectures”,Communications of the ACM,41(12),1998:73-78.

[2]J.Gil,S.Kent,“Three dimensional software modeling”,In:Proceedings of the 20th International Conference on Software Engineering,IEEE Computer Society,Kyoto,Japan,1998:105-114.

[3]O.Radfelder,M.Gogolla,“On better understanding UML diagrams through interactive three-dimensional visualization and animation”,In:Proceedings of the Working Conference on Advanced Visual Interfaces,ACM Press,New York,USA,2000:292--295.

[4]P.Mcintosh,M.Hamilton,R.Van Schyndel,“X3D-UML:enabling advanced UML visualization through X3D”,In:Proceedings of the 10th International Conference on 3DWeb Technology(Web3D2005),ACM Press,Bangor,U.K.,2005:135-142.

[5]C.F.J.Lange,M.A.M.Wijns,M.R.V.Chaudron,“A Visualization Framework for Task-Oriented Modeling Using UML”,In:Proceedings of the 40th Hawaii International Conference on System Sciences,IEEE Computer Society,Los Alamitos,CA,USA,2007:289a-298a.

[6]GEF3D,“GEF3DEclipse Project Website”[OL].http://www.eclipse.org/gef3d/,2012.

[7]Jacobson,M.and Working Group 2Collaborators,Complex Systems and Education:Cognitive,Learning,and Pedagogical Perspectives,[OL].http://www.necsi.edu/events/cxedk16/cxedk16-2.html,2012.

[8]C.S.C.Rodrigues,C.M.L.Werner,“Software Architecture Teaching:A Systematic Review”,In proceedings of the 9th World Conference on Computers in Education(WCCE 2009),Bento Goncalves,Porto Alegre,Brazil,2009:1-10.

[9]H.Kato,“ARToolkit”,Human Interface Technology Laboratory,University of Washington,[OL].http://www.hitl.washington.edu/artoolkit,2012.

[10]M.Shaw,“Software Engineering Education:A Roadmap”,In:Proceedings of the Conference on the Future of Software Engineering,22nd ICSE,Limerick,Ireland,2000:371-380.

猜你喜歡
體系結構虛擬世界視圖
5.3 視圖與投影
視圖
虛擬世界和真實世界的紐帶
Y—20重型運輸機多視圖
現代兵器(2017年4期)2017-06-02 15:59:24
SA2型76毫米車載高炮多視圖
現代兵器(2017年4期)2017-06-02 15:58:14
虛擬世界大門正啟
擁抱虛擬 珍惜現實
基于粒計算的武器裝備體系結構超網絡模型
作戰(zhàn)體系結構穩(wěn)定性突變分析
基于DODAF的裝備體系結構設計
旺苍县| 三亚市| 从江县| 余庆县| 恩施市| 绥中县| 常熟市| 中阳县| 石河子市| 卢龙县| 含山县| 即墨市| 柞水县| 深水埗区| 新巴尔虎左旗| 永平县| 涪陵区| 咸阳市| 保靖县| 武城县| 汾阳市| 丰顺县| 乌兰察布市| 交城县| 越西县| 崇仁县| 辽阳市| 广安市| 安国市| 山东省| 新和县| 天长市| 九龙县| 新竹市| 元江| 农安县| 桃源县| 莲花县| 邯郸县| 怀集县| 南京市|