

下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2017年上半年軟件設計師下午試卷第1題閱讀下列說明和圖,回答問題1至問題4,將解答填入答題紙的對應欄內。 【說明】某醫療器械公司作為復雜醫療產品的集成商, 必須保持高質量部件的及 時供應。為了實現這一目標,該公司欲開發一采購系統。系統的主要功能如下:1、檢查庫存水平。采購部門每天檢查部件庫存量,當特定部件的庫存量降至其 訂貨點時,返回低存量部件及庫存量。2、 下達采購訂單。 采購部門針對低存量部件及庫存量提交采購請求, 向其供應 商(通過供應商文件訪問供應商數據)下達采購訂單,并存儲于采購訂單文件中。3、交運部件。當供應商提交提單并交運部件時,運輸和接收(S/R)部門通過執行以下三步過程接收
2、貨物:(1)驗證裝運部件。通過訪問采購訂單并將其與提單進行比較來驗證裝運的部 件,并將提單信息發給S/R職員。如果收貨部件項目出現在采購訂單和提單上, 則已驗證的提單和收貨部件項目將被送去檢驗。 否則,將S/R職員提交的裝運錯 誤信息生成裝運錯誤通知發送給供應商。(2)檢驗部件質量。通過訪問質量標準來檢查裝運部件的質量,并將己驗證的 提單發給檢驗員。 如果部件滿足所有質量標準, 則將其添加到接受的部件列表用 于更新部件庫存。 如果部件未通過檢查, 則將檢驗員創建的缺陷裝運信息生成缺 陷裝運通知發送給供應商。(3)更新部件庫存。庫管員根據收到的接受的部件列表添加本次采購數量,與 原有庫存量累加來
3、更新庫存部件中的庫存量。標記訂單采購完成。 現采用結構化方法對該采購系統進行分析與設計, 獲得如圖1-1所示的上下文數 據流圖和圖1-2所示的0層數據流圖。El檢盤詡求采購系統樂燉和卑提和蠱思E5齡訕轉遠印忤千裝迄特謂惜息康禺請求新燈單噹嵐1JE2, r檢査卑存拱平搭疑的耗件利齊電駆潮講唱毎17部件及腐存量圖1-1上下文數據流圖恨庇商信息訂爼塩息1-1上下丈獄皓流圖螯運嗇謀儲總1本歡采購數匱提甲恃氯提怯倍忌一采購訂窘按嚨的腕件列表-乖空采聘歡整拴軸劑書序忖已監注舉話梧斉謂求缺陥裝運潔息更新胡數星來科定麻標記加磺蚌祐心尸石?c#n川最庫存雖廠一:搖哭的部件列憲一*匕E3-已驗證的提單一龜陷輕運倍
4、慰圖1-2 0層數據流圖 問題:1。1使用說明中的詞語,給出圖1-1中的實體E1E5問題:1.2使用說明中的詞語,給出圖1-2中的數據存儲D1D4的名稱。問題:1.3根據說明和圖中術語,補充圖1-2中缺失的數據流及其起點和終點。問題:1.4用200字以內文字,說明建模圖1-1和圖1-2時如何保持數據流圖 平衡。裝運錯誤通知:P3(驗證裝運部件)-E1(客戶)缺陷裝運通知:P4(校驗部件質量)-E1(客戶)產品檢驗:P3(驗證裝運部件)-P4(校驗部件質量)檢查庫存信息:P1(檢查庫存水平)D1(庫存表) 問題4答案解析:父圖中某個加工的輸入輸出數據流必須與其子圖的輸入輸出數據流在數量 上和名字
5、上相同。父圖的一個輸入(或輸出)數據流對應于子圖中幾個輸入(或 輸出)數據流,而子圖中組成的這些數據流的數據項全體正好是父圖中的這一個 數據流。第2題 讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。【說明】 某房屋租賃公司擬開發一個管理系統用于管理其持有的房屋、租客及員工信息。 請根據下述需求描述完成系統的數據庫設計。【需求描述】1、公司擁有多幢公寓樓,每幢公寓樓有唯一的樓編號和地址。每幢公寓樓中有 多套公寓,每套公寓在樓內有唯一的編號(不同公寓樓內的公寓號可相同 。系統 需記錄每套公寓的臥室數和衛生間數。2、員工和租客在系統中有唯一的編號(員工編號和租客編號)。問題1答案解析:
6、問題1:E1供應商S/R職員問題2答案解析:問題2 D1庫存表D2問題3答案解析:E2采購部門采購訂單表E3檢驗員D3質量標準表E4庫管員E5D4供應商表3、對于每個租客,系統需記錄姓名、多個聯系電話、一個銀行賬號(方便自動 扣房租)、一個緊急聯系人的姓名及聯系電話。4、系統需記錄每個員工的姓名、一個聯系電話和月工資。員工類別可以是經理 或維修工, 也可兼任。每個經理可以管理多幢公寓樓。 每幢公寓樓必須由一個經 理管理。系統需記錄每個維修工的業務技能,如:水暖維修、電工、木工等。5、租客租賃公寓必須和公司簽訂租賃合同。一份租賃合同通常由一個或多個租 客(合租)與該公寓樓的經理簽訂,一個租客也可
7、租賃多套公寓。合同內容應包含 簽訂日期、開始時間、租期、押金和月租金。【概念模型設計】 根據需求階段收集的信息,設計的實體聯系圖(不完整)如圖2-1所示【邏輯結構設計】根據概念摸型設計階段完成的實體聯系圖,得出如下關系模式(不完整):聯系電話(電話號碼,租客編號)租客(租客編號,姓名,銀行賬號,聯系人姓名,聯系人電話)員工(員工編號,姓名,聯系電話,類別,月工資,(a)公寓樓(b),地址,經理編號)公寓(樓編號,公寓號,臥室數,衛生間數合同(合同編號,租客編號,樓編號,公寓號,經理編號,簽訂日期,起始日期, 租期,(c),押金)問題:2.1補充圖2-1中的 簽約”聯系所關聯的實體及聯系類型。問
8、題:2.2補充邏輯結構設計中的(a)、(b)、(c)三處空缺。問題:2.3在租期內,公寓內設施如出現問題,租客可在系統中進行故障登記, 填寫故障描述,每項故障由系統自動生成唯一的故障編號, 由公司派維修工進行 故障維修,系統需記錄每次維修的維修日期和維修內容。請根據此需求,對圖2-1進行補充,并將所補充的ER圖內容轉換為一個關系模式,請給出該關系模式。問題2(a業務技能(b) 樓編號(c) 月租金問題1答案解析:問題2答案解析:公寓樓A -公重問題3答案解析:新增維修關系,維修工維修公寓,關系模式為維修情況維修情況(故障編號,員工編號,樓編號,公寓號,維修日期,維修內容)第3題閱讀下列系統設計
9、說明,回答問題1至問題3,將解答填入答題紙的對應欄內。【說明】某玩具公司正在開發一套電動玩具在線銷售系統,用于向注冊會員提供 端對端的玩具定制和銷售服務。在系統設計階段,創建新訂單(New Order)的設計用例詳細描述如表3-1所示,候選設計類分類如表3-2所示,并根據該 用例設計出部分類圖如圖3-1所示。表3-1創建新訂單(NewOrder)設計用例用例名稱創建新訂單New Order用例編號ETM-R002參與者會員前提條件會員已經注冊并成功登錄系統典型事件流1。 會員(C1)點擊新的訂單”按鈕;2。系統列出所有正在銷售的電動玩具清單及價格(C2)3。會員點擊復選框選擇所需電動玩具并輸入
10、對應數量,點擊結算”按鈕;4。系統自動計算總價(C3),顯示銷售清單和會員預先設置個人資料的收貨地址和支付方式(C4);5。會員點擊確認支付”按鈕;6。系統自動調用支付系統(C5)接口支付該賬單;7。若支付系統返回成功標識,系統生成完整訂單信息持久存儲到數據庫訂單表(C6)中;&系統將以表格形式顯示完整訂單信息(C7),同 時自動發送完整訂單信息(C8)至會員預先配置的郵 箱地址(C9)。候選事件流3a(1)會員點擊定制”按鈕;(2)系統以列表形式顯示所有可以定制的電動 玩具清單和定制屬性(如尺寸、顏色等)(C10);(3)會員點擊單選按鈕選擇所需要疋制的電動 玩具并填寫所需要定制的屬性要求,
11、點擊結算” 按鈕;(4)回到步驟4。(1)若支付系統返回失敗標識,系統顯示會員當前默認支付方式(C11)讓會員確認;(2)若會員點擊 修改付款”按鈕,調用 修改付款”用例,可以新增并存儲為默認支付方式(C12),回到步驟4;(3)若會員點擊 取消訂單”則該用例終止執 行。表3-2候選設計類分類接口類(Interface,負責系統與用戶之間的交互)(a)控制類(Control,負責業務邏輯的處理)(b)實體類(Entity,負責持久化數據的存儲)(c)7a刁注舍靈(Vonhar )gKEe* (Profile)ElSfir? in*耳-,” :直 列|日 弼B 3d *4圖3部分類函在訂單處理的
12、過程中,會員可以點擊 取消訂單取消該訂單。如果支付失敗,該 訂單將被標記為掛起狀態,可后續重新支付,如果掛起超時30分鐘未支付,系 統將自動取消該訂單。訂單支付成功后,系統判斷訂單類型:(1)對于常規訂單,標記為備貨狀態,訂單信息發送到貨運部,完成打包后交付 快遞發貨;(2)對于定制訂單,會自動進入定制狀態,定制完成后交付快遞發貨。會員在系統中點擊”收貨按鈕變為收貨狀態,結束整個訂單的處理流程。根據訂單處理過問題:3.1根據表3-1中所標記的候選設計類,請按照其類別將編號C1C12分 別填入表3-2中的(a)、(b)和(c)處。問題:3.2根據創建新訂單的用例描述,請給出圖3-1中X1X4處對
13、應類的名稱。問題:3.3根據訂單處理過程的描述,在圖3-2中S1S5處分別填入對應的狀態 名稱。問題1答案解析:(a):C4、C5、C7、C8、C10、C11(b):C3(c):C1、C2、C6、C9、C12一、實體類實體類是用于對必須存儲的信息和相關行為建模的類。 實體對象(實體類的實例) 用于保存和更新一些現象的有關信息, 例如: 事件、人員或者一些現實生活中的 對象。實體類通常都是永久性的, 它們所具有的屬性和關系是長期需要的, 有時 甚至在系統的整個生存期都需要。程所設計的狀態圖如圖3-2所示二、邊界類 邊界類是系統內部與系統外部的業務主角之間進行交互建模的類。 邊界類依賴于系統外部的
14、環境, 比如業務主角的操作習慣、 外部的條件的限制等。 它或者是系 統為業務主角操作提供的一個GUI,或者系統與其他的系統之間進行一個交互的 接口,所以當外部的GUI變化時, 或者是通信協議有變化時, 只需要修改邊界 類就可以了, 不用再去修改控制類和實體類。業務主角通過它來與控制對象交互, 實現用例的任務。邊界類調用用例內的控制類對象,進行相關的操作。 一個系統可能會有多種邊界類:用戶界面類-幫助與系統用戶進行通信的類 系統接口類-幫助與其他系統進行通信的類設備接口類-為用來監測外部事件的設備(如傳感器)提供接口的類三、控制類控制類用于對一個或幾個用例所特有的控制行為進行建模,它描述的用例的
15、業務 邏輯的實現,控制類的設計與用例實現有著很大的關系。 在有些情況下, 一個用 例可能對應多個控制類對象,或在一個控制類對象中對應著對個用例。 它們之間 沒有固定的對應關系, 而是根據具體情況進行分析判斷, 控制類有效將業務邏輯 獨立于實體數據和邊界控制, 專注于處理業務邏輯, 控制類會將特有的操作和實 體類分離, 者有利于實體類的統一化和提高復用性。 當業務主角通過邊界類來執 行用例的時候,產生一個控制類對象, 在用例被執行完后, 控制類對象會被銷毀。控制類的特點: 獨立于環境、 和用例的實現關聯、 使用關聯實體類或操作實體類 對象、 專注于業務邏輯的實現。 當然如果用例的邏輯較為簡單,
16、可以直接利用 邊界類來操作實體類, 而不必再使用控制類。 或者用例的邏輯較為固定, 業務邏 輯固定不會改變。也可以直接在邊界類實現該邏輯。問題2答案解析:X1:收貨地址X2:支付方式X3:郵箱地址X4:電動玩具定制屬性問題3答案解析:S1:訂單掛起S2:訂單備貨S3:訂單定制S4:訂單發貨S5:訂單收貨第4題閱讀下列說明和C代碼,回答問題1至問題3,將解答寫在答題紙的對應欄內 【說明】假幣問題:有n枚硬幣,其中有一枚是假幣,己知假幣的重量較輕。現 只有一個天平,要求用盡量少的比較次數找出這枚假幣。【分析問題】將n枚硬幣分成相等的兩部分:(1)當n為偶數時,將前后兩部分,即1。n/2和n/2+1
17、。0,放在天平的兩端, 較輕的一端里有假幣,繼續在較輕的這部分硬幣中用同樣的方法找出假幣:當n為奇數時,將前后兩部分,即1。(n -1)/2和(n+1)/2+1。0,放在天平 的兩端,較輕的一端里有假幣, 繼續在較輕的這部分硬幣中用同樣的方法找出假 幣;若兩端重量相等,則中間的硬幣,即第(n+1 )/2枚硬幣是假幣。【C代碼】下面是算法的C語言實現,其中:coins: 硬幣數組first,last:當前考慮的硬幣數組中的第一個和最后一個下標#include int getCounterfeitCoin(int coins,int first,int last)int firstSum = 0,
18、lastSum = 0;int ;1if(first=last-1) /*只剩兩枚硬幣*/if(coinsfirst coinslast)return first;return last;if(last - first + 1) % 2 =0)/*偶數枚硬幣*/for(i = first;i ( 1 );i+)firstSum+= coinsi;for(i=first + (last-first) / 2 + 1;i last +1;i+)lastSum += coinsi;if( 2 )Return getCounterfeitCoin(coins,first,first+(last-fir
19、st)/2;)elseReturn getCounterfeitCoin(coins,first+(last-first)/2+1,last;)else/*奇數枚硬幣*/for(i=first;ifirst+(last-first)/2;i+) firstSum+=coinsi;for(i=first+(last-first)/2+1;ilast+1;i+)lastSum+=coinsi;if(firstSumlastSum)return getCounterfeitCoin(coins,first+(last-first)/2-1,last);elseReturn( 3 )問題 問題:4.1
20、根據題干說明,填充C代碼中的空(1)-(3)問題:4.2根據題干說明和C代碼,算法采用了()設計策略。函數getCountefeitCoin的時間復雜度為()(用0表示)。問題:4.3若輸入的硬幣數為30,則最少的比較次數為() ,最多的比較次數為 ()。答案解析:問題1(1)first+(last-first)/2或(first+last)/2(2)firstSumvIastSum(3)first+(Iast-first)/2或(first+Iast)/2問題2(4)分治法(5)0(nlogn)問題3(6)2(7)4試題分析:若輸入30個硬幣,找假硬幣的比較過程為:第1次:15比15,此時能
21、發現假幣在15個的范圍內。第2次:7比7,此時,如果天平兩端重量相同,則中間的硬幣為假幣,此時 可找到假幣,這是最理想的狀態。第3次:3比3,此時若平衡,則能找出假幣,不平衡,則能確定假幣為3個中的1個。第4次:1比1,到這一步無論是否平衡都能找出假幣, 此時為最多比較次數。第6題 閱讀下列說明和Java代碼,將應填入(n)處的字句寫在答題紙的對應欄內【說明】某快餐廳主要制作并出售兒童套餐,一般包括主餐(各類比薩)、飲料和 玩具,其餐品種類可能不同,但其制作過程相同。前臺服務員(Waiter)調度廚師制作套餐。現采用生成器(Builder)模式實現制作過程,得到如圖6-1所示的 類圖。圖,1類
22、圖Java代碼】class Pizzaprivate Stri ng parts;public void setParts(String parts) this parts = parts; public String toString() return this。parts; abstract class PizzaBuilderprotected Pizza pizza;public Pizza getPizza() retur n pizza; public void createNewPizza() pizza = new Pizza(); public (1); class Hawaiia nPizzaBuilder exte nds PizzaBuilderpublic void buildParts()pizza。setParts(cross + mild + ham&pineapple);”class SpicyPizzaBuilder e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智慧農業與農村電商技術創新考核試卷
- 職場溝通中的非言語信號解析考核試卷
- 薄膜在溫室大棚中的抗結露性能分析考核試卷
- 電子游戲全球化中的國際競爭與合作策略考核試卷
- 保健品市場品牌差異化策略與產品生命周期管理研究考核試卷
- 應急心理疏導考核試卷
- 2025年中國LED扣燈數據監測報告
- 2025年中國EVA數據監測報告
- 2025年中國ABS鞋跟數據監測報告
- 2025年中國2-氯-3-喹啉甲醛數據監測研究報告
- USSF-美國太空部隊數字服務遠景(英文)-2021.5-17正式版
- 靜配中心應急預案處理流程
- 江蘇省射陽中等專業學校工作人員招聘考試真題2022
- 廣東英語中考必背1600詞
- DL-T 2198-2020 超臨界循環流化床鍋爐運行導則
- FZ/T 10025-2022本色布技術要求規范
- YS/T 921-2013冰銅
- 刑法學(上冊)馬工程課件 第1章 刑法概說
- GB/T 9125.1-2020鋼制管法蘭連接用緊固件第1部分:PN系列
- GB/T 27770-2011病媒生物密度控制水平鼠類
- 2023年廣西賓陽縣昆侖投資集團有限公司招聘筆試題庫及答案解析
評論
0/150
提交評論