




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、面向對象建模方法與技術綜合實驗報告題 目: 在線選課系統(tǒng)的UML建模班 級: 信息081班 學 號: 姓 名: 程 顯 指導教師: 修 宇 UML建模實驗報告一、 用例圖(一) 本次目的1) 熟悉用例圖的基本功能和使用方法。2) 掌握如何使用建模工具繪制用例圖方法。(二) 要求請完成如下任務:1) 使用Rational rose 畫出選課系統(tǒng)的用例圖。2) 同時對主要功能用例進行詳細說明。 選課系統(tǒng)用例圖如下圖所示: 圖1二、 活動圖(一) 本次目的1)熟悉活動圖的基本功能和使用方法。2)掌握如何使用建模工具繪制活動圖方法。(二) 要求請完成如下任務用活動圖來描述系統(tǒng)中已知用例的業(yè)務過程1)
2、使用活動圖對選課用例或相關用例進行描述。2) 使用活動圖對建立選修課程目錄表用例進行描述。 活動圖如下圖所示: 圖2三、類圖(一) 本次目的1) 理解類的基本概念;2) 掌握如何從需求分析中抽象出類的方法及關系;3) 掌握在Rational Rose中繪制類的操作方法。(二) 要求請完成如下任務通過這用例圖和活動圖我們可以初步了解系統(tǒng)的業(yè)務處理流程?,F(xiàn)在需要對系統(tǒng)進行靜態(tài)建模,這就需要從系統(tǒng)的用例圖、活動圖去尋找和發(fā)現(xiàn)重要概念和對象,定義類及關系,使用ROSE創(chuàng)建類圖。請完成如下任務:1) 尋找和抽象出選課用例或相關功能中的類,并進行簡要說明。2) 確定類之間的繼承關系已經(jīng)創(chuàng)建類之間的繼承關系
3、,。3) 請根據(jù)教材中示例部分在Rational Rose中繪制類間的關聯(lián)關系。 類圖如下圖所示: 圖3四、序列圖及協(xié)作圖完成了選課系統(tǒng)的需求分析,并從業(yè)務對象中抽象出了類?,F(xiàn)在需要對前面所給出的用例進行實現(xiàn),而用例的實現(xiàn)主要由交互圖來指定和描述系統(tǒng)的動態(tài)特性。(一) 本次目的1) 理解順序圖的基本概念;2) 理解協(xié)作圖的基本概念;3) 掌握在Rational Rose中繪制交互圖的操作方法。(二) 要求請完成如下任務1) 閱讀用例建模得到的用例文檔說明和用例圖。2) 根據(jù)事件流,確定對象,對選課功能中的主要用例進行動態(tài)建模。3) 根據(jù)分析設計情況,進一步發(fā)現(xiàn)類,細化各類之間的關系,確定主要類
4、的屬性和職責。 Add Course 序列圖如下所示: 圖4 Delete Course 序列圖如下所示: 圖5 Modify Course 序列圖如下所示: 圖6 Query Course 序列圖如下所示: 圖7 Registrar Login 序列圖如下所示: 圖8 Select Course序列圖如下所示: 圖9 Select Course 協(xié)作圖如下所示: 圖10 五、狀態(tài)圖(一) 本次目的1) 理解什么狀態(tài)和狀態(tài)圖;2) 學會使用UML繪制狀態(tài)圖(二) 要求請完成如下任務1)考察課程類對象的狀態(tài)變化情況并分析,定義狀態(tài)及遷移及條件,對課程類對象進行狀態(tài)建模。2)考慮選課系統(tǒng)的業(yè)務流程
5、,對系統(tǒng)進行狀態(tài)建模,幫助設計人員對系統(tǒng)業(yè)務的進一步理解。 狀態(tài)圖如下所示: 圖11六、構建圖和部署圖(一) 本次目的1) 理解組件圖的基本概念2) 理解組件圖的應用:邏輯部署3) 理解部署圖的基本概念4) 理解部署圖的應用:物理部署5) 掌握組件圖和部署圖繪制的方法(二) 要求請完成如下任務參照實驗輔導教材,畫出選課系統(tǒng)構件圖及部署圖并進行文字說明。 構建圖如下所示: 圖12 部署圖如下所示: 圖13七、雙向工程(一) 本次目的1) 理解雙向工程的概念2) 使用Rose進行完成模型的代碼生成(二) 要求請完成如下任務現(xiàn)在,選課系統(tǒng)的分析和設計工作已經(jīng)基本完成,即將進入編碼階段。為了加快編碼進
6、度,可以利用建模工具執(zhí)行正向工程,將系統(tǒng)中的模型轉換成指定語言類型的代碼框架,現(xiàn)要求您使用Rose工具將設計的模型通過正向工程生成代碼框架。按照使用Rose工具生成代碼的6步基本步驟可以順利的完成代碼框架的生成工作。(1)檢查模型,(2)創(chuàng)建組件(3)將類映射到組件(4)設置代碼生成屬性(5)選擇類,組件和包(6)生成代碼粘貼得到的主要代碼生成代碼如下:/People.javapublic class People private String name;private int age;public People() /Student.javapublic class Student exte
7、nds People private int StudentID;public FormObject theFormObject;public Student() public int getStudentID() return StudentID;/DataBase.javapublic class DataBase private String dbpath;public DataBase() public boolean QueryCourse(int CourseID) return true;public Boolean AddCourse(Course Course) return
8、 true;public Boolean DeleteCourse(int CourseId) return true;public void QueryAllCourse() public Boolean querYAssociation(int CourseID, int StudentID) return true;public Boolean AddAssociation(int CourseID, int StudentID) return true;public void QuerySelectedCourse() public String QueryPasswd(int reg
9、ID, String Regname) return null;/Registrar,javapublic class Registrar extends People private int regID;public FormObject theFormObject;public Registrar() private void GetRegistRarInfo() /Course.javapublic class Course private String name;private String classroom;private int CourseID;private String t
10、eacher;private int Students;private String firstLessondate;private int maxStudent;public Course() public void Create(String Coursename, int CourseID, String ClassRoom,String Teacher) public void getCourseInfo() public void DestroyCourse() /ControlObject.javapublic class ControlObject public DataBase
11、 theDataBase;public FormObject theFormObject;public Course theCourse;public ControlObject() public boolean VerifyCourse(Course course) return false;public boolean CanAdd() return false;public boolean CanModify() return false;public boolean QueryCourseByID(int courseID) return false;public void Confi
12、rmDelete() public void GetAllCourse() public boolean queryAssociation(int CourseId, int StudentID) return false;public boolean CanSelect() return false;public void QueryCoursseList(int StudentID) public boolean VerifyRegistrar(int regID, String regname) return false;public Boolean CheckPasswd() retu
13、rn false;/FormObject.javapublic class FormObject public ControlObject theControlObject;public Course theCourse;public FormObject() private void GetCourseInfo() private void ShowSuccessInfo(String strinfo) public int GetCourseID() return 0;private void ShowConfirmPage(String strInfo) private void ConfirmDelete() private void SelectCommand() private void DisplayCourseList(Course courseList) private void DisplayCourseList() private void QuerySelectedCourse(int StudentID) 實驗小結 本學期的實驗到此也告一段落了。一學期的實驗主要完成“在線選課系統(tǒng)的UML建?!?/p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年證券從業(yè)資格證考生經(jīng)驗交流試題及答案
- 市場趨勢分析的基本工具試題及答案
- 深入了解證券從業(yè)資格試題及答案
- 微生物檢測的質量評估指標試題及答案
- 微生物檢驗中引進新技術的挑戰(zhàn)試題及答案
- 微生物檢驗結果發(fā)布與驗證試題及答案
- 新知分享2025年特許金融分析師考試試題及答案
- 2025年證券從業(yè)資格證成就與試題答案
- PARP1-IN-34-生命科學試劑-MCE
- 2025年CFA考試經(jīng)濟政策影響試題及答案
- 全過程工程咨詢投標方案(技術方案)
- DL∕T 1051-2019 電力技術監(jiān)督導則
- T-CPIA 0056-2024 漂浮式水上光伏發(fā)電錨固系統(tǒng)設計規(guī)范
- 2024廣東深圳市龍崗區(qū)總工會招聘社會化工會工作者及事宜筆試歷年典型考題及考點剖析附答案帶詳解
- 公司供應商風險管理制度
- 2024北京市大興初二(下)期中數(shù)學試卷及答案
- 塑造陽光心態(tài)班會省公開課一等獎全國示范課微課金獎課件
- 煤礦+925東大巷掘進作業(yè)規(guī)程
- 完整解讀2024年關于加強社區(qū)工作者隊伍建設的意見內容課件
- 石子的檢驗報告
- 淺談抖音短視頻對大學生的影響
評論
0/150
提交評論