2016年上半年軟件設(shè)計師下午真題試卷_第1頁
2016年上半年軟件設(shè)計師下午真題試卷_第2頁
2016年上半年軟件設(shè)計師下午真題試卷_第3頁
2016年上半年軟件設(shè)計師下午真題試卷_第4頁
2016年上半年軟件設(shè)計師下午真題試卷_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、2016年上半年軟件設(shè)計師下午試卷試題一(共15分)閱讀下列說明和圖,回答問題 1 至問題4,將解答填入答題紙的對應(yīng)欄內(nèi)。【說明】 某會議中心提供舉辦會議的場地設(shè)施和各種設(shè)備, 供公司與各類組織機構(gòu)租用。 場地包括一個大型報告廳、 一個小型報告廳以及諸多會議室。 這些報告廳和會議室可提供的設(shè)備有投影儀、白板、視頻播放/回放設(shè)備、計算機等。為了加強管理,該中心欲開發(fā)一會議預(yù)訂系統(tǒng),系統(tǒng)的主要功能如下。( 1)檢查可用性??蛻籼峤活A(yù)訂請求后,檢查預(yù)訂表,判定所申請的場地是否在申請日期內(nèi)可用;如果不可用,返回不可用信息。( 2)臨時預(yù)訂。會議中心管理員收到客戶預(yù)定請求的通知之后,提交確認。系統(tǒng)生成新

2、臨時預(yù)訂存入預(yù)訂表, 并對新客戶創(chuàng)建一條客戶信息記錄加以保存。 根據(jù)客戶記錄給客戶發(fā)送臨時預(yù)訂確認信息和支付定金要求。( 3)分配設(shè)施與設(shè)備。根據(jù)臨時預(yù)訂或變更預(yù)定的設(shè)備和設(shè)施需求,分配所需設(shè)備(均能滿足用戶要求)和設(shè)施,更新相應(yīng)的表和預(yù)訂表。( 4)確認預(yù)訂。管理員收到客戶支付定金的通知后,檢查確認,更新預(yù)訂表,根據(jù)客戶記錄給客戶發(fā)送預(yù)訂確認信息。( 5)變更預(yù)訂??蛻暨€可以在支付余款前提交變更預(yù)訂請求,對變更的預(yù)訂請求檢查可用性,如果可用,分配設(shè)施和設(shè)各;如果不可用,返回不可用信息。管理員確認變更后,根據(jù)客戶記錄給客戶發(fā)送確認信息。( 6)要求付款。管理員從預(yù)訂表中查詢距預(yù)訂的會議時間兩周

3、內(nèi)的預(yù)定,根據(jù)客戶記錄給滿足條件的客戶發(fā)送支付余款要求。( 7)支付余款。管理員收到客戶余款支付的通知后,檢查確認,更新預(yù)訂表中的已支付余款信息?,F(xiàn)采用結(jié)構(gòu)化方法對會議預(yù)定系統(tǒng)進行分析與設(shè)計,獲得如圖 1-1 所示的上下文數(shù)據(jù)流圖和圖 1-2 所示的 0 層數(shù)據(jù)流圖(不完整) 。1-1所示的上下文數(shù)據(jù)流圖不可用值.忖鼠霍京一 總燈率/靈憤定收一«p«a/Hwn/nn/iH認WnU/flliT/H!認信息圖1-2所示的。層數(shù)據(jù)流圖斌畏訂桌貨by穩(wěn)賽軟考學院客/記錄,睹時端訂認包屁*定金更里“金率相過期束一枳校0明所科匕支柯生步健D1認授H已支付余候息I、U支付余 、白餐2q依

4、定調(diào)求通如H時HUT ,認-、一斷弭戶信且X 可殖仃清京不可用信總支月余款要求-L , 一 $It更修訂認奧更認信息jL空里胃訂瑞/j對僮訂E1E1客戶支付重金通知支 ft 認 (IRr世事和出需求±變更的懂訂請求F2*2 忖8-客戶命象玄忖通-圖 14 0-tby希賽軟考學院【問題11 (2分)使用說明中的詞語,給出圖1-1中的實體E1E2的名稱。【問題2】(4分)使用說明中的詞語,給出圖1-2中的數(shù)據(jù)存儲D1D4的名稱?!締栴} 3】 ( 6 分)根據(jù)說明和圖中術(shù)語,補充圖 1-2 之中缺失的數(shù)據(jù)流及其起點和終點。【問題 4】 ( 3 分) 如果發(fā)送給客戶的確認信息是通過Email

5、 系統(tǒng)向客戶信息中的電子郵件地址進行發(fā)送的,那么需要對圖 1-1 和 1-2 進行哪些修改?用 150 字以內(nèi)文字加以說明。答案解析:【問題1】E1:客戶 E2:管理員2】 D1 :預(yù)定表D2 :客戶信息記錄表D3 :設(shè)施表D4 :設(shè)備表3】預(yù)訂確認信息起點:4 確認預(yù)定終點: :E1客戶信息起點:E1終點: 2臨時預(yù)定客戶記錄起點:D2終點: 4確認預(yù)定客戶記錄起點:D2終點: 5變更預(yù)定預(yù)定信息起點:D1終點: 6要求付款客戶記錄起點:D2終點: 6要求付款【問題4】圖 1-1 中:增加外部實體”第三方 Email 系統(tǒng) ” ,將臨時預(yù)訂/預(yù)訂 /變更確認信息終點均修改至”第三方 Emai

6、l 系統(tǒng) ” 。圖 1-2 中:增加外部實體”第三方 Email 系統(tǒng) ” ,增加加工”發(fā)送郵件” ,將臨時預(yù)訂/預(yù)訂 /變更確認信息終點均修改至”發(fā)送郵件 ”加工,并增加從D2 到 ”發(fā)送郵件 ”加工的數(shù)據(jù)流” 電子郵件地址” ,再從發(fā)送郵件加工引出數(shù)據(jù)流臨時預(yù)訂/預(yù)訂/變更確認信息終點為外部實體 “第三方 Email 系統(tǒng) ” 。試題二(共15分)閱讀下列說明,回答問題 1 至問題3;將解答填入答題紙的對應(yīng)欄內(nèi)?!菊f明】 某銷售公司當前的銷售業(yè)務(wù)為商城實體店銷售。 現(xiàn)該公司擬開展網(wǎng)絡(luò)銷售業(yè)務(wù), 需要開發(fā)一個信息化管理系統(tǒng)。 請根據(jù)公司現(xiàn)有業(yè)務(wù)及需求完成該系統(tǒng)的數(shù)據(jù)庫設(shè)計。【需求描述】( 1

7、)記錄公司所有員工的信息。員工信息包括工號、身份證號、姓名、性別、出生日期和電話,并只登記一部電話。( 2)記錄所有商品的信息。商品信息包括商品名稱、生產(chǎn)廠家、銷售價格和商品介紹。系統(tǒng)內(nèi)部用商品條碼唯一區(qū)別每種商品。( 3)記錄所有顧客的信息。顧客信息包括顧客姓名、身份證號、登錄名、登錄密碼、 和電話號碼。 一位顧客只能提供一個電話號碼。 系統(tǒng)自動生成唯一的顧客編號。( 4)顧客登錄系統(tǒng)之后,在網(wǎng)上商城購買商品。顧客可將選購的商品置入虛擬的購物車內(nèi), 購物車可長期存放顧客選購的所有商品。 顧客可在購物車內(nèi)選擇商品、 修改商品數(shù)量后生成網(wǎng)購訂單。 訂單生成后, 由顧客選擇系統(tǒng)提供的備選第三方支付

8、平臺進行電子支付, 支付成功后系統(tǒng)需要記錄唯一的支付憑證編號, 然后由商城根據(jù)訂單進行線下配送。( 5)所有的配送商品均由倉庫統(tǒng)一出庫。為方便顧客,允許每位顧客在系統(tǒng)中提供多組收貨地址、 收貨人及聯(lián)系電話。 一份訂單所含的多個商品可能由多名分檢員根據(jù)商品所在倉庫信息從倉庫中進行分揀操作, 分揀后的商品交由配送員根據(jù)配送單上的收貨地址進行配送。( 6)新設(shè)計的系統(tǒng)要求記錄實體店的每筆銷售信息,包括營業(yè)員、顧客、所售商品及其數(shù)量。【概念模型設(shè)計】根據(jù)需求階段收集的信息,設(shè)計的實體聯(lián)系圖(不完整)如圖 2-1 所示?!具壿嫿Y(jié)構(gòu)設(shè)計】根據(jù)概念模型設(shè)計階段完成的實體聯(lián)系圖,得出如下關(guān)系模式(不完整) :

9、員工(工號,身份證號,姓名,性別,出生日期,電話)商品(商品條碼,商品名稱,生產(chǎn)廠家,銷售價格,商品介紹,(a)顧客(顧客編號,姓名,身份證號,登錄名,登錄密碼,電話)收貨地點(收貨ID,顧客編號,收貨地址,收貨人,聯(lián)系電話)購物車(顧客編號,商品條碼,商品數(shù)量)訂單(訂單ID,顧客編號,商品條碼,商品數(shù)量,(b)分檢(分揀ID,分揀員工號,(c),分揀時間)配送(配送ID,分揀ID,配送員工號,收貨ID,配送時間,簽收時間,簽 收快照)銷售(銷售ID,營業(yè)員工號,顧客編號,商品條碼,商品數(shù)量)【問題11 (4分)補充圖2-1中的配送”聯(lián)系所關(guān)聯(lián)的對象及聯(lián)系類型。【問題2】(6分)補充邏輯結(jié)構(gòu)

10、設(shè)計中的(a)、(b)和(c)三處空缺。【問題3】(5分)對于實體店銷售,若要增加送貨上門服務(wù),由營業(yè)員在系統(tǒng)中下訂單,與網(wǎng)購的訂單進行后續(xù)的統(tǒng)一管理。 請根據(jù)該需求,對圖2-1進行補充,并修改訂單關(guān)系模式。答案解析:【問題 1】配送員 配送地點,多對多聯(lián)系【問題2】(a)倉庫ID (b)支付憑證編號 (c)商品條碼,訂單ID【問題3】在營業(yè)員和訂單之間增加一個“送貨上門 ”的聯(lián)系,在訂單關(guān)系中增加“營業(yè)員工號”屬性做為外鍵。試題三(共15分)閱讀下列說明和圖,回答問題 1 至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)?!菊f明】某軟件公司欲設(shè)計實現(xiàn)一個虛擬世界仿真系統(tǒng)。 系統(tǒng)中的虛擬世界用于模擬現(xiàn)實世

11、界中的不同環(huán)境(由用戶設(shè)置并創(chuàng)建) ,用戶通過操作仿真系統(tǒng)中的 12 個機器人來探索虛擬世界。機器人維護著兩個變量bl和b2,用來保存從虛擬世界中讀取的字符。該系統(tǒng)的主要功能描述如下:(1)機器人探索虛擬世界(RunRobots)。用戶使用編輯器(Editor)編寫文件以 設(shè)置想要模擬的環(huán)境,將文件導入系統(tǒng)(LoadFile)從而在仿真系統(tǒng)中建立虛擬 世界(SetupWorld) 。機器人在虛擬世界中的行為也在文件中進行定義,建立機器人 的 探索 行 為 程序 ( SetupProgram) 。 機器 人在 虛 擬世 界 中 探 索 時 ( RunProgram) ,有2 種運行模式:自動控制

12、(Run):事先編排好機器人的動作序列(指令(Instruction),執(zhí)行 指令, 使機器人可以連續(xù)動作。 若干條指令構(gòu)成機器人的指令集( InstructionSet) 。單步控制(Step):自動控制方式的一種特殊形式,只執(zhí)行指定指令中的一個動 作。2)手動控制機器人(ManipulateRobots) 。選定1 個機器人后(SelectRobot) ,可以采用手動方式控制它。手動控制有4種方式:Move:機器人朝著正前方移動一個交叉點。Left:機器人原地沿逆時針方向旋轉(zhuǎn) 90度。Read機器人讀取其所在位置的字符,并將這個字符的值賦給bl;如果這個位置上沒有字符,則不改變bl的當前值

13、。Write:將bl中的字符寫入機器人當前所在的位置,如果這個位置上已經(jīng)有字符,該字符的值將會被bl的值替代。如果這時bl沒有值,即在執(zhí)行 Write動作 之前沒有執(zhí)行過任何Read動作,那么需要提示用戶相應(yīng)的錯誤信息(ShowErrors)。手動控制與單步控制的區(qū)別在于,單步控制時執(zhí)行的是指令中的動作,只有一種 控制方式,即執(zhí)行下個動作;而手動控制時有4種動作?,F(xiàn)采用面向?qū)ο蠓椒ㄔO(shè)計并實現(xiàn)該仿真系統(tǒng),得到如圖3-1所示的用傷J圖和圖3-2 所示的初始類圖。圖3-2中的類“Interprets和胸Parse用"于解析描述虛擬世界的 文件以及機器人行為文件中的指令集。3-1所示的用例圖

14、撰梨i用輛用呼希賽軟看學院圖3-2所示的初始類圖by希賽軟考學院【問題11 (6分)根據(jù)說明中的描述,給出圖 3-1中U1U6所對應(yīng)的用例名【問題2】(4分)圖3-1中用例U1U6分別與哪個(哪些)用例之間有關(guān)系, 是何種關(guān)系?【問題3】(5分)根據(jù)說明中的描述,給出圖 3-2中C1C5所對應(yīng)的類名。問題1解析:【問題 1】 U1:RUN U2:STEP U3: write U4:Move U5:Left U6:Read【問題2 U1和U2和Run Program有關(guān)聯(lián)關(guān)系U3, U4, U5, U6 和 Select Robot 有關(guān)聯(lián)關(guān)系【問題3】C1:文件C2:機器人在虛擬世界的行為C3

15、:InstructionC4: InstructionSetC5:仿真系統(tǒng)試題四(共15分) 閱讀下列說明和C代碼,回答問題1至問題3,將解答寫在答題紙的對應(yīng)欄內(nèi)?!菊f明】在一塊電路板的上下兩端分別有 n個接線柱。根據(jù)電路設(shè)計,用(i,九(而示 將上端接線柱i與下端接線柱 冗(i)目連,稱其為該電路板上的第i條連線。如圖 4-1所示的冗(排列為8,7,4,2,5,1,9,3,10,6。對于任何1 & i<j茶第i條連線和第j 條連線相交的充要條件是冗(i)>啟(j)34567*91。驟J * by希賽軟者學院在制作電路板時,要求將這n條連線分布到若干絕緣層上,在同一層上的連

16、 線不相交?,F(xiàn)在要確定將哪些連線安排在一層上,使得該層上有盡可能多的連線, 即確定連線集Nets=(i,兀0)1 w i w的最大不相交子集。【分析問題】記 N(i,j)=t|(t,d!Nets,t <i,兀(t) Njj)的最大不相交子集為MNS(i,j),size(i,j)=|MNS(i,j)|。經(jīng)分析,該問題具有最優(yōu)子結(jié)構(gòu)性質(zhì)。對規(guī)模為n的電路布線問題,可以構(gòu)造如 下遞歸式:Q業(yè)*L/)It它情況(2)當 時r(我El-LJ)><«(0j max geO -1 J).疝¥。-1, jt -1) +1其它情況希辭軟苛竽院【C代碼】卜面是算法的C語言實現(xiàn)

17、。(1)變量說明sizeij :上下端分別有i 個和 j 個接線柱的電路板的第一層最大不相交連接數(shù)pii:兀(i)下標從1開始( 2) C 程序#include"stdlib.h"#include<stdio.h>#define N 10/* 問題規(guī)模 */Int m=0; /*牢記錄最大連接集合中的接線柱*/Void maxNum(intpi,intsizeN+1N+1,intn)/* 求最大不相交連接數(shù)*/int i,j;for(j=0;j<pil;j+) sizelj=0;/* 當 j< 兀(1)*/for(j=pii;j<=n;j+)

18、(1) ;/* 當 j>=兀(硼*/for(i=2;i<n;i+)for(j=0;j<pil;j+)(2) ;/* 當 j<pii 時*/for(j=pii;j<=n ; j+)/* 當 j>=ci 時,考慮兩種情況*/sizeij=sizei-lj>=sizei-lpii-l+1?sizei-lj:sizei-lpii-l+l;/* 最大連接數(shù)*/sizenn=sizen-ln>=sizen-lpin-l+1?sizen-ln:sizen-lpin-l+l;/*構(gòu)造最大不相交連接集合, neti 表示最大不相交子集中第 i 條連線的上端接線柱的

19、序號 */void constructSet( int pi,int sizeN+1N+1,int n,int netn ) int i,j=n;m=0;for(i=n ; i>1;i-)/* 從后往前 */if(sizeij!=sizei-lj)/*(i,pii) 是最大不相交子集的一條連線*/(3) ;/*將i記錄到數(shù)組net中,連接線數(shù)自增1*/j=pii-1;/* 更新擴展連線柱區(qū)間 */if(j>=pil)netm+=l;/* 當 i=1 時*/【問題 1】 (6 分)根據(jù)以上說明和 C 代碼,填充C 代碼中的空( 1) (3)。【問題2】 ( 6 分)根據(jù)題干說明和以上

20、C 代碼,算法采用了(4)算法設(shè)計策略。函數(shù)maxNum和constructSet的時間復(fù)雜度分別為(5)和(6)(用。表示)。【問題3】 (3 分)若連接排列為 8,7,4,2,5,1,9,3,10,6,即如圖 4-1 所示,則最大不相交連接數(shù)為(7),包含的連線為(8)(用(i,九勵形式給出)。答案解析【問題 1】(1)size1j=1 (2)size ij=sizei-1j(3) netm+=i;【問題2】(4)動態(tài)規(guī)劃算法 (5)O(n2)(6)0(n)【問題3(7)4(8)(9,兀(9) (7,九(7)(5,兀(5)(3,兀(3)試題六(共15分).誠題六(共15分)閱讀不列說明和的

21、,代碼.將應(yīng)埴入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi),E說明】某軟件系統(tǒng)中.已設(shè)計并實現(xiàn)了用于顯示地址信息的類Address (如圖6-1所示,現(xiàn)要 求提供基于Dutch語言的地址信息顯示接口 為了實現(xiàn)該要求并考慮到以后可能還會出現(xiàn)新 的語言的接口,決定采用適配器(Adapter)模式實現(xiàn)該要求,得到如圖6-1所示的類圖.圖玷配生模式貴圖Java代碼classAddresspublic void street() /實現(xiàn)代碼省略Systemout.println(" street");public void zip() /實現(xiàn)代碼省略Systemout.println(&qu

22、ot; zip");public void city() /實現(xiàn)代碼省略Systemout.println(" city" );/其他成員省略class DutchAddresspublic void straat() / 實現(xiàn)代碼省略System.out.println( "straat");public void postcode() / 實現(xiàn)代碼省略System.out.println( "postcode");public void plaats() / 實現(xiàn)代碼省略System.out.println( "plaats");/ 其他成員省略 public class DutchAddressAdapter extends

溫馨提示

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

最新文檔

評論

0/150

提交評論