2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題_第1頁
2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題_第2頁
2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題_第3頁
2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題_第4頁
2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2017年下半年軟件設(shè)計師考試應(yīng)軟件設(shè)計用技術(shù)下午真題(總分:90.00,做題時間:150分鐘)一、案例分析題(總題數(shù):6,分?jǐn)?shù):90.00)試題一

閱讀下列說明和圖,回答問題,將解答填入答題紙的對應(yīng)欄內(nèi)。

【說明】

某公司擬開發(fā)一個共享單車系統(tǒng),采用北斗定位系統(tǒng)進(jìn)行單車定位,提供針對用戶的APP

以及微信小程序、基于Web的管理與監(jiān)控系統(tǒng)。該共享單車系統(tǒng)的主要功能如下。

1)用戶注冊登錄。用戶在APP端輸入手機(jī)號并獲取驗證碼后進(jìn)行注冊,將用戶信息進(jìn)行存儲。用戶登錄后顯示用戶所在位置周圍的單車。

2)使用單車。

①掃碼/于動開鎖。通過掃描二維碼或手動輸入編碼獲取開鎖密碼,系統(tǒng)發(fā)送開鎖指令進(jìn)行開鎖,系統(tǒng)修改單車狀態(tài),新建單車行程。

②騎行單車。單車定時上傳位置,更新行程。

③鎖車結(jié)賬。用戶停止使用或手動鎖車并結(jié)束行程后,系統(tǒng)根據(jù)已設(shè)置好的計費(fèi)規(guī)則及使用時間自動結(jié)算,更新本次騎行的費(fèi)用并顯示給用戶,用戶確認(rèn)支付后,記錄行程的支付狀態(tài)。系統(tǒng)還將重置單車的開鎖密碼和單車狀態(tài)。

3)輔助管理。

①查詢。用戶可以查看行程列表和行程詳細(xì)信息。

②報修。用戶上報所在位置或單車位置以及單車故障信息并進(jìn)行記錄。

4)管理與監(jiān)控。

①單車管理及計費(fèi)規(guī)則設(shè)置。商家對單車基礎(chǔ)信息、狀態(tài)等進(jìn)行管理,對計費(fèi)規(guī)則進(jìn)行設(shè)置并存儲。

②單車監(jiān)控。對單車、故障、行程等進(jìn)行查詢統(tǒng)計。

③用戶管理。管理用戶信用與狀態(tài)信息,對用戶進(jìn)行查詢統(tǒng)計?,F(xiàn)采用結(jié)構(gòu)化方法對共享單車系統(tǒng)進(jìn)行分析與設(shè)計,獲得如圖1-1所示的上下文數(shù)據(jù)流圖和圖1-2所示的0層數(shù)據(jù)流圖。

圖1-1

上下文數(shù)據(jù)流圖

圖1-2

0層數(shù)據(jù)流圖(分?jǐn)?shù):15)(1).使用說明中的詞語,給出圖1-1中的實體E1~E3的名稱。(分?jǐn)?shù):3)__________________________________________________________________________________________

正確答案:(E1:用戶

E2:商家

E3:單車)解析:(2).使用說明中的詞語,給出圖1-2中的數(shù)據(jù)存儲D1~D5的名稱。(分?jǐn)?shù):5)__________________________________________________________________________________________

正確答案:(D1:存儲用戶信息

D2:記錄單車位置及狀態(tài)信息

D3:記錄單車行程信息

D4:存儲計費(fèi)規(guī)則

D5:記錄單車故障信息)解析:(3).根據(jù)說明和圖中術(shù)語及符號,補(bǔ)充圖

1-2中缺失的數(shù)據(jù)流及其起點(diǎn)和終點(diǎn)。(分?jǐn)?shù):5)__________________________________________________________________________________________

正確答案:(1.起點(diǎn):p3終點(diǎn):E1數(shù)據(jù)流名稱:開鎖密碼

2.起點(diǎn):p3終點(diǎn):E1數(shù)據(jù)流名稱:鎖車結(jié)賬

3.起點(diǎn):p7終點(diǎn):E2數(shù)據(jù)流名稱:單車狀態(tài))解析:(4).根據(jù)說明中術(shù)語,說明"使用單車"可以分解為哪些子加工?(分?jǐn)?shù):2)__________________________________________________________________________________________

正確答案:(掃碼/手動開鎖,騎行單車,鎖車結(jié)賬)解析:試題二

閱讀下列說明,回答問題,將解答填入答題紙的對應(yīng)欄內(nèi)。

【說明】

M公司為了便于開展和管理各項業(yè)務(wù)活動,提高公司的知名度和影響力,擬構(gòu)建一個基于網(wǎng)絡(luò)的會議策劃系統(tǒng)。

【需求分析結(jié)果】

該系統(tǒng)的部分功能及初步需求分析的結(jié)果如下:

(1)M公司旗下有業(yè)務(wù)部、策劃部和其他部門。部門信息包括部門號、部門名、主管、聯(lián)系電話和郵箱號;每個部門只有一名主管,只負(fù)責(zé)管理本部門的工作,且主管參照員工關(guān)系的員工號;一個部門有多名員工,每名員工屬于且僅屬于一個部門。

(2)員工信息包括員工號、姓名、職位、聯(lián)系方式和薪資。職位包括主管、業(yè)務(wù)員、策劃員等。業(yè)務(wù)員負(fù)責(zé)受理用戶申請,設(shè)置受理標(biāo)志。一名業(yè)務(wù)員可以受理多個用戶申請,但一個用戶申請只能由一名業(yè)務(wù)員受理。

(3)用戶信息包括用戶號、用戶名、銀行賬號、電話、聯(lián)系地址。用戶號唯一標(biāo)識用戶信息中的每一個元組。

(4)用戶申請信息包括申請?zhí)?、用戶號、會議日期、天數(shù)、參會人數(shù)、地點(diǎn)、預(yù)算和受理標(biāo)志。申請?zhí)栁ㄒ粯?biāo)識用戶申請信息中的每一個元組,且一個用戶可以提交多個申請,但一個用戶申請只對應(yīng)一個用戶號。

(5)策劃部主管為己受理的用戶申請制定會議策劃任務(wù)。策劃任務(wù)包括申請?zhí)枴⑷蝿?wù)明細(xì)和要求完成時間.申請?zhí)栁ㄒ粯?biāo)識策劃任務(wù)的每一個元組。一個策劃任務(wù)只對應(yīng)一個已受理的用戶申請,但一個策劃任務(wù)可由多名策劃員參與執(zhí)行,且一名策劃員可以參與執(zhí)行,且在項策劃任務(wù)。

【概念模型設(shè)計】

根據(jù)需求階段收集的信息,設(shè)計的實體聯(lián)系圖(不完整)如圖2-1所示。

【關(guān)系模型設(shè)計】

部門(部門和,部門名,部門主管,聯(lián)系電話,郵箱號)

員工(員工號,姓名,(),聯(lián)系方式,薪資)

用戶(用戶名,(),電話,聯(lián)系地址)

用戶申請(申請?zhí)?,用戶號,會議日期,天數(shù),參會人數(shù),地點(diǎn),受理標(biāo)志,())

執(zhí)行(申請?zhí)枺蝿?wù)明細(xì),())(分?jǐn)?shù):15)(1).根據(jù)問題描述,補(bǔ)充五個聯(lián)系,完善圖2-1的實體聯(lián)系圖。聯(lián)系名可用聯(lián)系1、聯(lián)系2、聯(lián)系3、聯(lián)系4和聯(lián)系5,聯(lián)系的類型為1:1、1:n和m:n(或1:1、1:*和*:*)。(分?jǐn)?shù):5)__________________________________________________________________________________________

正確答案:(1.聯(lián)系1:部門和員工,1:n

2.聯(lián)系2:業(yè)務(wù)員和用戶申請,1:n

3.聯(lián)系3:用戶和用戶申請,1:n

4.聯(lián)系4:策劃員和策劃任務(wù),n:m

5.聯(lián)系5:策劃任務(wù)和用戶申請,1:1)解析:(2).根據(jù)題意,將關(guān)系模型中的空(a)~(d)補(bǔ)充完整,并填入答題紙對應(yīng)的位置上。(分?jǐn)?shù):4)__________________________________________________________________________________________

正確答案:(a.職位,部門號

b.用戶名,銀行帳號

c.預(yù)算費(fèi)用,業(yè)務(wù)員(員工號)

d.要求完成時間)解析:(3).給出“用戶申請”和“策劃任務(wù)”關(guān)系模式的主鍵和外鍵。(分?jǐn)?shù):4)__________________________________________________________________________________________

正確答案:(用戶申請:主鍵:申請?zhí)柾怄I:用戶號,業(yè)務(wù)員

策劃任務(wù):主鍵:申請?zhí)柾怄I:申請?zhí)?解析:(4).請問“執(zhí)行”關(guān)系模式的主鍵為全碼的說法正確嗎?為什么?(分?jǐn)?shù):2)__________________________________________________________________________________________

正確答案:(不正確。

All-key關(guān)系模型的所有屬性組成該關(guān)系模式的候選碼,稱為全碼。即所有屬性當(dāng)作一個碼。若關(guān)系中只有一個候選碼,且這個候選碼中包含全部屬性,則該候選碼為全碼。實際完成時間和用戶評價為非主屬性。)解析:試題三

閱讀下列說明,回答問題,將解答填入答題紙的對應(yīng)欄內(nèi)。

【說明】

某大學(xué)擬開發(fā)一個用于管理學(xué)術(shù)出版物(Publication)的數(shù)字圖書館系統(tǒng),用戶可以從該系統(tǒng)查詢或下載已發(fā)表的學(xué)術(shù)出版物。系統(tǒng)的主要功能如下:

1.登錄系統(tǒng)。系統(tǒng)的用戶(User)僅限于該大學(xué)的學(xué)生(Student)、教師(Faculty)和其他工作人員(Staff)。在訪問系統(tǒng)之前,用戶必須使用其校園賬戶和密碼登錄系統(tǒng)。

2.查詢某位作者(Author)的所有出版物。系統(tǒng)中保存了會議文章(ConfPaper)、期刊文章(JurnalArticle)和校內(nèi)技術(shù)報告(TechReport)等學(xué)術(shù)出版物的信息,如題目、作者以及出版年份等。除此之外,系統(tǒng)還存儲了不同類型出版物的一些特有信息;

(1)對于會議文章,系統(tǒng)還記錄了會議名稱、召開時間以及召開地點(diǎn);

(2)對于期刊文章,系統(tǒng)還記錄了期刊名稱、出版月份、期號以及主辦單位;

(3)對于校內(nèi)技術(shù)報告,系統(tǒng)記錄了由學(xué)校分配的唯一ID。

3.查詢指定會議集(Proceedings)或某個期刊特定期(Edition)的所有文章。會議集包含了發(fā)表在該會議(在某個特定時間段、特定地點(diǎn)召開)上的所有文章。期刊的每一期在特定時間發(fā)行,其中包含若干篇文章。

4.下載出版物。系統(tǒng)記錄每個出版物被下載的次數(shù)。

5.查詢引用了某篇出版物的所有出版物。在學(xué)術(shù)出版物中引用他人或早期的文獻(xiàn)作為相關(guān)工作或背景資料是很常見的現(xiàn)象。用戶也可以在系統(tǒng)中為某篇出版物注冊引用通知,若有新的出版物引用了該出版物,系統(tǒng)將發(fā)送電子郵件通知該用戶?,F(xiàn)在采用面向?qū)ο蠓椒▽υ撓到y(tǒng)進(jìn)行開發(fā),得到系統(tǒng)的初始設(shè)計類圖如圖3-1所示。

(分?jǐn)?shù):15)(1).根據(jù)說明中的描述,給出圖3-1中C1~C9所對應(yīng)的類名。(分?jǐn)?shù):9)__________________________________________________________________________________________

正確答案:(C1:Object

C2:User

C3:Student

C4:Faculty

C5:Staff

C6:Publication

C7:ConfPaper

C8:JournalArticle

C9:TechReport)解析:(2).根據(jù)說明中的描述,給出圖3-1中類C6~C9的屬性。(分?jǐn)?shù):4)__________________________________________________________________________________________

正確答案:(C6:題目,作者,出版年份

C7:會議名稱,召開時間,召開地點(diǎn)

C8:期刊名稱,出版月份,期號,主辦單位

C9:ID)解析:(3).圖3-1中包含了哪種設(shè)計模式?實現(xiàn)的是該系統(tǒng)的哪個功能?(分?jǐn)?shù):2)__________________________________________________________________________________________

正確答案:(觀察者模式,實現(xiàn):引用他人學(xué)術(shù)出版物發(fā)送電子郵件通知該用戶。)解析:試題四

閱讀下列說明和C代碼,回答問題,將解答寫在答題紙的對應(yīng)欄內(nèi)。

【說明】

一個無向連通圖G點(diǎn)上的哈密爾頓(Hamiltion)回路是指從圖G上的某個頂點(diǎn)出發(fā),經(jīng)過圖上所有其他頂點(diǎn)一次且僅一次,最后回到該頂點(diǎn)的路勁。一種求解無向圖上哈密爾頓回路算法的基礎(chǔ)私下如下:

假設(shè)圖G存在一個從頂點(diǎn)V0出發(fā)的哈密爾頓回路V1——V2——V3——...——Vn-1——V0。

算法從頂點(diǎn)V0出發(fā),訪問該頂點(diǎn)的一個未被訪問的鄰接頂點(diǎn)V1,接著從頂點(diǎn)V1出發(fā),訪問V1一個未被訪問的鄰接頂點(diǎn)V2,..。;對頂點(diǎn)Vi,重復(fù)進(jìn)行以下操作:訪問Vi的一個未被訪問的鄰接接點(diǎn)Vi+1;若Vi的所有鄰接頂點(diǎn)均已被訪問,則返回到頂點(diǎn)Vi-1,考慮Vi-1的下一個未被訪問的鄰接頂點(diǎn),仍記為Vi;知道找到一條哈密爾頓回路或者找不到哈密爾頓回路,算法結(jié)束。

【C代碼】

下面是算法的C語言實現(xiàn)。

(1)常量和變量說明

n:圖G中的頂點(diǎn)數(shù)

c[][]:圖G的鄰接矩陣

K:統(tǒng)計變量,當(dāng)期已經(jīng)訪問的定點(diǎn)數(shù)為k+1

x[k]:第k個訪問的頂點(diǎn)編號,從0開始

Visited[x[k]]:第k個頂點(diǎn)的訪問標(biāo)志,0表示未訪問,1表示已訪問

(2)C程序

#include

#include

#defineMAX100VidoHamilton(intn,intx[MAX,intc[MAX][MAX]){

int;

intvisited[MAX];

intk;

/*初始化x數(shù)組賀visited數(shù)組*/

for(i=0:i

x[i]=0;

visited[i]=0;

/*訪問起始頂點(diǎn)*/

k=0

();

x[0]=0

K=k+1

/*訪問其他頂點(diǎn)*/

while(k>=0){

x[k]=x[k]+1;

while(x[k]>

if()&&c[x-[k-1]][x[k]=1){/*鄰接頂點(diǎn)x[k]未被訪問過*/

break;

}else{

x[k]=x[k]+1

if(x[k]

for(k=0;k

prinf(〝%d--〝,x[k];/*輸出哈密爾頓回路*/

prinf(〝%d--〝,x[0];

return;

}elseifx[k]

k=k+1;

}else{/*沒有未被訪問過的鄰接頂點(diǎn),回退到上一個頂點(diǎn)*/

x[k]=0;

visitedx[k]=0;

();

}(分?jǐn)?shù):15)(1).根據(jù)題干說明。填充C代碼中的空(1)~(5)。(分?jǐn)?shù):10)__________________________________________________________________________________________

正確答案:(1、visited[0]=1

2、visited[x[k]]==0

3、c[x[0]][x[k]]

4、visited[x[k]]=1

5、k=k-1)解析:(2).根據(jù)題干說明和C代碼,算法采用的設(shè)計策略為(6),該方法在遍歷圖的頂點(diǎn)時,采用的是(7)方法(深度優(yōu)先或廣度優(yōu)先)。(分?jǐn)?shù):5)__________________________________________________________________________________________

正確答案:(6、回溯法

7、深度優(yōu)先)解析:1.試題五

閱讀下列說明和C++代碼,將應(yīng)填入()處的字句寫在答題紙的對應(yīng)欄內(nèi)。

【說明】

某圖像預(yù)覽程序要求能夠查看BMP、JPEG和GIF三種格式的文件,且能夠Windows和Linux兩種操作系統(tǒng)上運(yùn)行程序需具有較好的擴(kuò)展性以支持新的文件格式和操作系統(tǒng)。為滿足上述需求并減少所需生成的子類數(shù)目,現(xiàn)采用橋接(Bridge)模式進(jìn)行設(shè)計,得到如圖5-1所示的類圖。

【C++代碼】

#include

#include<:string>;

Usingnamespacestd;

classMatrix{//各種格式的文件最終都被轉(zhuǎn)化為像素矩陣

//此處代碼省略

};classImplementor{

public:

(1);顯示像素矩陣m

};

classWinImp:publicImplementor{

public:

VioddoPaint(Matrixm){

/*調(diào)用Windows系統(tǒng)的繪制函數(shù)繪制像素矩陣*/

};classLinuxImp:publicImplementor{/*調(diào)用Linux系統(tǒng)的繪制函數(shù)繪制像素矩陣*/}

};

classImage{

public:

viodsetImp(Implement*imp)?{this->imp=imp;}

VirtualviodparseFile(stringfileName)=0

protected:

Implementor*imp;

};classBMPImage:publicImage{

//此處省略代碼

};classGIFImage:publicImage{

Public:

viodparseFile(stringfileName){

//此處解析GIF文件并獲得一個像素矩陣對象m

(2);顯示像素矩陣m

};classJPEGImage:publicImage{

//此處代碼省略

};intmain(){

//在linux操作系統(tǒng)上查看demo.gif圖像文件

Image*image=(3);

Implementor*imageImp=(4);

(5)

Image->parseFile(〝demo.gif〝);

return0;

}(分?jǐn)?shù):15.00)__________________________________________________________________________________________

正確答案:(1.virtualvoiddoPaint(Matrixm)=0

2.imp->doPaint(m)

3.newGIFImage()

4.newLinuxImp()

5.image->setImp(imageImp))解析:2.試題六

閱讀下列說明和Java代碼,將應(yīng)填入(

)上一處的字句寫在答題紙的對應(yīng)欄內(nèi)。

【說明】

某圖像預(yù)覽程序要求能夠查看BMP、JPEG和GIF三種格式的文件,且能夠在Windows和Linux兩種操作系統(tǒng)上運(yùn)行。程序需具有較好的擴(kuò)展性以支持新的文件格式和操作系統(tǒng)。為滿足上述需求并減少所需生成的子類數(shù)目,現(xiàn)采用橋接模式進(jìn)行設(shè)計,得到如圖6-1所示的類圖。

【Jave代碼】

Importjava.util.*;

classMatrix{//各種格式的文件最終都被轉(zhuǎn)化為像素矩陣

//此處代碼省略

};

abstractclassImplementor{

Public(1);//顯示像素矩陣m

};

classWinImpextendsImplementor{

publicvoiddoPaint(Matrixm){//調(diào)用Wind

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論