中南大學軟件體系結構實驗報告實驗1_第1頁
中南大學軟件體系結構實驗報告實驗1_第2頁
中南大學軟件體系結構實驗報告實驗1_第3頁
中南大學軟件體系結構實驗報告實驗1_第4頁
中南大學軟件體系結構實驗報告實驗1_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、軟件體系結構實驗報告項目名稱 UML實驗 專業(yè)班級 軟件1403 學 號 3901140302 姓 名 溫睿誠 實驗成績:批閱教師:2016年 12月 4日實驗1 UML實驗實驗學時: 4 每組人數: 1 實驗類型: 3 (1:基礎性 2:綜合性 3:設計性 4:研究性)實驗要求: 1 (1:必修 2:選修 3:其它)實驗類別: 3 (1:基礎 2:專業(yè)基礎 3:專業(yè) 4:其它)一、實驗目的1. 學會安裝和使用建模工具PowerDesigner,熟練使用PowerDesigner繪制常用的UML圖形,熟悉常用的UML建模符號;2. 構建用例模型來描述軟件需求,包括繪制用例圖,撰寫用例文檔并制作

2、用例檢查矩陣;3. 學習使用狀態(tài)圖描述對象的狀態(tài)及轉換;4. 學習使用活動圖為業(yè)務流程建模;5. 學習使用順序圖描述對象之間的交互;6. 學習類圖的繪制;7. 學習從系統(tǒng)需求中識別類,并構建相應的面向對象模型;8. 學習使用PowerDesigner實現(xiàn)正向工程和逆向工程;9. 學習使用組件圖描述每個功能所在的組件位置以及它們之間的關系;10. 學習使用部署圖描述軟件中各個組件駐留的硬件位置以及這些硬件之間的交互關系。二、實驗內容1. 某酒店訂房系統(tǒng)描述如下:(1) 顧客可以選擇在線預訂,也可以直接去酒店通過前臺服務員預訂;(2) 前臺服務員可以利用系統(tǒng)直接在前臺預訂房間;(3) 不管采用哪種

3、預訂方式,都需要在預訂時支付相應訂金;(4) 前臺預訂可以通過現(xiàn)金或信用卡的形式進行訂金支付,但是網上預訂只能通過信用卡進行支付;(5) 利用信用卡進行支付時需要和信用卡系統(tǒng)進行通信;(6) 客房部經理可以隨時查看客房預訂情況和每日收款情況。繪制該酒店訂房系統(tǒng)的用例圖。2. 根據以下場景繪制用例圖:某企業(yè)為了方便員工用餐,為企業(yè)餐廳開發(fā)了一個訂餐系統(tǒng)(COS:Cafeteria Ordering System),企業(yè)員工可通過企業(yè)內聯(lián)網使用該系統(tǒng)。該系統(tǒng)功能描述如下:(1) 企業(yè)的任何員工都可以查看菜單和今日特價;(2) 系統(tǒng)的顧客是注冊到系統(tǒng)的員工,可以在線訂餐(以下操作均需先登錄)、注冊工

4、資支付、修改訂餐信息和刪除訂餐信息,在注冊工資支付時需要通過工資系統(tǒng)進行身份驗證;(3) 餐廳員工是特殊的顧客,可以進行備餐(系統(tǒng)記錄備餐信息)、生成付費請求和請求送餐,其中對于注冊使用工資支付的顧客生成付費請求并發(fā)送給工資系統(tǒng);(4) 菜單管理員是餐廳員工的一種,可以管理菜單;(5) 送餐員也是餐廳員工的一種,可以打印送餐說明、記錄送餐信息(如送餐時間)以及記錄收費(對于沒有注冊工資支付的顧客,由送餐員收取現(xiàn)金后記錄)。3. Draw a use case diagram for the following library system:The library stores various

5、items that can be borrowed, including books and journals. Books can be borrowed by both staff and students, but only staff members can borrow journals. When a user borrows a book, their loan details are checked to ensure that they have no overdue books on loan, and have not already borrowed the maxi

6、mum permitted number of books.Users can check their own loan details at any time. Librarians are permitted to check the loan details of any user.Library users can reserve books that are currently out on loan. If three reservations have already been made for a given book, and a further reservation is

7、 made, a new copy will be ordered by the librarian.4. 某銀行準備開發(fā)一個網上信用卡管理系統(tǒng) CCMS,該系統(tǒng)的基本功能為: (1) 信用卡申請。非信用卡客戶,說明所要申請的信用卡類型及申請者的基本信息,提交 CCMS登錄。如果信用卡申請被銀行接受,客戶會收到銀行的確認函, 并告知用戶信用卡的有效期及信貸限額;否則銀行會發(fā)送一封拒絕函給該客戶。客戶收到確認函后,需再次登錄 CCMS,用信用卡號和密碼激活該信用卡。激活操作結束后,CCMS將激活通知發(fā)送給客戶,告知客戶其信用卡是否被成功地激活。(2) 月報表生成。在每個月第一天的零點,CCMS為

8、每個信用卡客戶創(chuàng)建一份月報表,對該客戶上月的信用卡交易情況及交易額進行統(tǒng)計。信用卡客戶可以登錄 CCMS查看月報表,也可以要求 CCMS提供打印出的月報表。 (3) 信用卡客戶信息管理。信用卡客戶的個人信息可以在 CCMS 中進行在線的管理。每個信用卡客戶可以在線查詢其個人信息。 (4) 信用卡交易記錄。信用卡客戶使用信息卡進行的每一筆交易都會記錄在 CCMS中。 (5) 交易信息查詢。信用卡客戶可以登錄 CCMS查詢并核實其信用卡交易記錄及交易額。 構造該系統(tǒng)的用例模型,要求繪制用例圖,編寫相應的用例文檔,還需提供用例追蹤矩陣。5. 根據以下描述繪制狀態(tài)圖:某銷售信息管理系統(tǒng)中銷售部員工可以

9、提交訂單,剛提交的訂單為“初始”狀態(tài);系統(tǒng)管理員可以處理訂單,如果訂單無誤,則修改訂單為“備貨”狀態(tài),否則將訂單退還給提交訂單的銷售部員工修改,員工此時可以取消訂單;倉庫管理員備貨完畢后可將訂單狀態(tài)改為“發(fā)貨”狀態(tài);銷售部員工在確認客戶已經收到貨物后,可將訂單改為“關閉”狀態(tài)。6. 某航空公司會員積分系統(tǒng)描述如下:乘客只要辦理該航空公司的會員卡,即可成為普卡會員,普卡會員可以升級到銀卡會員或金卡會員。非會員不能積累里程數。每年年末,系統(tǒng)根據會員在本年度累積的里程數對下一年會員等級進行調整。普卡會員在一年內累積的里程數若滿25000英里但不足50000英里,則自動升級為銀卡會員;若累積的里程數在

10、50000英里以上,則自動升級為金卡會員。銀卡會員在一年內累積的里程數若在50000英里以上,則自動升級為金卡會員。若一年內沒有達到對應級別要求的里程數,則自動降低會員等級。金卡會員一年內累積的里程數若不足25000英里,則自動降級為普卡會員;若累積的里程數達到25000英里,但是不足50000英里,則自動降級為銀卡會員。銀卡會員一年內累積的里程數若不足25000英里,則自動降級為普卡會員。請根據以上描述繪制會員對象的狀態(tài)圖。7. 根據以下描述繪制某訂餐系統(tǒng)中顧客訂餐過程的活動圖(要求繪制泳道):(1) 顧客請求查看菜單;(2) 系統(tǒng)顯示菜單和今日特價;(3) 顧客選菜;(4) 系統(tǒng)顯示訂單和

11、價格;(5) 顧客確認訂單;(6) 系統(tǒng)顯示可送餐時間;(7) 顧客指定送餐時間、地點和支付方式;(8) 系統(tǒng)確認接受訂單,然后發(fā)送Email給顧客以確認訂餐,同時發(fā)送相關訂餐信息通知給餐廳員工。8. 某在線拍賣網站的拍賣流程描述如下:(1) 賣方在網站上發(fā)起一次拍賣,并設置本次拍賣的起拍價。(2) 賣方確定拍賣標的以及拍賣標的保留價(若在拍賣時間結束時,所有出價均低于拍賣標的保留價,則本次拍賣失敗)。(3) 賣方在網站上發(fā)布本次拍賣品的介紹。(4) 買方參與拍賣,給出競拍價,多個買方可以出價。(5) 賣方選擇接受一個競拍價作為成交價,買方在線支付,結束拍賣。根據以上描述繪制活動圖(要求繪制泳

12、道)。9. 根據如下描述繪制順序圖:在某在線訂房系統(tǒng)中,顧客輸入房間套數、房間類型、入住時間、入住天數等信息,系統(tǒng)顯示符合要求的房間號;顧客確定預訂的房間,系統(tǒng)顯示預付訂金信息;顧客輸入信用卡賬號和密碼,系統(tǒng)請求銀行信用卡系統(tǒng)提供支付服務;銀行信用卡系統(tǒng)驗證用戶信息并返回驗證通過和支付成功消息;顧客請求系統(tǒng)打印預訂單和收據,系統(tǒng)打印相關資料;預訂結束。10. 根據以下Java源代碼繪制相應的順序圖:public class Sale private List productItems = new ArrayList;public Money getTotal() Money total = n

13、ew Money();Money subTotal = null;for (SalesProductItem item : productItems) subTotal = item.getSubTotal();total.add(subTotal);return total;11. 根據以下描述繪制類圖,再正向工程生成Java源代碼(也可生成其他面向對象語言的源代碼,如C+或C#等):圖形(Shape)可分為圓形(Circle)、矩形(Rectangle)、橢圓形(Ellipse)等具體圖形,在Shape類中提供了一個抽象的draw()方法用于繪制圖形,而在具體的圖形類中實現(xiàn)該抽象draw(

14、)方法。提供一個圖形工廠類(ShapeFactory),該類提供一個靜態(tài)方法createShape(char type),其返回類型為Shape,參數type為所需繪制圖形對應的代碼,例如“c”表示圓形,“r”表示矩形,“e”表示橢圓形等,在createShape()方法中,可以使用條件語句來判斷所需繪制圖形的類型,并根據參數的不同返回不同的具體形狀對象?!咀ⅲ骸皠?chuàng)建關系”是一種特殊的“依賴關系”】12. 根據以下描述繪制類圖:某商場會員管理系統(tǒng)包含一個會員類(Member),會員的基本信息包括會員編號、會員姓名、聯(lián)系電話、電子郵箱、地址等,會員可分為金卡會員(GoldMember)和銀卡會員

15、(SilverMember)兩種,不同類型的會員在購物時可以享受不同的折扣;每個會員可以擁有一個或多個訂單(Order),每一個訂單又可以包含至少一條商品銷售信息(ProductItem),商品銷售信息包括訂單編號、商品編號、商品數量、商品單價和折扣等;每一條商品銷售信息對應一類商品(Product),商品信息包括商品編號、商品名稱、商品單價、商品庫存量、商品產地等。13. 某基于C/S的即時聊天系統(tǒng)的注冊和登錄模塊功能描述如下:(1) 注冊功能:用戶通過注冊界面(RegisterForm)輸入新帳號,系統(tǒng)檢測該帳號是否已存在,如果不存在則可注冊成功,否則提示“帳號已存在”,用戶再次輸入帳號;

16、用戶輸入其他個人信息;系統(tǒng)保存用戶個人信息;用戶個人信息包括帳號、密碼、姓名、性別、年齡、電話、電子郵箱等。(2) 登錄功能:用戶通過登錄界面(LoginForm)輸入賬號和密碼,系統(tǒng)將輸入的賬號和密碼與存儲在數據庫(User)表中的用戶信息進行比較,驗證用戶輸入是否正確,如果輸入正確則進入主界面(MainForm),否則提示“輸入錯誤”?,F(xiàn)對這兩個模塊進行設計,要求如下:(1) 根據以上描述繪制類圖,要求分析出每個類中的主要方法;(2) 需要提供獨立的業(yè)務邏輯類和數據訪問類,考慮到數據庫的移植性,需提供抽象的數據訪問接口;(3) 盡量使用數據傳輸對象(DTO)來傳遞參數,減少方法中參數的個數

17、。14. 根據以下描述,使用組件圖對所述源代碼文件進行建模:Help.h是一個頭文件,被Calculate.cpp和Filter.cpp引用,而Calculate.cpp又引用了Filter.cpp。此外,F(xiàn)ilter.cpp還引用了頭文件FileReader.h,Display.cpp又依賴于Calculate.cpp的運算結果。15. 某電子商務網站的硬件部署情況如下:(1) 客戶可通過瀏覽器訪問該網站,以實現(xiàn)查詢商品、在線購物、注冊、登錄等功能;(2) 電子商務網站的界面文件和業(yè)務邏輯代碼以war文件的方式部署在一臺Web服務器上,該服務器使用Tomcat作為Web服務器中間件;(3)

18、為了降低Web服務器的負載,該網站的數據庫部署在另一臺服務器中,Web服務器通過網絡連接數據庫服務器;(4) 為了實現(xiàn)在線支付功能,網站需要與銀行提供的網上銀行系統(tǒng)進行通信;(5) 考慮到系統(tǒng)的安全性,系統(tǒng)的后臺管理通過C/S方式來實現(xiàn),后臺管理程序打包成jar文件,管理員在自己的工作電腦中通過該jar文件中的數據庫訪問模塊直接訪問數據庫服務器,以實現(xiàn)對網站數據的增刪改查等操作和管理。根據以上描述繪制該電子商務網站的部署圖。三、實驗要求1. 正確安裝PowerDesigner;2. 熟練使用PowerDesigner繪制用例圖、狀態(tài)圖、活動圖、順序圖、類圖、組件圖和部署圖;3. 需按照用例建模

19、的流程,提供用例圖、用例文檔和用例追蹤矩陣;4. 熟練使用PowerDesigner實現(xiàn)正向工程和逆向工程;5. 使用UML2.X中的標準圖符繪制圖形,對于一些較為復雜的圖形,適當增加文字注釋來進行說明;6. 所繪制圖形必須正確、完整,需具有較好的可讀性,注意圖形中圖符和文字大小及布局。四、實驗步驟1. 安裝PowerDesigner15.X;2. 熟悉PowerDesigner15.X的常用功能;3. 分析實例場景,識別執(zhí)行者;4. 識別用例及用例之間的關系;5. 使用PowerDesigner15.X繪制用例圖;6. 撰寫用例文檔;7. 創(chuàng)建用例追蹤矩陣;8. 使用PowerDesigne

20、r15.X繪制狀態(tài)圖;9. 使用PowerDesigner15.X繪制活動圖;10. 使用PowerDesigner15.X繪制順序圖;11. 使用PowerDesigner15.X繪制類圖,并正向工程生成源代碼;12. 使用PowerDesigner15.X繪制組件圖;13. 使用PowerDesigner15.X繪制部署圖。五、實驗結果1. 酒店訂房系統(tǒng)用例圖:2. 訂餐系統(tǒng)用例圖:3. 圖書館系統(tǒng)(Library System)用例圖:4. 網上信用卡管理系統(tǒng)CCMS的需求模型:(1) 用例圖:(2) 用例描述文檔:(3) 用例追蹤矩陣:5. 銷售信息管理系統(tǒng)中訂單對象的狀態(tài)圖:6. 航

21、空公司會員積分系統(tǒng)中會員對象的狀態(tài)圖:7. 訂餐系統(tǒng)活動圖:8. 在線拍賣網站拍賣流程活動圖:9. 在線訂房系統(tǒng)順序圖:10. 源代碼對應的順序圖:11. 類圖:源代碼:/* * Module: Shape.java * Author: 溫 睿誠 * Purpose: Defines the Class Shape */import java.util.*;/* pdOid d441b20d-f4d2-4238-a6c4-698a591b9d33 */public abstract class Shape /* pdOid 4f77af56-5595-447b-998e-2d6e3f62e8f

22、6 */ public abstract void draw();/* * Module: Circle.java * Author: 溫 睿誠 * Purpose: Defines the Class Circle */import java.util.*;/* pdOid aa5d04eb-1082-4103-b912-2cde4e6b88b7 */public class Circle extends Shape /* pdOid 8e7e9461-d13c-48b1-a4bb-53de19fc678e */ public void draw() / TODO: implement /* * Module: Rectangle.java * Author: 溫 睿誠 * Purpose: Defines the Class Rectangle */import java.util.*;/* pdOid 0b3e43a3-2821-4f6a-a11b-ed15b854ea38 */public class Rectangle extends Shape /* pdOid f6563643-07dc-48e5-8fba-3f20e86b524f */ public void draw() / TODO: implement /* * M

溫馨提示

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

評論

0/150

提交評論