版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目十三雙向工程任務(wù)一認(rèn)識(shí)雙向工程
任務(wù)二正向工程任務(wù)三逆向工
任務(wù)一認(rèn)識(shí)雙向工程
操作一動(dòng)態(tài)建模概述
Rose的雙向工程包括正向工程和逆向工程。正向工程就是從UML模型到具體語(yǔ)言代碼的過(guò)程,而逆向工程是在軟件開(kāi)發(fā)環(huán)境中由具體的語(yǔ)言到UML模型的過(guò)程。
使用正向工程,一旦軟件系統(tǒng)的設(shè)計(jì)完成后,開(kāi)發(fā)者可以借助于正向工程直接由UML模型生成程序代碼框架,提高開(kāi)發(fā)效率。借助于逆向工程,開(kāi)發(fā)者可以通過(guò)程序源代碼得到軟件系統(tǒng)的設(shè)計(jì)模型和設(shè)計(jì)文檔。
任務(wù)二正向工程
操作一正向工程的概述
正向工程是從模型圖到代碼框架的過(guò)程。通過(guò)軟件模型對(duì)某種特定語(yǔ)言的映射可以從UML圖得到該語(yǔ)言的代碼,幫助開(kāi)發(fā)者節(jié)約許多編寫(xiě)類(lèi)、定義屬性和方法等重復(fù)性工作的時(shí)間。
對(duì)一個(gè)Java模型元素進(jìn)行正向工程時(shí),模型的特征會(huì)映射到對(duì)應(yīng)的Java語(yǔ)言的特征。Rose類(lèi)圖中的一個(gè)類(lèi)會(huì)通過(guò)組件生成一個(gè)“.Java”文件;Rose中的包會(huì)生成Java中的一個(gè)包。對(duì)于其他語(yǔ)言而言,生成過(guò)程大同小異,在此不作詳細(xì)介紹。
操作二使用Rose的正向工程將類(lèi)圖生成Java代碼
(1)設(shè)置默認(rèn)語(yǔ)言為Java。在主菜單欄中依次選擇【Tools】→【Options】菜單,選擇【Notation】選項(xiàng)卡,選擇“Default”列表框中的語(yǔ)言為Java,如圖13-1所示。
(2)設(shè)置環(huán)境變量ClassPath。在主菜單欄中依次選擇【Tools】→【Java/J2EE】→【ProjectSpecification】菜單,選擇【ClassPath】選項(xiàng)卡,通過(guò)提供的路徑操作按鈕創(chuàng)建保存Java文件的目錄(如D:\temp),如圖13-2所示。
圖13-1設(shè)置默認(rèn)語(yǔ)言為Java圖13-2設(shè)置ClassPath
(3)設(shè)置代碼生成屬性。在“正向工程項(xiàng)目屬性“對(duì)話(huà)框中,選擇【CodeGeneration】選項(xiàng)卡,對(duì)正向工程的屬性進(jìn)行相關(guān)設(shè)置,如圖13-3所示。圖13-3設(shè)置CodeGeneration
(4)進(jìn)行語(yǔ)法檢查。在圖13-4所示的【Tools】→【Java/J2EE】菜單中選擇【SyntaxCheck】進(jìn)行語(yǔ)法檢查并根據(jù)日志中的提示進(jìn)行修正。也可以使用【Tools】→【CheckModel】菜單,對(duì)整個(gè)模型進(jìn)行檢查,如果有錯(cuò)誤將在日志窗口中顯示,可根據(jù)日志進(jìn)行錯(cuò)誤的修改。
(5)指定保存路徑及名稱(chēng)。
打開(kāi)設(shè)計(jì)好的類(lèi)圖,選中要生成的Java文件類(lèi),依次選擇【Tools】→【Java/J2EE】→【GenerateCode】菜單,如圖13-4所示。打開(kāi)“AssignClassPathEntries”對(duì)話(huà)框,按要求指定保存生成的Java文件的路徑以及包名和組件名稱(chēng)。圖13-4選擇生成代碼
(6)完成代碼的生成。指定ClassPath入口路徑后,單擊【OK】按鈕,執(zhí)行代碼生成操作。如果在代碼生成過(guò)程出現(xiàn)問(wèn)題,會(huì)打開(kāi)如圖13-5所示的對(duì)話(huà)框,同時(shí)在Rose的日志顯示區(qū)域會(huì)顯示代碼生成過(guò)程中的信息。圖13-5代碼生成警告對(duì)話(huà)框代碼生成后,可以在保存Java文件夾路徑(這里為D:\temp)中查看所生成的Java文件,如圖13-6所示。圖13-6正向工程生成的Java文件
(7)編輯代碼。代碼生成后,可以在如圖13-7所示的右鍵菜單中選擇【EditCode】,在Rose中查看并編輯新生成的代碼。圖13-7編輯代碼
任務(wù)三逆向工程
操作一逆向工程的概述
RationalRose逆向工程就是從現(xiàn)有系統(tǒng)的代碼來(lái)生成模型的功能。逆向工程通常在迭代過(guò)程結(jié)束后,重新同步模型和代碼時(shí)非常有用。在一個(gè)迭代開(kāi)發(fā)周期中,對(duì)于原有模型的實(shí)現(xiàn),可能會(huì)加入許多新的類(lèi)、屬性或方法,這樣就可能造成設(shè)計(jì)模型和實(shí)現(xiàn)模型不一致。這時(shí)候,采用逆向工程就可以實(shí)現(xiàn)設(shè)計(jì)模型和實(shí)現(xiàn)模型的同步。同時(shí),通過(guò)逆向工程可以分析已有的代碼,了解代碼結(jié)構(gòu)與數(shù)據(jù)結(jié)構(gòu),這些代碼對(duì)應(yīng)到模型圖就是類(lèi)圖、數(shù)據(jù)模型圖與組件圖。RationalRose所支持的逆向工程功能很強(qiáng)大,包括的編程語(yǔ)言有C++、VB、VC、CORBA、Java等,并且可以直接連接DB2、SQLServer、Oracle、Sybase等數(shù)據(jù)庫(kù),還可導(dǎo)入Schema并且生成數(shù)據(jù)模型。
很多大型的軟件系統(tǒng)的開(kāi)發(fā)都涉及數(shù)據(jù)庫(kù)的使用,對(duì)這種大型系統(tǒng)的開(kāi)發(fā),尤其是做二次開(kāi)發(fā)的情況下,主要的難點(diǎn)就是對(duì)源代碼與數(shù)據(jù)庫(kù)結(jié)構(gòu)的分析。利用Rose的逆向工程這一功能,就可以完成代碼、類(lèi)圖以及數(shù)據(jù)庫(kù)Schema到數(shù)據(jù)模型圖的轉(zhuǎn)換。假設(shè)現(xiàn)有圖書(shū)管理系統(tǒng)中的圖書(shū)類(lèi)Book.java代碼如圖13-8所示。圖13-8Book.java代碼
操作二使用Rose的逆向工程將已有的Java源代碼轉(zhuǎn)換成Rose模型
下面由Book.java源文件生成Rose類(lèi)圖。
(1)選擇Java逆向工程。依次選擇【Tools】→【Java/J2EE】→【ReverseEngineer】菜單,如圖13-9所示。打開(kāi)“JavaReverseEngineer”(Java逆向工程)對(duì)話(huà)框。圖13-9Java逆向工程對(duì)話(huà)框
(2)選擇指定文件夾(ClassPath)下的Java源文件,單擊【Reverse】按鈕,執(zhí)行從代碼到模型的逆向轉(zhuǎn)換,在Rose工程的視圖區(qū)域中可以查看由逆向工程所生成的類(lèi),如圖13-10所示。圖13-10生成UML類(lèi)
(3)將轉(zhuǎn)換后的類(lèi)添加到類(lèi)圖,使用鼠標(biāo)將視圖區(qū)域中轉(zhuǎn)換后的類(lèi)(這里為Book)拖放到繪圖區(qū)域,即可得到對(duì)應(yīng)類(lèi)圖,如圖13-11所示。圖13-11逆向工程得到的類(lèi)圖
(4)逆向工程(Java)常見(jiàn)問(wèn)題的解決過(guò)程如下:
①Rose逆向工程的時(shí)候,屬性類(lèi)型表現(xiàn)為:LogicalView::java::lang::。
②
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度咨詢(xún)服務(wù)合同專(zhuān)家團(tuán)隊(duì)提供成果驗(yàn)收3篇
- 大型商場(chǎng)買(mǎi)賣(mài)合同范例
- 東莞農(nóng)村土地轉(zhuǎn)讓合同范例
- 社團(tuán)活動(dòng)計(jì)劃范文合集十篇
- 車(chē)輛過(guò)戶(hù)合同范例合集
- 《提升高中生英語(yǔ)讀后續(xù)寫(xiě)能力的行動(dòng)研究》
- 《雙槽圓形薄壁管橫向裂紋的應(yīng)力強(qiáng)度因子》
- 2024年智能家居系統(tǒng)研發(fā)、購(gòu)銷(xiāo)及安裝服務(wù)合同3篇
- 2024年度保安培訓(xùn)基地員工勞動(dòng)合同書(shū)2篇
- 《收入分配、市場(chǎng)規(guī)模與工業(yè)化》
- 甘肅教育出版社《四年級(jí)信息技術(shù)上冊(cè)》教案新部編本完整通過(guò)版
- 超高加寬例題
- 第6章計(jì)算機(jī)文化基礎(chǔ)(第十版)課件
- 給排水系統(tǒng)調(diào)試方案94503
- SSS-I雙立環(huán)脈動(dòng)高梯度磁選機(jī)使用說(shuō)明書(shū)
- 鋼管材料對(duì)照
- XX音樂(lè)廳舞臺(tái)燈光調(diào)試報(bào)告
- 民用機(jī)場(chǎng)工程造價(jià)控制的難點(diǎn)淺析
- 《分?jǐn)?shù)乘法三》說(shuō)課稿
- 醫(yī)療機(jī)構(gòu)臨床用血管理的通知
- KPS評(píng)分表(精編版)
評(píng)論
0/150
提交評(píng)論