軟件建模實驗指導書(第二版)_第1頁
軟件建模實驗指導書(第二版)_第2頁
軟件建模實驗指導書(第二版)_第3頁
軟件建模實驗指導書(第二版)_第4頁
軟件建模實驗指導書(第二版)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、軟件建模技術實驗指導書老師: 羅海平、段喜龍、梁旗軍 時間: (第二版) 備注: 實踐指導及實踐試驗訓練 軟件建模技術實驗實踐訓練體系適用專業(yè): 計算機科學技術、軟件工程 第一部分 課程與實驗綜述一課程簡介及實踐要求:軟件建模技術是以介紹面向對象的統一建模語言UML為主,使學生了解面向對象技術的基本概念,掌握面向對象的分析和設計方法,以及與面向對象技術相關的一些軟件開發(fā)技術,同時掌握在Rational Rose環(huán)境下用UML進行分析和設計的技術。本課程在教學內容方面著重基本理論、基本知識和基本方法,在培養(yǎng)實踐能力方面著重設計構思和設計技能的基本訓練,熟練的上機操作能力和分析能力。實驗實踐訓練是

2、UML與面向對象分析與設計教學的重要技能環(huán)節(jié)。通過實驗,使學生加深理解、驗證、鞏固課堂教學內容,特別是通過設計和綜合實驗,發(fā)揮學生的想象力和創(chuàng)新能力。二課程實驗目的要求:通過UML的實驗,學生應該:1學會用面向對象的思想去分析和設計相關系統;2學會用Rose建模工具進行軟件建模。三課程實驗參考資料1.(美)Joseph Schmuller著.UML基礎、案例與應用.人民郵電出版社,20042.(美)Hans-Erik Eriksson.UML 2工具箱. 電子工業(yè)出版社,20043.吳際,金茂忠.UML面向對象分析.北京航空航天大學出版社,20024.趙從軍.UML設計及應用.機械工業(yè)出版社,

3、20045.Grady Booch,James Rumbaugh,Ivar Jacobson.UML用戶指南.機械工業(yè)出版社,20016.吳建,鄭潮,汪杰.UML基礎與Rose建模案例.人民郵電出版社,20047.(美)Craig Larman.UML和模式應用(第3版).機械工業(yè)出版社,2006第二部分 實驗實踐指導實驗一 用例用例圖主要用來圖示化系統的主事件流程,它主要用來描述客戶的需求,即用戶希望系統具備的完成一定功能的動作,通俗地理解用例就是軟件的功能模塊,所以是設計系統分析階段的起點,設計人員根據客戶的需求來創(chuàng)建和解釋用例圖,用來描述軟件應具備哪些功能模塊以及這些模塊之間的調用關系,

4、用例圖包含了用例和參與者,用例之間用關聯來連接以求把系統的整個結構和功能反映給非技術人員(通常是軟件的用戶),對應的是軟件的結構和功能分解。(用例是文檔描述)用例是從系統外部可見的行為,是系統為某一個或幾個參與者(Actor)提供的一段完整的服務。從原則上來講,用例之間都是獨立、并列的,它們之間并不存在著包含從屬關系。但是為了體現一些用例之間的業(yè)務關系,提高可維護性和一致性,用例之間可以抽象出包含(include)、擴展(extend)和泛(generalization)幾種關系。共性:都是從現有的用例中抽取出公共的那部分信息,作為一個單獨的用例,然后通后過不同的方法來重用這個公共的用例,以減

5、少模型維護的工作量。包含(include) 擴展(extend) 泛化(generalization)1、包含(include)包含關系:使用包含(Inclusion)用例來封裝一組跨越多個用例的相似動作(行為片斷),以便多個基(Base)用例復用?;美刂婆c包含用例的關系,以及被包含用例的事件流是否會插入到基用例的事件流中。基用例可以依賴包含用例執(zhí)行的結果,但是雙方都不能訪問對方的屬性。 包含關系對典型的應用就是復用,也就是定義中說的情景。但是有時當某用例的事件流過于復雜時,為了簡化用例的描述,我們也可以把某一段事件流抽象成為一個被包含的用例;相反,用例劃分太細時,也可以抽象出一個基用例,

6、來包含這些細顆粒的用例。例如:業(yè)務中,總是存在著維護某某信息的功能,如果將它作為一個用例,那新建、編輯以及修改都要在用例詳述中描述,過于復雜;如果分成新建用例、編輯用例和刪除用例,則劃分太細。這時包含關系可以用來理清關系。2、擴展(extend)擴展關系:將基用例中一段相對獨立并且可選的動作,用擴展(Extension)用例加以封裝,再讓它從基用例中聲明的擴展點(Extension Point)上進行擴展,從而使基用例行為更簡練和目標更集中。擴展用例為基用例添加新的行為。擴展用例可以訪問基用例的屬性,因此它能根據基用例中擴展點的當前狀態(tài)來判斷是否執(zhí)行自己。但是擴展用例對基用例不可見。對于一個擴

7、展用例,可以在基用例上有幾個擴展點。例如,系統中允許用戶對查詢的結果進行導出、打印。對于查詢而言,能不能導出、打印查詢都是一樣的,導出、打印是不可見的。導入、打印和查詢相對獨立,而且為查詢添加了新行為。因此可以采用擴展關系來描述:3、泛化(generalization)泛化關系:子用例和父用例相似,但表現出更特別的行為;子用例將繼承父用例的所有結構、行為和關系。子用例可以使用父用例的一段行為,也可以重載它。父用例通常是抽象的。在實際應用中很少使用泛化關系,子用例中的特殊行為都可以作為父用例中的備選流存在。例如,業(yè)務中可能存在許多需要部門領導審批的事情,但是領導審批的流程是很相似的,這時可以做成

8、泛化關系表示: 上面是我參考的一篇文章,覺得將三種關系的區(qū)別講得很清晰,在此基礎上結合自己的系統,對項目(在線購物系統)的用例做了整體的描繪。*(1)系統整體用例圖(商品用例圖)(購買信息用例)(用戶資料用例)按照先整體用例,后子系統用例來進行描繪的,歡迎大家提出好的建議!UML中擴展和泛化的區(qū)別泛化表示類似于OO術語“繼承”或“多態(tài)”。UML中的Use Case泛化過程是將不同Use Case之間的可合并部分抽象成獨立的父Use Case,并將不可合并部分單獨成各自的子Use Case;包含以及擴展過程與泛化過程類似,但三者對用例關系的優(yōu)化側重點是不同的。如下: 泛化側重表示子用例間的互斥性

9、; 包含側重表示被包含用例對Actor提供服務的間接性; 擴展側重表示擴展用例的觸發(fā)不定性;詳述如下: 既然用例是系統提供服務的UML表述,那么服務這個過程在所有用例場景中是必然發(fā)生的,但發(fā)生按照發(fā)生條件可分為如下兩種情況:無條件發(fā)生:肯定發(fā)生的;有條件發(fā)生:未必發(fā)生,發(fā)生與否取決于系統狀態(tài);因此,針對用例的三種關系結合系統狀態(tài)考慮,泛化與包含用例屬于無條件發(fā)生的用例,而擴展屬于有條件發(fā)生的用例。進一步,用例的存在是為Actor提供服務,但用例提供服務的方式可分為間接和直接兩種,依據于此,泛化中的子用例提供的是直接服務,而包含中的被包含用例提供的是間接服務。同樣,擴展用例提供的也是直接服務,但

10、擴展用例的發(fā)生是有條件的。另外一點需要提及的是:泛化中的子用例和擴展中的擴展用例均可以作為基本用例事件的備選擇流而存在。在Powerdesigner11中畫use case的過程如下一、實驗目的1.學會分析系統中的參與者和用例2.掌握用例圖的繪制方法3.掌握詳細描述用例二、實驗器材1. 計算機一臺;2. Powerdesigner11 工具軟件;三、實驗內容分析ATM系統(或圖書館管理系統、POST系統、人力資源管理系統等)的需求;畫出對應系統的用例模型圖、給出一個用例的詳細描述形式(3頁以上)。四、實驗步驟1.分析ATM自動取款機:客戶可以取錢,存錢,查詢余額,轉帳,修改密碼。通過分析可找出

11、如下幾個參與者:1ATM2客戶通過分析得到如下用例: (1)存款(2)取款(3)查詢余額(4)轉帳(5)修改密碼(6)打印收據2繪圖步驟: 下面介紹在Rose2003中創(chuàng)建用例圖的過程:(1)file-new-object_oriented model 選擇如圖1,出現圖1,為編輯用例圖做好準備。(2)在用例視圖中,從工具欄中選擇Actor圖標,在右邊的繪圖區(qū)中添加一個新元素,并取名客戶表明新增一個參與者,如圖2所示。 圖2(3)同樣的方法添加參與者“ATM”,如圖3(以下圖為Rose版本,同學們用power designer 11完成)所示。 圖3(4)在工具欄上選擇用例的圖標,依次添加存款

12、、取款、查詢余額、轉帳、修改密碼、打印收據,如圖4所示。 圖4(5)添加參與者和用例間的關聯關系,如圖5所示。 圖5五、實驗報告要求1 整理實驗結果。2 小結實驗心得體會。實驗二 狀態(tài)圖和活動圖狀態(tài)圖是系統分析的一種常用工具,它通過建立類對象的生存周期模型來描述對象隨時間變化的動態(tài)行為。狀態(tài)機狀態(tài)機是展示狀態(tài)與狀態(tài)轉換的圖。通常一個狀態(tài)機依附于一個類,并且描述一個類的實例。狀態(tài)機包含了一個類的對象在其生命周期間所有狀態(tài)的序列以及對象對接收到的事件所產生的反應。狀態(tài)機由狀態(tài)、轉換、事件、活動和動作5部分組成。狀態(tài)圖一個狀態(tài)圖表示一個狀態(tài)機。主要用于表現從一個狀態(tài)到另一個狀態(tài)的控制流。狀態(tài)圖由表示

13、狀態(tài)的節(jié)點和表示狀態(tài)之間轉換的帶箭頭的直接組成。若干個狀態(tài)由一條或多條轉換箭頭連接,狀態(tài)的轉換由事件觸發(fā)。模型元素的行為可以由狀態(tài)圖中的一條通路表示,沿著此通路狀態(tài)機隨之執(zhí)行了一系列動作。一個簡單的狀態(tài)圖如下: 活動圖-1一、實驗目的1 熟悉狀態(tài)圖和活動圖的基本功能和使用方法。2 掌握如何使用建模工具繪制狀態(tài)圖和活動圖方法。二、實驗器材1. 計算機一臺;2. Powerdesigner11 工具軟件;三、實驗內容(1)分析圖書管理系統中的書和借書證的狀態(tài),畫出它們的狀態(tài)圖;(2)分析管理員的活動狀態(tài),畫出管理員的活動圖。四、實驗步驟1.分析在圖書管理系統中,分析書的狀態(tài)如下:1可借2被借3被預

14、約4刪除借書證的狀態(tài)如下:1可用2不可用3刪除管理員的活動如下:1 處理還書2 處理借書3 處理罰款讀者的活動如下:1登錄2找書3預約4瀏覽2繪圖步驟: 下面介紹在Powerdesigner11中創(chuàng)建類和它們之間關系的過程:(1)file-new-object_oriented model 選擇如圖1 圖1(2)在工具欄中選擇“Start State”圖標托到工作區(qū),如圖2所示。 圖2(3)在工具欄中選擇“State”圖標,添加一個元素,命名為“New book”,如圖3所示。 圖3 (4)同樣的方法添加其它狀態(tài),如圖4所示。 圖4 (5)書的各個狀態(tài)之間添加轉移及相應的事件,如圖5所示。 圖

15、5 (6)借書證的狀態(tài)圖,如圖6所示。 圖6 (7)在power designer 11中,繪制圖書管理員的活動圖,新建“Activity Diagram”,如圖7所示: 圖7 (8)讀者的活動圖如圖8所示: 圖8五、實驗報告要求1 整理實驗結果。2 小結實驗心得體會。實驗三 交互圖一、實驗目的1.學會用協作圖實現用例2.掌握順序圖的繪制方法以及順序圖和協作圖的相互轉換。二、實驗器材1. 計算機一臺;2. power designer 11 工具軟件;三、實驗內容畫出ATM取款的順序圖,并轉換為協作圖。四、實驗步驟1.分析ATM取款的場景:(1)通過讀卡機,用戶插入ATM卡;(2)ATM系統從

16、卡上讀取銀行ID、帳號、加密密碼、并用主銀行系統驗證銀行ID和帳號;(3)用戶輸入密碼,ATM系統根據上面讀出的卡上加密密碼,對密碼進行驗證;(4)用戶輸入取款數量;(5)ATM系統通知主銀行系統,傳遞儲戶帳號和取款數量,并接收返回的確認信息;(6)ATM系統輸出先進、ATM卡和顯示帳戶余額的收據;(7)ATM系統記錄事務到日志文件。尋找場景中的對象:ATM、客戶和帳戶。2繪圖步驟: 下面介紹在Rose2003中創(chuàng)建順序圖的過程:(1)file-new-object_oriented model 選擇如圖1(2)在順序圖編輯窗口中,從工具欄中選擇Object圖標,在右邊的繪圖區(qū)中添加一個新元素

17、,并取名Customer表明新增一個對象,如圖2所示。 圖2 (3)同樣的方法,添加ATM對象和Account對象,如圖3所示。 圖3(4)根據ATM取款的場景,獲得第一條消息為“客戶向ATM機提交取款需求”,向圖中添加消息,如圖4所示。 圖4 (5)同樣的方法添加其它消息,如圖5(以下圖為Rose版本,同學們用power designer 11完成)所示。 圖5(6)根據順序圖生成協作圖, 步驟如下:“Browse”“Create Collaboration Diagram”,生成的協作圖,如圖6所示。 圖6五、實驗報告要求1 整理實驗結果。2 小結實驗心得體會。實驗四 類圖一、實驗目的1.

18、理解類的基本概念2.理解類間的關系3.掌握類圖的繪制方法二、實驗器材1. 計算機一臺;2. Rational Rose 工具軟件;三、實驗內容分析選課系統中的類及關系,然后畫出它們的類圖。四、實驗步驟1.分析在選課系統中,通過分析可抽象出如下幾個類:1學生類2管理員類3課程類學生類和管理員類的屬性較容易分析,這里只列出課程類的屬性和方法:(1)課程名稱(2)開課教室(3)課程號(4)授課教師(5)選課的學生(6)開課起始時間(7)允許選課的學生人數(8)設置課程號(9)設置課程名稱(10)查詢課程號(11)查詢允許選課的學生人數2繪圖步驟: 下面介紹在Rose2003中創(chuàng)建類和它們之間關系的過程:(1)file-new-object_oriented model 選擇如圖1 圖1(2)在邏輯視圖中,從工具欄中選擇class圖標,在右邊的繪圖區(qū)中添加一個新元素,并取名Student表明新增一個類。 圖2(3)選擇新創(chuàng)建的元素,點擊鼠標右鍵,,彈出圖3對話框。(4)在對話框中,可以修改元素的名稱,這里新元素的名稱定為“Student”,如圖4所示。圖3圖4(5)點擊“Attributes”選項卡,添加屬性,如圖5所示。圖5(6)點擊“operations”選項卡,添加方法如圖6所示。 圖6(7)同樣的方法添加Course類,如圖7(以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論