




已閱讀5頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
使用Rational Rose 進(jìn)行UML可視化建模 本課程以某所大學(xué)的在線選修課程管理系統(tǒng)為例來(lái)介紹怎樣使用Rational Rose 進(jìn)行UML可視化建模。最終遞交三個(gè)文件:regist.mdl, regist.sql, VB的代碼或Java的代碼。內(nèi)容:一、系統(tǒng)描述2二、用例圖(Use Case View)2三、活動(dòng)圖(Activity Diagram)(建立選修課程目錄表)5四、相關(guān)的包和類以及簡(jiǎn)單類圖11五、用例實(shí)現(xiàn)圖(Use Case Realization Diagram)13六、順序圖(Sequence Diagram)與合作圖(Collaboration Diagram)15七、類圖中的關(guān)系(Relationships)18八、類圖中的操作與屬性20九、類圖中的泛化22十、狀態(tài)圖(Statechart Diagram)26十一、構(gòu)件圖(Component Diagram)31十二、部署圖(Deployment Diagram)34十三、生成程序代碼35十四、創(chuàng)建數(shù)據(jù)庫(kù)設(shè)計(jì)40十五、附件1:轉(zhuǎn)換后的Visual Basic程序44十六、附件2:轉(zhuǎn)換后的Java程序45十七、附件3:生成的SQL語(yǔ)句46一、 系統(tǒng)描述1 大學(xué)教師選擇本學(xué)期要教授的課程,每位教師最多只能上報(bào)4門(mén)課程。2 教師選課結(jié)束后,教務(wù)管理人員進(jìn)行協(xié)調(diào)和確認(rèn)教師的課程,并創(chuàng)建本學(xué)期的課程目錄表,向?qū)W生公布。2學(xué)生填寫(xiě)課程選修表,每個(gè)學(xué)生最多選修4門(mén)課程;每門(mén)選修課程的學(xué)生數(shù)最多為10人,最少為3人。人數(shù)達(dá)到10人時(shí),停止學(xué)生登記注冊(cè)此門(mén)課程;3 學(xué)生選課結(jié)束后,系統(tǒng)自動(dòng)取消人數(shù)少于三人的課程。4 學(xué)生按最終的課程表到財(cái)務(wù)處辦理收費(fèi)手續(xù)(billing system)。5 教師可查詢所教課程的學(xué)生花名冊(cè)(roster)。6 教務(wù)管理人員維護(hù)學(xué)生、教師和課程的信息。二、 用例圖(Use Case View) 1在線選修課程管理系統(tǒng)中的執(zhí)行者(Actors)l 注冊(cè)選修課程的學(xué)生;l 教授選修課程的教師;l 教務(wù)管理人員必須匯總選修課程情況,制作課程表;l 教務(wù)管理人員必須維護(hù)關(guān)于課程、教師和學(xué)生的所有信息; l 財(cái)務(wù)管理系統(tǒng)從本系統(tǒng)中取出收費(fèi)信息。2使用Rational Rose 創(chuàng)建執(zhí)行者(Actors)圖11) 右擊browser框中的Use Case View包,彈出快捷菜單;2) 選擇NewActor項(xiàng);3) 輸入執(zhí)行者的名字;(如出錯(cuò),可用Rename命令更改)4) 如果文檔窗口不可見(jiàn),選擇屏幕上方的ViewDocumentation菜單;5) 在browser框中選中所需執(zhí)行者;6) 將光標(biāo)置于文檔框中,輸入相應(yīng)文檔。3在線選修課程管理系統(tǒng)中的用例(Use Case)l 注冊(cè)選修課程(學(xué)生);l 選擇教授的選修課程(教師);l 索取課程花名冊(cè)(Roster)(教師);l 維護(hù)課程信息(教務(wù)管理人員);l 維護(hù)教師信息(教務(wù)管理人員);l 維護(hù)學(xué)生信息(教務(wù)管理人員);l 創(chuàng)建課程目錄(教務(wù)管理人員);4使用Rational Rose 創(chuàng)建用例(Use Case)圖21) 右擊browser框中的Use Case View包,彈出快捷菜單;2) 選擇NewUse Case項(xiàng);3) 輸入用例的名字;(如出錯(cuò),可用Rename命令更改)4) 如果文檔窗口不可見(jiàn),選擇屏幕上方的View Documentation菜單;5) 在browser框中選中所需用例;6) 將光標(biāo)置于文檔框中,輸入相應(yīng)文檔。5使用Rational Rose 創(chuàng)建主用例圖(Main Use Case Diagram)1) 雙擊browser框中的Use Case View包中的Main條目,打開(kāi)主用例圖;2) 單擊選中browser框中的執(zhí)行者,并將其拖到主用例圖中;3) 重復(fù)第2)步,直到完成所需的工作為止;4) 單擊選中browser框中的用例,并將其拖到主用例圖中;5) 重復(fù)第4)步,直到完成所需的工作為止;6) 在工具條中選擇單向關(guān)聯(lián)(Unidirectional Association)圖標(biāo);7) 單擊一個(gè)執(zhí)行者,并拖到相應(yīng)的用例上;或單擊一個(gè)用例,并拖到相應(yīng)的執(zhí)行者上。圖3三、 活動(dòng)圖(Activity Diagram)(建立選修課程目錄表)圖41使用Rational Rose 創(chuàng)建活動(dòng)圖(Activity Diagram)1) 右擊browser框中的Use Case View包,彈出快捷菜單;2) 選擇NewActivity Diagram項(xiàng);3) 輸入活動(dòng)圖的名字;(如出錯(cuò),可用Rename命令更改)4) 雙擊browser框中的Activity Diagram名稱,打開(kāi)該圖。2使用Rational Rose 創(chuàng)建活動(dòng)(Activity)1) 在工具條中選擇Activity圖標(biāo);2) 在活動(dòng)圖(Activity Diagram)中單擊要放置活動(dòng)(Activity)的位置;3) 輸入活動(dòng)名字;(如出錯(cuò),可用Rename命令更改)4) 在工具條中選擇State Transition圖標(biāo);5) 單擊一個(gè)活動(dòng),并將其拖到相應(yīng)的活動(dòng)上。圖53使用Rational Rose 創(chuàng)建決策點(diǎn)(Decision Points)1) 在工具條中選擇Decision圖標(biāo);2) 在活動(dòng)圖(Activity Diagram)中單擊要放置決策點(diǎn)的位置;3) 輸入決策的名字;(如出錯(cuò),可用Rename命令更改)4) 在工具條中選擇State Transition圖標(biāo);5) 單擊一個(gè)活動(dòng),并將其拖到相應(yīng)的決策點(diǎn)上;6) 在工具條中選擇State Transition圖標(biāo);7) 單擊一個(gè)決策點(diǎn),拖至拐角處單擊左鍵,再將其拖到相應(yīng)的活動(dòng)上;8) 雙擊此條轉(zhuǎn)換線,打開(kāi)規(guī)格設(shè)定框;9) 選擇Detail 標(biāo)簽頁(yè);10) 在Guard Condition框中輸入條件No;11) 點(diǎn)按OK按扭,關(guān)閉規(guī)格設(shè)定框;12) 在此條轉(zhuǎn)換線上單擊左鍵,選中此條轉(zhuǎn)換線;13) 點(diǎn)按屏幕上方的Format:Line Style:Rectilinear菜單;14) 調(diào)整這條線,使其美觀。圖64使用Rational Rose 創(chuàng)建同步條(Synchronization Bar)1) 在工具條中選擇Horizontal Synchronization圖標(biāo);2) 在活動(dòng)圖(Activity Diagram)中單擊要放置同步條的位置;3) 在工具條中選擇State Transition圖標(biāo);4) 完成下圖。圖75使用Rational Rose 創(chuàng)建泳道(Swim lanes)1) 在工具條中選擇Swim lanes圖標(biāo);2) 在活動(dòng)圖(Activity Diagram)中單擊要放置泳道的位置;3) 雙擊泳道,打開(kāi)規(guī)格說(shuō)明框;4) 在Name框中輸入泳道的名字;5) 點(diǎn)按OK按扭,關(guān)閉規(guī)格設(shè)定框;6) 對(duì)泳道的大小位置進(jìn)行調(diào)整;7) 將所需的活動(dòng)和變換線拖至新泳道中。圖86使用Rational Rose 創(chuàng)建起始活動(dòng)和終止活動(dòng)1) 在工具條中選擇起始活動(dòng)或終止活動(dòng)圖標(biāo);2) 在活動(dòng)圖(Activity Diagram)中單擊要放置起始活動(dòng)或終止活動(dòng)的位置;3) 在工具條中選擇State Transition圖標(biāo);4) 單擊起始活動(dòng),拖到相應(yīng)的活動(dòng)上,或者單擊一個(gè)活動(dòng),拖至終止活動(dòng)上。圖9四、 相關(guān)的包和類以及簡(jiǎn)單類圖1在Rational Rose的Browser框中創(chuàng)建類(Class)圖101) 右擊browser框中的Logica View,彈出快捷菜單;2) 選擇NewClass項(xiàng);3) 輸入類的名字;(如出錯(cuò),可用Rename命令更改)4) 在所建類上單擊右鍵,彈出快捷菜單;5) 選擇Open Specification項(xiàng),選擇General標(biāo)簽頁(yè);6) 在Stereotype框中選擇entity類;7) 單擊OK按扭關(guān)閉規(guī)格說(shuō)明框。邊界類Boundary Classes:l 可用來(lái)塑造操作者與系統(tǒng)之間的交互;l 可用來(lái)理清用戶在系統(tǒng)邊界上的需求;l 可設(shè)計(jì)抽象的用戶界面對(duì)象??刂祁怌ontrol Classes:l 可協(xié)調(diào)對(duì)象之間的交易;l 可將使用案例的細(xì)節(jié)部分封裝起來(lái);l 可將復(fù)雜的計(jì)算或商務(wù)邏輯封裝起來(lái)。實(shí)體類Entity Classes:l 代表永久保存的信息;l 代表E-R模型之中人、事、時(shí)、地、物或概念的信息及行為。2在Rational Rose的Browser框中創(chuàng)建包(Packages)1) 右擊browser框中的Logica View,彈出快捷菜單;2) 選擇New Package項(xiàng);3) 輸入包的名字;(PeopleInfo包用來(lái)存放與人員有關(guān)的內(nèi)容;Interfaces包用來(lái)存放與界面有關(guān)的內(nèi)容;UniversityArtifacts用來(lái)存放與學(xué)校工件有關(guān)的內(nèi)容。)4) 新建圖中的相關(guān)類,并設(shè)置其相應(yīng)的類別;5) 單擊Browser框中的類,將其拖至相應(yīng)的包中。圖113Rational Rose中的主類圖(Main Class Diagram)1) 雙擊browser框Logica View中的Main類圖以打開(kāi)之;2) 單擊Browser框中的包,將其拖到Main類圖上;3) 重復(fù)第2)步,完成下圖。圖124在Rational Rose中創(chuàng)建包中的主類圖(Package Main Class Diagram)1) 雙擊Main類圖中的University Artifacts包,rose將打開(kāi)這個(gè)包,并創(chuàng)建這個(gè)包的主類圖(Package Main Class Diagram);2) 單擊Browser框中的類,將其拖到類圖上;3) 重復(fù)第2)步,完成下圖。圖13五、 用例實(shí)現(xiàn)圖(Use Case Realization Diagram)1使用Rational Rose 創(chuàng)建邏輯視圖中的用例圖(Use Case Diagram)圖141) 右擊browser框中的Logica View,彈出快捷菜單;2) 選擇NewUse Case Diagram項(xiàng);3) 輸入用例圖的名字“Realizations”;(如出錯(cuò),可用Rename命令更改)4) 右擊browser框中的Logica View,彈出快捷菜單;5) 選擇New Use Case項(xiàng);6) 輸入用例的名字;(如出錯(cuò),可用Rename命令更改)7) 雙擊新建的用例,打開(kāi)用例的規(guī)格設(shè)定框;8) 單擊Stereotype框,選擇use case realization選項(xiàng);9) 關(guān)閉用例的規(guī)格設(shè)定框;10) 重復(fù)49步,雙擊“Realizations”,打開(kāi)實(shí)現(xiàn)用例圖;11) 將新建的實(shí)現(xiàn)用例拖入圖中,如下圖。圖15六、 順序圖(Sequence Diagram)與合作圖(Collaboration Diagram)1使用Rational Rose 創(chuàng)建順序圖(Sequence Diagram)圖161) 右擊browser框中的Logica View中的“Maintain course information”實(shí)現(xiàn)用例,彈出快捷菜單;2) 選擇New Sequence Diagram項(xiàng);3) 輸入順序圖的名字“Creat a course”;2在順序圖中創(chuàng)建對(duì)象和信息1) 雙擊順序圖名稱,打開(kāi)順序圖;2) 將browser框Use CaseView包中的執(zhí)行者“Registrar”拖入圖中;3) 選擇工具條中的“Object”圖標(biāo);4) 單擊圖中放置對(duì)象的位置,并輸入相應(yīng)的名字;5) 重復(fù)34步;6) 選擇工具條中的“Object Message”圖標(biāo);7) 從信息發(fā)出者拖至信息接收者;8) 輸入信息的名字;9) 重復(fù)68步。圖173給順序圖中的對(duì)象分配類1) 單擊選中Browser框中所需的類;2) 將此類拖至順序圖相應(yīng)的對(duì)象上。圖183將順序圖轉(zhuǎn)換為合作圖圖191) 雙擊順序圖名稱,打開(kāi)順序圖;2) 選擇屏幕上方的菜單BrowserCreate Collaboration Diagram,或者點(diǎn)按F5鍵;3) 調(diào)整圖中的對(duì)象和信息,使其美觀。七、 類圖中的關(guān)系(Relationships)1使用Rational Rose 創(chuàng)建關(guān)系(Relationship)圖201) 打開(kāi)University Artifacts包中的Main類圖;2) 選擇工具條中的“Association”圖標(biāo)(若此圖標(biāo)不存在,則右擊工具條,選擇Customize項(xiàng)將其加入);3) 點(diǎn)按類圖中的一個(gè)類,拖至另一個(gè)類,輸入關(guān)系的名稱;4) 選擇工具條中的“Aggregation”圖標(biāo)(若此圖標(biāo)不存在,則右擊工具條,選擇Customize項(xiàng)將其加入);5) 點(diǎn)按類圖中的一個(gè)整體類,拖至另一個(gè)部分類,輸入關(guān)系的名稱。2使用Rational Rose 創(chuàng)建角色(Role)圖211) 新建一個(gè)People Info包的Main類圖;2) 右擊關(guān)系線(靠近需要?jiǎng)?chuàng)建角色的類的一端),彈出快捷菜單;3) 選擇Role Name項(xiàng),輸入角色的名字。3增加多重度圖221) 雙擊關(guān)系線,使其彈出規(guī)格設(shè)定框;2) 選擇Detail標(biāo)簽頁(yè)(Role A Detail 或者 Role B Detail);3) 在Multiplicity框中輸入或選擇相應(yīng)的多重度;4) 點(diǎn)按OK按扭,關(guān)閉規(guī)格設(shè)定框。4創(chuàng)建包之間的關(guān)系圖231) 打開(kāi)Logica View中的Main類圖;2) 選擇工具條中的“dependency”圖標(biāo);3) 點(diǎn)按類圖中的一個(gè)客戶包,拖至另一個(gè)供應(yīng)包。八、 類圖中的操作與屬性圖241使用Rational Rose 創(chuàng)建屬性和方法1) 右擊browser框Logica View中UniversityArtifacts包中的類,彈出快捷菜單;2) 選擇NewAttribute項(xiàng),輸入相應(yīng)的名字;3) 重復(fù)12步,完成添加屬性;4) 右擊browser框Logica View中UniversityArtifacts包中的類,彈出快捷菜單;5) 選擇NewOperation項(xiàng),輸入相應(yīng)的名字;6) 重復(fù)45步,完成添加操作;2在類中增加了屬性和操作后對(duì)類圖的影響1) 打開(kāi)University Artifacts包中的Main類圖;2) 將圖中相關(guān)類的顯示改為label(右擊每一個(gè)類,選擇Options: Stereotype Display: Label菜單);3) 類圖中相應(yīng)的屬性與操作自動(dòng)變化為下圖。圖25九、 類圖中的泛化1使用Rational Rose 創(chuàng)建一個(gè)有泛化關(guān)系的類圖1) 在People Info包中創(chuàng)建一個(gè)空類圖Generalization;2) 創(chuàng)建類圖中相關(guān)的類,并將相關(guān)的類拖入圖中;3) 選擇工具條中的“Generalization”圖標(biāo);4) 點(diǎn)按類圖中的一個(gè)子類,拖至一個(gè)父類;5) 重復(fù)第4步完成下圖;圖266) 將左邊的泛化箭頭拖至右邊的泛化線上;7) 調(diào)整圖形。圖272將有泛化關(guān)系的類圖進(jìn)行擴(kuò)展1) 將Course Offering類拖入圖中,并創(chuàng)建對(duì)應(yīng)的關(guān)聯(lián)線、角色、多重度;2) 為相關(guān)的類創(chuàng)建屬性。圖283將有泛化關(guān)系的類圖進(jìn)行優(yōu)化1) 在Browser框中將子類中的公共屬性拖入父類中;2) 將子類中多余的屬性刪去。圖294將有泛化關(guān)系的類圖進(jìn)行多層泛化1) 在People Info包中創(chuàng)建相關(guān)的類,并拖入圖中;2) 創(chuàng)建關(guān)系線、泛化線和多重度。圖30十、 狀態(tài)圖(Statechart Diagram)1使用Rational Rose 創(chuàng)建狀態(tài)圖(Statechart Diagrams)圖311) 右擊browser框中的CourseOffering類,彈出快捷菜單;2) 選擇NewStatechart Diagrams項(xiàng);3) 輸入狀態(tài)圖的名字“CourseOffering States”。2使用Rational Rose 創(chuàng)建狀態(tài)(States)圖321) 在工具條中選擇State圖標(biāo);2) 在狀態(tài)圖中單擊要放置狀態(tài)的位置;3) 輸入狀態(tài)的名字。(如出錯(cuò),可用Rename命令更改)3使用Rational Rose 創(chuàng)建狀態(tài)轉(zhuǎn)換(State Transitions)圖331) 在工具條中選擇State Transitions圖標(biāo);2) 單擊起始狀態(tài),并拖至下一個(gè)狀態(tài);3) 輸入狀態(tài)轉(zhuǎn)換的名字。(如出錯(cuò),可用Rename命令更改)4使用Rational Rose 創(chuàng)建起始狀態(tài)1) 在工具條中選擇Start圖標(biāo);2) 在狀態(tài)圖中單擊要放置起始狀態(tài)的位置;3) 用狀態(tài)轉(zhuǎn)換線進(jìn)行連接。圖345使用Rational Rose 創(chuàng)建結(jié)束狀態(tài)圖351) 在工具條中選擇Stop圖標(biāo);2) 在狀態(tài)圖中單擊要放置結(jié)束狀態(tài)的位置;3) 用狀態(tài)轉(zhuǎn)換線進(jìn)行連接。6使用Rational Rose 增加狀態(tài)轉(zhuǎn)換的細(xì)節(jié)部分1) 雙擊某條轉(zhuǎn)換線,打開(kāi)規(guī)格設(shè)定框;2) 選擇Detail 標(biāo)簽頁(yè);3) 在相應(yīng)的框中輸入action(/后的內(nèi)容)、guard condition( 里的內(nèi)容)以及發(fā)出的send(后的內(nèi)容);4) 點(diǎn)按OK按扭,關(guān)閉規(guī)格設(shè)定框。圖367使用Rational Rose 增加狀態(tài)的Actions部分1) 雙擊某個(gè)狀態(tài),打開(kāi)規(guī)格設(shè)定框;2) 選擇Actions標(biāo)簽頁(yè);3) 右擊Actions框中的任一位置,彈出快捷菜單;4) 選擇Insert項(xiàng),將創(chuàng)建一個(gè)類型為entry的action;5) 雙擊這個(gè)action,彈出action的規(guī)格設(shè)定框;圖376) 在when框中設(shè)定相應(yīng)的類型;7) 在type框中設(shè)定:action或者send event(用表示);8) 輸入action的名字,或event的信息;9) 點(diǎn)按OK按扭,關(guān)閉Action規(guī)格設(shè)定框。10) 點(diǎn)按OK按扭,關(guān)閉狀態(tài)規(guī)格設(shè)定框。圖38十一、 構(gòu)件圖(Component Diagram)1 使用Rational Rose 創(chuàng)建Main構(gòu)件圖(Component Diagram)1) 在Browser框中的Component View中創(chuàng)建圖中的各個(gè)構(gòu)件包;2) 雙擊Browser框中的Component View中的Main構(gòu)件圖;3) 將Browser框中的Component View中的構(gòu)件包拖入圖中;4) 創(chuàng)建包之間的依賴線。圖392創(chuàng)建University構(gòu)件包中的構(gòu)件1) 雙擊Main構(gòu)件圖中的University包,打開(kāi)圖形;2) 在工具條中選擇Component圖標(biāo);3) 單擊圖中某一位置,放置構(gòu)件;4) 輸入構(gòu)件名稱。圖403將類映射到構(gòu)件上圖411) 右擊Browser框中的CourseOffering構(gòu)件,彈出快捷菜單;2) 選擇Open Specification項(xiàng);3) 選擇Realizes標(biāo)簽;4) 右擊所需的類,彈出快捷菜單;5) 選擇Assign項(xiàng);(分配)6) 點(diǎn)按OK按扭,關(guān)閉規(guī)格設(shè)定框。十二、 部署圖(Deployment Diagram)1使用Rational Rose 創(chuàng)建部署圖(Deployment Diagram)1) 雙擊Browser框中的部署圖(Deployment Diagram);2) 選擇工具條中的Processor圖標(biāo),并單擊圖中某一位置;3) 輸入結(jié)點(diǎn)的名字;4) 選擇工具條中的Connection圖標(biāo);5) 點(diǎn)擊某一結(jié)點(diǎn),拖至另一結(jié)點(diǎn);6) 選擇工具條中的Text圖標(biāo);7) 在相應(yīng)結(jié)點(diǎn)下寫(xiě)上文字。圖42十三、 生成程序代碼 1使用Rational Rose為構(gòu)件設(shè)定程序設(shè)計(jì)語(yǔ)言圖431) 右擊Browser框Component View中University包中的CourseOffering構(gòu)件,彈出快捷菜單;2) 選擇Open Specification項(xiàng),打開(kāi)構(gòu)件Course Offering的規(guī)格設(shè)定框;3) 在Language框中選擇相應(yīng)的語(yǔ)言;4) 點(diǎn)按OK按扭關(guān)閉對(duì)話框。2建模輔助工具(如需要設(shè)定,則可進(jìn)入,一般情況下可省略) 1) 右擊Browser框Logica View中University包中的Course Offering類,彈出快捷菜單,選擇Model Assistant項(xiàng);2) 如需要設(shè)定,則可更改選項(xiàng),一般情況下可省略此步操作;3) 編程語(yǔ)言為Visual Basic時(shí),見(jiàn)圖44,前提是系統(tǒng)必須安裝了VB;編程語(yǔ)言為Java時(shí),見(jiàn)圖45,前提是系統(tǒng)必須安裝了JDK。圖44:編程語(yǔ)言為Visual Basic時(shí)圖45:編程語(yǔ)言為Java時(shí)3生成代碼 1) 右擊Browser框Component View中University包中的CourseOffering構(gòu)件,彈出快捷菜單;2) 選擇Update Code項(xiàng);圖463) 選中相應(yīng)的check框,點(diǎn)擊Next按扭;圖474) 點(diǎn)擊Finish按扭;圖485) 如有錯(cuò)誤,則顯示相應(yīng)錯(cuò)誤;6) 點(diǎn)按Close按扭,關(guān)閉窗口。十四、 創(chuàng)建數(shù)據(jù)庫(kù)設(shè)計(jì)1將實(shí)體類的persistence屬性設(shè)為persistent本系統(tǒng)有四個(gè)實(shí)體類:Student、Professor、Course、CourseOffering,分別將它們的persistence屬性設(shè)為persistent。以Course為例,雙擊Browser框Logical View中UniversityArtifacts中Course類,彈出class specification對(duì)話框,選擇detail tab,將persistence屬性設(shè)為persistent。圖492生成數(shù)據(jù)模型 將UniversityArtifacts包和PeopleInfo包轉(zhuǎn)成數(shù)據(jù)庫(kù)的數(shù)據(jù)模型。以UniversityArtifacts為例。右擊Browser框Logical View中UniversityArtifacts包,彈出快捷菜單,選擇Data Modeler/ Transform to Data Model。彈出對(duì)話框,在Destination Schema中鍵入”db”,點(diǎn)擊”O(jiān)K”。在Browser框Logical View中將生成”Schemas”包和“db”子包。子包中生成了T_Course和T_CourseOffering兩個(gè)table。對(duì)PeopleInfo包進(jìn)行相同操作,生成T_Student, T_Professor, T_RegistrationUser三個(gè)table.圖503創(chuàng)建Data Model Diagram右擊Browser框中Logical View/”Schemas”/“db”,彈出快捷菜單,選擇Data Modeler/ New/ Data Model Diagram,生成一個(gè)Data Model Diagram, 取名為Main。圖51雙擊Main,打開(kāi)進(jìn)行編輯,將五個(gè)table拖進(jìn)diagram,生成ER圖。圖524生成SQL語(yǔ)句右擊Browser框中Logical View/”Schemas”/“db”,彈出快捷菜單,選擇Data Modeler/ Forward Engineer,跟wizard進(jìn)行操作,將生成的SQL語(yǔ)句保存在文件中。參見(jiàn)附件3。你可以選擇生成表格create或drop的SQL語(yǔ)句。圖53十五、 附件1:轉(zhuǎn)換后的Visual Basic程序Option Explicit#ModelId=3E2A1E9D0148Implements Course#ModelId=3E2E13980177Private mCourseObject As New UniversityArtifacts.Course /*由Course 泛化而來(lái)*/#ModelId=3E2A980002EEPublic Teacher As Professor /*由設(shè)置角色而來(lái)*/#ModelId=3E2A9DAE0261Public NewProperty2(3 To 10) As Student/*由限定條件而來(lái)*/#ModelId=3E2A7BEB035DPublic NewProperty As Course#ModelId=3E2A826C0109Public Sub getOffering()/*由getOffering操作而來(lái)*/End Sub#ModelId=3E2A827B0280Public Sub addProfessor()/*由addProfessor操作而來(lái)*/End Sub#ModelId=3E2E139801F4Private Sub Course_getOfferings()/*由泛化繼承而來(lái)*/End Sub#ModelId=3E2E13980203Private Sub Course_setProfessor()/*由泛化繼承而來(lái)*/End Sub#ModelId=3E2E13980213Private Property Set Course_(ByVal RHS As CourseOffering)End Property#ModelId=3E2E13980261Private Property Get Course_() As CourseOfferingEnd Property#ModelId=3E2E1F55030DPublic Sub CourseOffering()End Sub#ModelId=3E2E3247038APrivate Property Set Course_theProfessorCourseManager(ByVal RHS As ProfessorCourseManager)End Property#ModelId=3E2E32480000Private Property Get Course_theProfessorCourseManager() As ProfessorCourseManagerEnd Property#ModelId=3E2E3248003EPrivate Property Set Course_theCourseOffering(ByVal RHS As CourseOffering)End Property#ModelId=3E2E3248009CPrivate Property Get Course_theCourseOffering() As CourseOfferingEnd Property十六、 附件2:轉(zhuǎn)換后的Java程序/Source file: C:Program FilesRationalRUPBuilderUniversityCourseOffering.javapackage University;public class CourseOffering extends Course /*由Course 泛化而來(lái)*/ private Course mCourseObject; public Professor Teacher; /*由設(shè)置角色而來(lái)*/ public Student NewProperty2; public Course NewProperty; /* roseuid 3E2E1F55030D */ public CourseOffering() /* * roseuid 3E2A826C0109 */ public void getOffering()/*由getOffering操作而來(lái)*/ /* * roseuid 3E2A827B0280 */ public void addProfessor()/*由addProfessor操作而來(lái)*/ /* * roseuid 3E2E139801F4 */ private void Course_getOfferings()/*由泛化繼承而來(lái)*/ /* * roseuid 3E2E13980203 */ private void Course_setProfessor()/*由泛化繼承而來(lái)*/ /* * param RHS * roseuid 3E2E13980213 */ private void Course_(CourseOffering RHS) /* * return CourseOffering * roseuid 3E2E13980261 */ private CourseOffering Course_() return null; 十七、 附件3:生成的SQL語(yǔ)句CREATE TABLE T_Course (name SMALLINT NOT NULL,description SMALLINT NOT NULL,creditHours SMALLINT NOT NULL,T_Course_ID INTEGER NOT NULL,CONSTRAINT PK_T_Course7 PRIMARY KEY (T_Course_ID);CREATE TABLE T_CourseOffering (T_CourseOffering_ID INTEGER NOT NULL,T_Course_ID INTEGER,T_RegistrationUser_ID INTEGER NOT NULL,COL_2 INTEGER NOT NULL,CONSTRAINT PK_T_CourseOffering8 PRIMARY KEY (T_CourseOffering_ID);CREATE TABLE T_RegistrationUser (realname VARCHAR ( 255 ) NOT NULL,username VARCHAR ( 255 ) NOT NULL,password VARCHAR ( 255 ) NOT NULL,birthday DATE NOT NULL,gender SMALLINT NOT NULL,T_RegistrationUser_ID INTEGER NOT NULL,depar
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 衣服租賃協(xié)議書(shū)模板
- 蔬菜配送押金協(xié)議書(shū)范本
- 2025年城市燃?xì)夤艿栏赂脑祉?xiàng)目社會(huì)穩(wěn)定風(fēng)險(xiǎn)分析與風(fēng)險(xiǎn)防范策略研究報(bào)告
- 探討紡織品檢測(cè)中的國(guó)際標(biāo)準(zhǔn)試題及答案
- 商業(yè)美術(shù)設(shè)計(jì)師的工作自我管理能力試題及答案
- 紡織品設(shè)計(jì)市場(chǎng)木桶理論的應(yīng)用試題及答案
- 商業(yè)設(shè)計(jì)師考試重要趨勢(shì)展望試題及答案
- 紡織工程師證書(shū)考試模擬試題及答案
- 零擔(dān)運(yùn)輸試題及答案
- 紡織品的原材料來(lái)源考核試題及答案
- 汽車(chē)主減速器及差速器的結(jié)構(gòu)設(shè)計(jì)與強(qiáng)度分析畢業(yè)設(shè)計(jì)
- 初中英語(yǔ)譯林版單詞表全冊(cè)詞匯表打印背誦版(全6冊(cè))
- 2023年雅安市人力資源和社會(huì)保障局招考聘用編外工作人員模擬預(yù)測(cè)(共1000題)筆試備考題庫(kù)及答案解析
- 沖擊成孔灌注樁施工工藝和常見(jiàn)問(wèn)題的處理方法
- 臺(tái)灣大學(xué)歐麗娟老師的中國(guó)文學(xué)史講義
- R老年人老年人如何保持適宜體重
- 監(jiān)控設(shè)備安裝技術(shù)交底
- 杭州歷史文化漫游知到章節(jié)答案智慧樹(shù)2023年浙江大學(xué)
- 精選河南省2023年普通高中學(xué)業(yè)水平考試生物
- 2023年湖南省中學(xué)生生物學(xué)奧林匹克競(jìng)賽選拔賽試題及答案
- 消防通風(fēng)施工組織方案
評(píng)論
0/150
提交評(píng)論