軟件工程導論試題集_第1頁
軟件工程導論試題集_第2頁
軟件工程導論試題集_第3頁
軟件工程導論試題集_第4頁
軟件工程導論試題集_第5頁
已閱讀5頁,還剩38頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、1. 航空公司“機票預定系統”: 航空公司為給旅客乘機提供方便,需要開發一個機票預定系統。各個旅行社把預定機票的旅客信息(姓名、性別、工作單位、身份證號碼(護照號碼)、旅行時間、旅行始發地和目的地,航班艙位要求等)輸入到系統中,系統根據旅客信息和航班信息為旅客安排航班。當旅客交付了預訂金后,系統打印出取票通知和帳單給旅客,旅客在飛機起飛前一天憑取票通知和帳單交款取票,系統核對無誤即打印出機票給旅客。 請用結構化分析方法,給出系統的功能模型(DFD描述)。旅行社機票預訂旅客預訂信息取票通知賬單機票取票通知賬單/票款 參考答案:(0層,1層DFD) 旅行社旅客錄入預訂信息安排航班旅客取票賬單旅客信

2、息航班信息取票通知機票取票通知機票價格時間等級旅行時間姓名性別旅行地點身份證號旅客工作單位航班機票信息取票通知旅行社賬單航空公司訂票合適航班機票訂票旅客賬單售出機票信息可售機票信息2. 一個簡化的機票銷售系統需求描述如下:售票員根據旅客需要的航班,首先查詢有無該航班機票。若有,則負責錄入旅客的基本信息,并將指定的機票標志設置為售出;售票部經理可隨時查詢每一個航班的售票情況,并在當日結算時能計算出日營業額。請畫出該系統的0層DFD圖和1層DFD圖(注:1層分解為查詢和錄入、統計和計算兩個處理)。3. 圖書館的預定圖書子系統有如下功能: (1)由供書部門提供書目給訂購組(2)訂書組從各單位取得要訂

3、的書目(3)根據供書目錄和訂書書目產生訂書文檔留檔(4)將訂書信息(包括書目、數量)反饋給供書單位(5)將未訂書目通知訂書者(6)對于重復訂購的書目有系統自動檢查,并將結果反饋給訂書者 畫出數據流圖,并轉換為軟件結構圖。4.某單位要研制一個計算機培訓管理系統,它的業務是將學員發來的信件收集分類后,按以下幾種情況處理: 1)處理報名 如果是報名,則將報名數據送給負責報名事物的職員,他們將查閱課程文件,檢查課程是否滿額,然后在學生文件、課程文件上登記,并開出報告單較財務部們,財務人員開出發票給學生。2)注銷課程;如果是想要注銷原來已選修的課程,則有注銷人員在課程文件、學生文件和賬目文件上做相應的修

4、改,并給學生注銷單。3)處理付款如果是付款,則有財務人員在賬目文件上登記,也給學生一張收費收據。要求:給出該系統的數據流圖和軟件結構圖。 參考答案:(1)數據流圖 (2)結構圖5. 假設一家工廠的采購部每天需要一張定貨報表,報表按零件編號排序,表中列出所有需要再次定貨的零件。對于每個需要再次定貨的零件應該列出下述數據;零件編號、零件名稱、定貨數量、目前價格、主要供應者和次要供應者。零件入庫或出庫稱為事務,通過放在倉庫中的CRT終端把事務報告給定貨系統。當某種零件的庫存數量少于庫存量臨界值時就應該再次定貨。 要求:用結構化方法學對定貨系統進行分析與設計,分別完成以下工作:(1) 給出定貨系統的功

5、能模型。 (2) 用數據字典描述該定貨系統中主要加工“處理定貨”和主要數據存儲“定貨報表”。(3) 給出定貨系統的軟件體系結構(用H圖或結構圖表示)。參考答案:(1)倉庫管理員采購員處理入庫事務入庫事務出庫事務定貨報表處理定貨定貨信息處理出庫事務產生報表定貨信息庫存清單庫存信息 名字:定貨報表別名:定貨信息描述:每天需要定貨的零件表定義:定貨報表=零件編號+零件名稱+定貨數量+價格+1供應者3 位置:輸出到打印機(2)加工名: 處理定貨編號:激發條件:接收到定貨信息優先級: 普通輸入: 庫存信息輸出: 定貨信息加工邏輯: 根據庫存記錄 IF 零件庫存數量 < 該零件庫存臨界值 THEN

6、處理定貨 ELSE 處理其他零件定貨信息 ENDIF (3)定貨系統處理事務產生報表處理定貨處理庫存處理入庫處理出庫 6.高考錄取統分子系統有如下功能:(1) 計算標準分:根據考生原始分計算,得到標準分,存入考生分數文件;(2) 計算錄取線分:根據標準分、招生計劃文件中的招生人數,計算錄取線,存入錄取線文件。要求:用結構化方法學對高考錄取統分子系統進行分析與設計,分別完成以下工作:(1) 給出高考錄取統分子系統的功能模型(用數據流圖表示)。 (2) 給出高考錄取統分子系統的軟件體系結構(用H圖或結構圖表示)。 參考答案:(1)數據流圖 (2)結構圖 7.需求描述如下: 參考答案:8. 參考答案

7、:(1)數據流圖 (2)結構圖 9.10. 某運動會概括力相同接受來自運動員的包名單、裁判的比賽項目及項目成績,產生運動員號碼單發送給運動員,項目參加者發送給裁判,單項名次發送給發布會。該系統的功能如下:(1) 登記報名單接受報名單、比賽項目,產生運動員號碼單、項目參加者,形成運動員名單及團體成績表兩種數據存儲。(2) 統計成績接受項目成績,查詢運動員名單,產生單項名次,填寫團體成績,最后產生團體名次。 11. 現開發一個銀行的活期存取款業務的處理系統,系統功能如下:(1) 審查分類:系統首先根據儲戶所填的存/取款單,確定本次業務的性質,并將存/取款單和存折交下一步處理。(2) 處理存款:系統

8、將存款單上的存款金額分別記錄在存折和帳目文件中,并將現金存入現金庫;最后將存折還給儲戶。(3) 處理取款:系統將取款單上的取款金額分別記錄在存折和帳目文件中,并從現金庫提取現金;最后將現金和存折還給儲戶。繪制該系統的數據流圖和軟件結構圖。 參考答案:(1)數據流圖 頂層 一層(2)系統結構圖如下:12. 銀行儲蓄系統的業務流程:Ø 儲戶填寫的存款單或取款單由業務員鍵入系統;Ø 如果是存款則系統記錄存款人姓名、住址(或電話號碼)、身份證號碼、存款類型、存款日期、到期日期、利率、密碼(可選)等信息,并印出存單給儲戶;Ø 如果是取款而且開戶時留有密碼,則系統首先核對儲戶

9、密碼,若密碼正確或存款時未留密碼,則系統計算利息并印出利息清單給儲戶。Ø 要求畫出分層的數據流圖,并細化到2層數據流圖。參考答案:0層: 1層: 2層:13. 目前住院病人主要由護士護理,這樣做不僅需要大量護士,而且由于不能隨時觀察危重病人的病情變化,還會延誤搶救時機。某醫院打算開發一個以計算機為中心的患者監護系統,請分層次地畫出描述本系統功能的數據流圖。(1)局部監視在醫院的病房里,將病癥監視器安置在每個病床,對病人進行監護。監視器將病人的病癥信號(血壓、體溫、脈搏等組合)實時地傳送到中央監護系統進行分析處理。(2) 中央監視在中心值班室里,值班護士使用中央監護系統對病員的情況進行

10、監控,監護系統實時地將病人的病癥信號與標準的病診信號進行比較分析,根據標準病癥信號庫中的值,判斷是否報警;(3) 更新日志中央監視系統根據分析數據將病人的病癥信號進行格式化并加入更新日期、時間,更新病歷庫中病人的信息,并寫入病員日志文件中。(4) 產生報告 根據醫生的要求隨時打印病人的病情報告,系統還定期自動更新病歷。 參考答案:14. 需求陳述:現有某庫存管理系統,其主要功能如下:1. 建立物資采購單流水賬根據計劃部門轉來的收貨通知單和已存的物資編碼文件,建立物資采購單流水賬。2. 更新物資臺賬 根據技術部門的物資驗收報告和物資采購單流水賬,更新物資臺賬文件。3. 匯總物資臺賬對物資臺賬分類

11、匯總,將結果存儲于物資總賬文件。 要求:用結構化方法學對庫存管理系統進行分析與設計,分別完成以下工作:Ø 給出庫存管理系統的功能模型(用數據流圖表示)。(10分)Ø 給出庫存管理系統的體系結構(用H圖或結構圖表示)。(10分)參考答案:1.數據流圖(15分)(評分標準:基本給出兩個數據源、三個功能模塊和四個文件12分,少一個扣2分)收貨通知單匯總物資臺賬物資總賬文件物資臺賬文件計劃部門建立物資采購單流水賬物資編碼文件物資編碼物資采購單流水賬更新物資臺賬技術部門物資驗收報告資采購單流水賬2結構圖(15分)(評分標準:基本給三個功能模塊和主框架的15分,少一個扣3分)庫存管理系

12、統建立物資采購單流水賬更新物資臺賬匯總物資臺賬15. 需求陳述:某大學教學管理系統子系統的功能說明如下:首先接受學生提交的學生證和申請單,根據學生檔案文件檢驗學生證的有效性和申請單是否填寫的正確,如果有誤則拒絕,如果無誤根據學生的注冊表文件審查接受學生的申請單。如果是申請注冊,則進行注冊登記,并將注冊信息寫入注冊表文件。如果是申請選課,則根據課程檔案文件檢索課程是否有滿足申請要求,如果有則進行選課登記,如果沒有則通知學生無此課。要求:用結構化方法學對教學管理系統子系統進行分析與設計,分別完成以下工作:1) 給出教學管理系統子系統的功能模型(用DFD-數據流圖表示)。(10分) 2) 給出教學管

13、理系統子系統的體系結構(用H圖或結構圖表示)。(10分)參考答案:1功能模型無此課程拒絕學生檢驗審查接受申請檢索課程注冊登記登記課程課程檔案注冊記錄學生檔案選課單申請單學生證申請單注冊選課選課2結構圖審查接受申請教學管理子系統注冊登記選課登記檢驗申請單審查申請面向對象開發技術1. 根據以下描述,使用面向對象的分析方法,分析有那些主要對象和這些對象的主要屬性、方法,畫出對象圖。一個飲料自動售貨機可以放置五種不同或部分相同的飲料,可由廠商根據銷售狀況自動調配,并可隨時重新設置售價,但售貨機最多僅能放置50罐飲料,其按鈕設計在各種飲料樣本的下方,若經金額計算器累計金額足夠,則選擇鍵燈會亮;若某一種飲

14、料已銷售完畢,則售完燈會亮。顧客將硬幣投入售貨機,經累加金額足額的飲料選擇鍵燈亮,等顧客按鍵選擇。顧客按鍵后飲料由出物口掉出,并自動結算及找錢。顧客可在按下選擇鍵前任何一個時刻,可以拉動退幣桿取消交易收回硬幣。 參考答案:類圖販賣機飲料號碼價格投幣-接受飲料掉出金額顯示按紐退幣桿售完顯示存量計算器飲料號碼存量遞減售完顯示重置選擇鈕選擇鈕狀態燈亮燈熄售完燈亮按鈕顧客姓名硬幣投幣-置入拿取飲料退幣桿退幣桿狀態拉動金額計算器金額累加找零重置購買選取被拉動屬于屬于屬于屬于2. 設計一個簡單的學生選課系統,系統能注冊符合要求的同學,同學注冊以后就能進行選課。選課過程如下:先選課名,然后根據課程的上課老師

15、、時間、地點和人數限制來決定是否成功選課;老師也可以根據情況提供新的課程說明或修改過去課程的說明;教務處的老師統一管理注冊的情況,可以有刪除、修改學生、老師和課程的權限。請用面向對象方法設計出對象模型(對象類圖,標出多重性、角色、限定詞和關系:泛化、聚集、關聯)、動態模型(學生成功注冊后選課的順序圖)、功能模型(用例圖)三大模型。 參考答案:(1)類圖(2)用例圖:(3)順序圖3. 請畫出一個用戶使用銀行ATM的狀態轉換圖。從用戶將卡插入卡槽開始,到用戶取卡結束(如果用戶忘記,ATM應報警),用戶可以完成以下幾個步驟:登錄(卡片進入ATM機后,如果不是可讀卡,退卡;如是,等待用戶輸入密碼,三次

16、錯,吞卡,正確后進入主菜單),取錢(進入取錢菜單,輸入金額,如果帳戶余額不足,提示余額,并要求用戶重新輸入,如果帳上錢夠,吐錢幣,并詢問是否打印憑證,最后返回主菜單),主菜單提供退出取卡選擇。5.用例UC1: 預定航班主事件流(主成功場景):1. 顧客向系統提交航班預訂信息(出發地、目的地、出發日期和人數)2. 系統檢索滿足這些條件的航班3. 系統顯示滿足條件的航班信息4. 顧客選擇所要的航班5. 系統檢索該航班剩余的座位信息6. 系統顯示可預訂的座位信息7. 顧客選擇所要的座位8. 系統生成一個臨時預訂記錄9. 系統將顧客選擇的座位狀態從“未預訂”修改為“已預訂”備選事件流(擴展場景):1a

17、. 顧客撤銷購票請求,退出用例2a. 系統檢索不到滿足條件的航班3a. 系統向用戶顯示沒有滿足條件的航班3b.系統建議顧客返回步驟14a. 顧客撤銷購票請求,退出用例問題:(1) 系統分析員認為與該用例相關的類至少有Reservation(預定 )、Seat(座位)和Flight(航班),請補充必要的類,建立對應于該用例的主成功場景的順序圖。(2) 請為對象Flight對象建立狀態圖。用例“預訂航班”的順序圖:類圖:用例“預訂航班”的活動圖:航班狀態圖:6. 需求陳述:下面是大學教學管理系統的子系統的簡單說明: 首先接受學生提交的學生證和申請單,根據學生檔案情況檢驗學生證的有效性和申請單是否填

18、寫的正確,如果有誤則拒絕,如果無誤則根據學生的注冊情況審查接收學生的申請要求。如果是申請注冊,則進行注冊登記;如果是申請選課,則先查詢課程檔案是否有滿足申請要求的課程,如果有則進行選課登記,如果沒有則通知學生無此課。要求:用面向對象方法學對該系統進行分析與設計,分別完成以下工作:(1) 給出教學管理系統的用例模型,并對主要用例進行簡單說明。(10分) (2) 給出教學管理系統中所涉及到的主要類。(10分)(3) 給出教學管理系統的類圖。(10分)(4) 給出教學管理系統中注冊的順序圖。(10分)參考答案:審查接受申請注冊登記登記選課包 含包 含 1)用例圖(10分)(基本給出用例模型5分,給出

19、用例說明再5分,其他酌情給分) 學 生注冊登記:每學期開學注冊時間執行該用例,執行前必須先完成學生審查和接受申請的過程。登記選課:審查和接受申請的過程后,實現學生每學期的選課。2)主要類:課程,選課單,學生,注冊記錄,本科課程,本科生等。(10分)3)類圖如下:(10分)選課單學號姓名課程號課程名選課學期填寫接受登記課程課程號課程名學分開課日期開課系任課教師檢索本科課程是否必修課研究生課程是否學位課注冊記錄學號姓名注冊日期審查登記學生學號姓名性別系別專業入學日期讀入驗證修改本科生班級研究生導師類型研究方向 0,m 1 填寫1 擁有 0,m 0,m 1 4)注冊順序圖如下:(5分):學生:注冊界

20、面:注冊記錄登 錄 審 查 審查合格(注冊) 登記注冊7. 下面是自動售貨機系統的需求陳述,試建立它的對象模型、動態模型和功能模型:自動售貨機系統是一種無人售貨系統。售貨時,顧客把硬幣投入機器的投幣口中,機器檢查硬幣的大小、重量、厚度及邊緣類型。有效的硬幣是一元幣、五角幣、五分幣、二分幣、一分幣。其他貨幣被認為是假幣。機器拒絕接受假幣,并將其從退幣孔退出。當機器接受了有效的硬幣之后,就把硬幣送入硬幣儲藏器中。顧客支付的貨幣根據硬幣的面值進行累加。自動售貨機裝有貨物分配器。每個貨物分配器中包含零個或多個價格相同的貨物。顧客通過選擇貨物分配器來選擇貨物。如果貨物分配器中有貨物,而且顧客支付的貨幣值

21、不小于該貨物的價格,貨物將被分配到貨物傳送孔送給顧客,并將適當的零錢返還到退幣孔。如果分配器是空的,則和顧客支付的貨幣值相等的硬幣將被送回到退幣孔。如果顧客支付的貨幣值少于所選擇的分配器中貨物的價格,機器將等待顧客投進更多的貨幣。如果顧客決定不買所選擇的貨物,他投放進的貨幣將從退幣孔中退出。 參考答案:(1)類圖(2)活動圖8. 有一房地產銷售管理系統,主要功能有房源查詢、房源預定、房源簽約、退房操作、換房操作、房款管理、銷售統計、房款統計,銷售人員主要進行房源的銷售操作,財務人員負責房款的收取,銷售主管能夠及時匯總銷售情況和房款收取情況。1)請畫出房地產管理系統的UML用例圖。2)對于一套房

22、源,有三種狀態:待售狀態、預定狀態、已售狀態,請用UML狀態圖給出房源的狀態變遷情況,并用文字簡單說明。3)采用面向對象的設計思想,試給出該系統應該包含的主要類,并做簡單說明。參考答案:(1) 用例圖(2) 狀態圖(3) 類圖(略)9. 某銀行系統的需求概述如下: 某銀行系統為該行的客戶提供以下業務:存款、取款、轉賬和查詢。擁有該行賬戶的客戶可以利用該銀行系統實現各種銀行業務,如客戶可以存款,也可以取款,或者將存款從一個賬戶轉到另一個賬戶。客戶還可以隨時查詢自己賬戶的情況,并查詢以前所進行的存款、取款等交易記錄。客戶也有權利要求關閉賬戶。 由上述描述可知這個簡化的銀行系統至少應該具有如下功能:

23、l 客戶可以取款l 客戶可以存款l 客戶可以在不同的賬戶之間轉賬l 客戶可以查詢自己賬戶的余額l 銀行職員負責系統的維護附: 銀行系統的”取款”用例的描述 主事件流: 當客戶(Customer)想從自己的賬戶中取錢時,要向銀行職員(Clerk)提交取款單,“取款”用例啟動。(1) 系統提示輸入用戶信息,進行帳戶有效性的驗證(2) 客戶輸入有關帳戶的信息(帳戶信息、密碼等)(3) 系統確認賬戶的有效性。A1:賬戶驗證不合法(4) 系統提示進行取款交易(5) 客戶按照系統提示進行取款交易(交易類型,交易金額)。A2:賬戶余額不足(6) 系統建立取款事件記錄,并更新賬戶的相關信息(7) 用例結束 擴

24、展事件流: A1:賬戶驗證不合法 若賬戶不存在或無效,顯示提示信息,用戶可以重新輸入或終止該用例。 A2:賬戶余額不足 賬戶中的存款金額不足,顯示提示信息,用戶可以重新輸入金額或終止該用例。要求:用面向對象方法學對銀行系統進行分析與設計,分別完成以下工作:(1) 畫出銀行系統的用例圖 (2) 畫出銀行所在的銀行系統的類圖(3) 畫出銀行取款順序圖(時序圖)(4) 畫出銀行取款活動圖參考答案:1.用例圖2. 類與對象模型3.“取款”用例的順序圖4. “取款”用例的活動圖10. 需求陳述: 某銀行系統為該行的客戶提供以下業務:存款、取款、轉賬和查詢。擁有該行賬戶的客戶可以利用該銀行系統實現各種銀行

25、業務,如客戶可以存款,也可以取款,或者將存款從一個賬戶轉到另一個賬戶。客戶還可以隨時查詢自己賬戶的情況,并查詢以前所進行的存款、取款等交易記錄。客戶也有權利要求關閉賬戶。 由上述描述可知這個簡化的銀行系統至少應該具有如下功能:l 客戶可以取款l 客戶可以存款l 客戶可以在不同的賬戶之間轉賬l 客戶可以查詢自己賬戶的余額l 銀行職員負責系統的維護附:銀行系統的”存款”用例的描述。 主事件流: 當客戶(Customer)想向自己的賬戶中存錢時,要向銀行職員(Clerk)提交存款單和現金,“存款”用例啟動。(1)系統提示Clerk輸入用戶姓名、用戶的id號、賬號和所存款項的金額。(2)Clerk輸入

26、相關信息后提交,系統確認賬戶是否存在并有效(當用戶名、用戶id與賬戶的戶主信息一致,且賬戶處于非凍結狀態時,賬戶有效。否則轉E-1。(3)客戶按照系統提示進行存款交易(交易類型,交易金額)。(4)系統建立存款事件記錄,并更新賬戶的相關信息。(5)用例結束 擴展事件流:E-1:賬戶不存在或無效,顯示提示信息,用戶可以重新輸入或終止該用例。要求:用面向對象方法學對該系統進行分析與設計,分別完成以下工作: 1) 給出銀行系統的用例模型 2)給出銀行系統的類圖3)給出存款用例的順序圖4)給出存款用例的活動圖參考答案:1.用例圖2. 類與對象模型3.“存款”用例的順序圖4.“存款”用例的活動圖6、客戶開

27、立賬戶序列圖和協作圖 客戶開立新賬戶的基本工作流程如下: (1)客戶向銀行職員提出開立賬戶要求。 (2)銀行職員在系統主界面請求創建賬戶操作,系統創建賬戶界面。 (3)銀行職員添加賬戶信息后,提交至賬戶類。 (4)賬戶類確認數據庫是否已存在該客戶的賬戶。如不存在,則創建新客戶對象。 (5)然后將客戶信息保存到數據庫中。8、客戶修改賬戶信息序列圖和協作圖 客戶修改賬戶信息的工作流程如下: (1)客戶向銀行職員提出修改賬戶信息的要求。 (2)銀行職員在系統主界面請求查詢賬戶操作,系統創建查詢界面。 (3)銀行職員在查詢界面提交賬號,從賬戶類中獲得指定賬戶的信息,同時系統創建賬戶界面。 (4)銀行職

28、員修改賬戶信息后,提交給賬戶界面。 (5)賬戶界面發送消息更新數據庫中客戶的信息,同時更新賬戶信息。9、銀行賬戶狀態圖 在銀行系統中,有明確狀態轉換的類是賬戶。賬戶包含以下三種狀態:被創建的新賬戶、被修改后賬戶、睡眠賬戶和被刪除的賬戶。它們之間的轉化規則是: (1)客戶開立賬戶時,新的賬戶被創建。 (2)客戶要求變更原有賬戶信息時,賬戶內容被改變。 (3)賬戶長期未使用,銀行將其定義為睡眠賬戶的狀態。 (4) 客戶注銷賬戶,賬戶被刪除。14、創建賬戶活動圖創建賬戶的活動圖,需要創建二個泳道,分別是銀行職員對象和系統對象,具體的活動過程描述如下: (1)系統提示輸入用戶的相關信息和存款金額。 (

29、2)銀行職員輸入相關信息后提交。 (3)系統為客戶創建賬戶,并將賬戶信息保存到數據庫。15、客戶修改賬戶活動圖客戶修改賬戶的活動圖,我們創建了二個泳道,分別是銀行職員對象和系統對象,具體的活動過程描述如下: (1)系統提示輸入用戶的賬號。 (2)銀行職員輸入賬號后提交。系統查詢賬戶信息并顯示。 (3)銀行職員修改賬戶信息后提交,系統更改賬戶信息。11. 下面是某選課系統的子功能“添加課程”用例的事件流。主事件流:(1) 管理員選擇進入管理界面,用例開始。(2) 系統提示輸入管理員密碼。(3) 管理員輸入密碼。(4) 系統驗證密碼。A1:密碼錯誤(5) 進入管理界面,系統顯示目前所建立的全部課程

30、信息。(6) 管理員選擇添加課程。(7) 系統提示輸入新課程信息。(8) 管理員輸入信息。(9) 系統驗證是否和已有課程沖突。A2:有沖突(10) 系統添加新課程,提示課程添加成功。(11) 系統重新進入管理主界面,顯示所有課程。(12) 用例結束。擴展事件流:A1:密碼錯誤(1) 系統提示再次輸入。(2) 用戶確認。(3) 三次錯誤,拒絕再次訪問。(4) 否則進入添加課程事件流第5步。A2:有沖突(1) 系統提示沖突,顯示沖突課程信息。(2) 用戶重新輸入。(3) 繼續驗證直到無沖突。(4) 進入添加課程事件流第10步。用面向對象的開發技術分析上述用例,回答下面的問題。(1) 給出該用例的活

31、動圖(2) 給出該系統的類圖(3) 針對用例中涉及的主要類“Course(課程類)”,建立該類的狀態圖(4) 給出“添加課程”用例的順序圖參考答案:(1)活動圖 (2)類圖 (3)狀態圖 (4)順序圖12. 需求陳述: 銀行與我們的生活息息相關。它為每一個人提供了一系列的金融服務。實際生活中的銀行業務功能及其復雜,這里所介紹的銀行系統只涉及銀行中最基本的功能。 本銀行系統的功能性需求包括以下內容: (1)客戶可以在銀行開立一個或多個賬戶。 (2)客戶能夠將錢款存入已經開立的賬號中。 (3)客戶可從自己的賬戶中進行提款。 (4)客戶能夠將賬戶中的存款轉賬至另一個賬戶。 (5)客戶可以隨時查詢自己

32、賬戶的情況包括以前進行的存款、取款等的交易記錄。 (6)客戶也有權利要求取消賬戶。經過分析系統擁有:銀行職員用例能夠通過該系統進行如下活動: (1)登錄銀行系統。銀行職員在登錄系統時,必須通過系統的身份驗證才能進入銀行系統主界面進行下一步的操作。 (2)對客戶的賬戶進行管理,包括為客戶創建新的賬戶、修改賬戶信息和刪除賬戶。客戶與銀行職員之間是依賴的關系,客戶必須依賴于職員才能完成各種用例。銀行職員作為客戶的代理完成與用例的交互。客戶用例能完成的具體功能如下。 (1)存款。用戶通過銀行職員將錢款存入的自己的賬戶中。 (2)取款。用戶通過銀行職員從自己的賬戶中將錢款取出。 (3)轉賬。用戶通過銀行

33、職員將一個賬戶中的錢款轉至其他的賬戶。由于轉賬既可以在同一銀行之間進行,也可以在不同的銀行之間進行,因此這里用了二個用例,使用本行轉賬和跨行轉賬來描述。本行轉賬和跨行轉賬是轉賬的子用例,它們之間是繼承的關系。13. 需求陳述: 網上選課系統是一個高等院校用來進行對學生選修課程管理的管理信息系統(MIS)。該信息系統能夠為學生提供方便的選課功能,也能夠提高高等院校對學生和教學管理的效率。網上選課系統的功能性需求包括以下內容:(1)系統管理員負責系統的管理維護工作,維護工作包括課程的添加、刪除和修改,對學生基本信息的添加、修改、查詢和刪除。(2)學生通過客戶機瀏覽器根據學號和密碼進入選課界面,在這

34、里學生可以進行查詢已選課程、指定自己的選修課程以及對自己基本信息的查詢。滿足上述需求的系統主要包括以下幾個小的系統模塊:(1)基本業務處理模塊。基本業務處理模塊主要用于實現學生通過合法認證登錄到該系統中進行網上課程的選擇和確定。(2)信息查詢模塊。信息查詢模塊主要用于實現學生對選課信息的查詢和自身信息的查詢。(3)系統維護模塊。系統維護模塊主要用于實現系統管理員對系統的管理和對數據庫的維護,系統的管理包括學生信息、課程信息等信息的維護。數據庫的維護包括數據庫的備份、恢復等數據庫管理操作。 學生用例能夠通過該系統進行如下活動: (1)查詢選課信息。學生可以在查詢界面了解可供自己選擇的各門課程的詳

35、細信息。 (2)登錄選課系統。學生能夠根據自己的學號和密碼登錄選課系統,如果身份驗證失敗,不得進行下一步操作。如果通過身份驗證才能進入下一個操作界面。 (3)選擇所修課程。在選擇課程的界面選擇自己要選修的課程并確認提交。 (4)查詢個人信息。可以通過查詢界面查詢本人的基本信息。 系統管理員用例能夠通過該系統進行如下活動:(1)登錄選課系統。系統管理員使用賬號和登錄密碼登陸系統進行本系統的管理和維護工作。(2)添加學生信息。將新入校的新生的個人基本信息錄入到本系統,在數據庫中保存。(3)修改學生信息。對于個人基本信息發生變化的學生,修改數據庫中相關學生的個人基本信息并保存。(4)刪除學生信息。將

36、不需要再保存的學生個人基本信息從數據庫中刪除。(5)查詢學生信息。根據學生的學號和姓名對在校學生的個人基本信息進行相關的查詢。(6)添加選修課程。將新的課程添加到選課系統并保存到數據庫。(7)修改選修課程。對數據庫中原有的課程信息進行修改并保存到數據庫中。(8)刪除選修課程。將不再開設的選修課程從數據庫中刪除。 根據系統需求,創建靜態系統類圖。我們可以識別系統中存在的主要實體類:系統管理員,學生,課程。 界面類:Form。 學生登錄選課系統的用例:(1)學生希望通過網上選課系統進行某一項操作。(2)學生登錄系統,在登錄頁面LoginFrame輸入自己的用戶名和密碼并提交。(3)系統將學生提交的

37、用戶名和密碼傳遞到的Control類中檢查用戶合法身份的方法中。該方法將用戶信息與數據庫中的用戶信息進行比較,檢查用戶信息中是否存在此學生的信息。 (5)檢查完畢后將驗證結果返回到登錄界面顯示。 (6)學生在登錄界面獲得驗證結果。 登錄系統的順序圖和協作圖如下:學生查詢課程的流程:(1)學生進入查詢課程界面Form,發送查詢選修課程的請求。(2)界面Form向控制對象Control請求課程信息,控制對象到數據庫查詢課程信息。(3)選課界面對象從控制對象中取得所查詢得到的課程對象信息Course。并返回到選課界面上顯示所有的課程信息。(4)學生從Form中獲得課程信息。 3、學生選課用例工作流程

38、1)學生進入選擇選修課程界面SelectFom,并在界面中確定選修的課程并提交請求。(2)選修課程界面SelectFom將學生所選課程的信息傳遞到控制對象Control,控制對象將課程信息與數據庫中的課程信息比較,判斷是否可以選課。(3)如果可以,執行選課操作,將選課結果保存到數據庫中。(4)控制對象返回選課成功信息到選課界面SelectFormo。(5)學生從界面得到選課成功的信息。4、學生查詢個人信息(1)學生進入查詢個人信息界面QueryForm,并在界面中提交查詢請求。(2)界面QueryFom將學生查詢的信息傳遞到控制對象Control。(3)控制對象從數據庫中得到所查詢的個人信息。

39、(4)控制對象Control將得到的信息返回到界面QueryForm并顯示。(5)學生從QueryForm獲得自己想要的個人信息。 5、系統管理員登錄選課系統的工作流程 (1)系統管理員希望通過網上選課系統進行某一項操作。(2)系統管理員登錄系統,在登錄頁面LoginFrame輸入自己的用戶名和密碼并提交。(3)系統將系統管理員提交的用戶名和密碼傳遞到的Control類中檢查用戶合法身份。將用戶信息與數據庫中的用戶信息進行比較,檢查用戶信息中是否存在此管理員的信息。 (5)檢查完畢后將驗證結果返回到登錄界面顯示。 (6)系統管理員在登錄界面獲得驗證結果。如果身份驗證未通過,重新登錄或退出。否則

40、,繼續選擇下一步的操作。 6、系統管理員添加選修課程作流程 (1)系統管理員進入添加課程界面AddForm,并在界面中提交添加課程的信息。(2)界面AddForm將管理員提交的課程信息傳遞給控制對象Control.(3)控制對象向數據庫查詢課程相關信息并對查詢結果進行判斷。(4)控制對象Control.向數據庫中插入新選修課程的數據。(5)控制對象將添加課程成功的信息返回界面AddForm。(6)系統管理員在界面AddForm獲得添加課程成功的信息。 7、系統管理員修改選修課程工作流程 (1)系統管理員進入添加課程界面ModifyForm,并在界面中提交修改課程的信息。(2)界面ModifyF

41、orm將管理員提交的課程信息傳遞給控制對象Control(3)控制對象向數據庫查詢課程相關信息并對查詢結果進行判斷。(4)控制對象Control.向數據庫中插入修改后課程的數據。(5)控制對象將修改課程成功的信息返回界面AddForm。(6)系統管理員在界面AddForm獲得修改課程成功的信息。 8、系統管理員刪除選修課程工作流程 (1)系統管理員進入刪除課程界面DeleteForm,并在界面中提交刪除課程的信息。(2)界面DeleteForm將管理員提交的課程信息傳遞給控制對象Control(3)控制對象向數據庫查詢課程相關信息并對查詢結果進行判斷。(4)控制對象Control向數據庫中執行

42、刪除課程的數據。(5)控制對象將修改課程成功的信息返回界面DeleteForm。(6)系統管理員在界面DeleteForm獲得修改課程成功的信息。 9、系統管理員查詢學生信息工作流程 (1)系統管理員進入查詢信息界面QueryForm,并在界面中提交查詢請求。(2)界面QueryFom將查詢的信息傳遞到控制對象Control。(3)控制對象從數據庫中得到所查詢的學生信息。(4)控制對象Control將得到的信息返回到界面QueryForm并顯示。(5)系統管理員從QueryForm界面獲得查詢學生的信息。 10、系統管理員添加學生信息工作流程 (1)系統管理員進入添加學生信息界面AddInfo

43、Form,并在界面中提交查詢學生的信息。(2)界面AddInfoForm將查詢的信息傳遞到控制對象Control。(3)控制對象到數據庫中查詢的該學生信息對象是否已存在并判斷是否可以添加。(4)控制對象Control將新學生的信息添加到數據庫并保存。(4)控制對象將添加成功信息返回到界面AddInfoForm并顯示。(5)系統管理員從AddInfoForm界面獲得添加成功的信息。 11、系統管理員修改學生信息工作流程 (1)系統管理員進入修改學生信息界面ModifyInfoForm,并在界面中提交修改學生的信息。(2)界面ModifyInfoForm將查詢的信息傳遞到控制對象Control。(

44、3)控制對象到數據庫中查詢的該學生信息對象是否并判斷是否可以修改。(4)控制對象Control將該學生的信息進行修改并保存。(4)控制對象將修改成功的信息返回到界面ModifyInfoForm并顯示。(5)系統管理員從ModifyInfoForm界面獲得修改成功的信息。 12、系統管理員刪除學生信息的工作流程 (1)系統管理員進入刪除學生信息界面DeleteInfoForm,并在界面中提交刪除學生的信息。(2)界面DeleteInfoForm將查詢的信息傳遞到控制對象Control。(3)控制對象到數據庫中查詢的該學生信息對象是否并判斷是否可以刪除。(4)控制對象Control將該學生的信息進

45、行刪除。(4)控制對象將刪除成功的信息返回到界面DeleteInfoForm并顯示。(5)系統管理員從DeleteInfoForm界面獲得刪除成功的信息。 13、課程的狀態圖課程包含以下三種狀態:被添加的課程、被修改課程、被刪除的課程。它們之間的轉化規則是:(1)系統管理員添加新的選修課程,能夠被學生來選擇。(2)當原有的課程需要做修改時,由系統管理員負責修改課程的內容。(3)當原有的課程不再開課時,由系統管理員將該課程進行刪除。14、學生對象的活動圖1)學生在查詢課程的界面輸入課程的信息。(2)界面將信息傳遞到控制業務邏輯的對象Control進行對課程的驗證,然后到數據庫中去查詢所查詢的課程

46、。(3)Control獲得課程信息后通過界面顯示課程詳細信息。15、學生選課活動圖1)學生在選擇課程的界面輸入選擇的課程的信息。(2)界面將信息傳遞到控制業務邏輯的對象Control進行對課程的驗證,到數據庫中去查詢該課程是否已存在。(3)Control根據查詢結果判斷課程是存在。如果不存在,將提示信息返回選擇課程的界面予以顯示。如果合法則將選擇課程的信息添加到數據庫保存。(4)業務邏輯的對象Control根據返回的選課結果,判斷選課是否成功。如成功在選課界面顯示選課成功的信息。如果未成功,則顯示選課失敗的信息。 17、系統管理員添加選修課程活動圖 (1)系統管理員在添加課程的界面輸入要添加的

47、課程的信息。(2)界面將信息傳遞到控制業務邏輯的對象Control進行對課程的驗證,到數據庫中去查詢該課程是否已存在。(3)Control根據查詢結果判斷添加課程是否存在。如果不存在,將提示信息返回添加課程的界面予以顯示。如果存在就將課程信息添加到數據庫保存。(4)業務邏輯的對象Control根據返回的添加結果,判斷添加課程是否成功。如成功在添加課程的界面顯示添加成功的信息。如果未成功,則顯示添加失敗的信息。18、系統管理員修改課程活動圖 (1)系統管理員在修改課程的界面輸入要修改的課程信息。(2)界面將信息傳遞到控制業務邏輯的對象Control進行對課程的驗證,到數據庫中去查詢該課程是否已存

48、在。(3)Control根據查詢結果判斷修改課程是否存在。如果不存在,將提示信息返回修改課程的界面予以顯示。如果存在,則將原課程信息予以修改并保存。(4)業務邏輯的對象Control根據返回的修改結果,判斷修改課程是否成功。如成功,在修改課程的界面顯示修改成功的信息。如果未成功,則顯示修改失敗的信息。18、系統管理員修改課程活動圖 (1)系統管理員在修改課程的界面輸入要修改的課程信息。(2)界面將信息傳遞到控制業務邏輯的對象Control進行對課程的驗證,到數據庫中去查詢該課程是否已存在。(3)Control根據查詢結果判斷修改課程是否存在。如果不存在,將提示信息返回修改課程的界面予以顯示。如

49、果存在,則將原課程信息予以修改并保存。(4)業務邏輯的對象Control根據返回的修改結果,判斷修改課程是否成功。如成功,在修改課程的界面顯示修改成功的信息。如果未成功,則顯示修改失敗的信息。19用面向對象方法設計網上購書系統的軟件結構,網上購書系統的業務如下: 某書店為了方便客戶通過internet購買相關圖書,開發一個“網上書店系統”,客戶可通過web頁面注冊并登陸“網上購書系統”,通過web頁面查看、選擇圖書,系統根據用戶選擇的圖書單價、數量,自動生成訂單并計算總價格。 客戶在提交訂單之前,必須填寫關于寄送地址和發票及付款方式等細節,一旦訂單被提交,系統顯示確認信息,并附上訂單的詳細信息。客戶可在線查詢訂單的狀態。 系統管理員查看客戶的訂單,驗證客戶的信用和付款方式,向倉庫請求

溫馨提示

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

最新文檔

評論

0/150

提交評論