中級(jí)軟件設(shè)計(jì)師2017下半年下午試題_第1頁(yè)
中級(jí)軟件設(shè)計(jì)師2017下半年下午試題_第2頁(yè)
中級(jí)軟件設(shè)計(jì)師2017下半年下午試題_第3頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、中級(jí)軟件設(shè)計(jì)師2017下半年下午試題試題一閱讀下列說明和圖,回答問題1至問題4,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。【說明】某公司擬開發(fā)一個(gè)共享單車系統(tǒng),采用北斗定位系統(tǒng)進(jìn)行單車定位,提供針對(duì)用戶的APP以及微信小程序、基于Web的管理與監(jiān)控系統(tǒng)。該共享單車系統(tǒng)的主要功能如下。1)用戶注冊(cè)登錄。用戶在APP端輸入手機(jī)號(hào)并獲取驗(yàn)證碼后進(jìn)行注冊(cè),將用戶信息進(jìn)行存儲(chǔ)。用戶登錄后顯示用戶所在位置周圍的單車。2)使用單車。 掃碼/于動(dòng)開鎖。通過掃描二維碼或手動(dòng)輸入編碼獲取開鎖密碼,系統(tǒng)發(fā)送開鎖指令進(jìn)行開鎖,系統(tǒng)修改單車狀態(tài),新建單車行程。 騎行單車。單車定時(shí)上傳位置,更新行程。 鎖車結(jié)賬。用戶停止使用或手動(dòng)鎖車

2、并結(jié)束行程后,系統(tǒng)根據(jù)己設(shè)置好的計(jì)費(fèi)規(guī)則及使用時(shí)間自動(dòng)結(jié)算,更新本次騎行的費(fèi)用并顯示給用戶,用戶確認(rèn)支付后,記錄行程的支付狀態(tài)。系統(tǒng)還將重置單車的開鎖密碼和單車狀態(tài)。3)輔助管理。 查詢。用戶可以查看行程列表和行程詳細(xì)信息。 報(bào)修。用戶上報(bào)所在位置或單車位置以及單車故障信息并進(jìn)行記錄。4)管理與監(jiān)控。 單車管理及計(jì)費(fèi)規(guī)則設(shè)置。商家對(duì)單車基礎(chǔ)信息、狀態(tài)等進(jìn)行管理,對(duì)計(jì)費(fèi)規(guī)則進(jìn)行設(shè)置并存儲(chǔ)。 單車監(jiān)控。對(duì)單車、故障、行程等進(jìn)行查詢統(tǒng)計(jì)。 用戶管理。管理用戶信用與狀態(tài)信息,對(duì)用戶進(jìn)行查詢統(tǒng)計(jì)?,F(xiàn)采用結(jié)構(gòu)化方法對(duì)共享單車系統(tǒng)進(jìn)行分析與設(shè)計(jì),獲得如圖1-1所示的上下文數(shù)據(jù)流圖和圖1-2所示的0層數(shù)據(jù)流圖

3、。個(gè)人帝刖確認(rèn)支村倍加故障信怠/*車訳別倍JB/存程請(qǐng)奠耶找金,號(hào)汁摳親#用戶菽詢撓計(jì)齬黑圖1-1上下文數(shù)據(jù)流圖iir常期i.h-ft:AH'4N憫仏集謂*MI.和孔A憫仏集it圖1-20層數(shù)據(jù)流圖問題:1.1問題:1.2問題:1.3問題:1.4使用說明中的詞語(yǔ),給出圖1-1中的實(shí)體E1E3的名稱。使用說明中的詞語(yǔ),給出圖1-2中的數(shù)據(jù)存儲(chǔ)D1D5的名稱。根據(jù)說明和圖中術(shù)語(yǔ)及符號(hào),補(bǔ)充圖1-2中缺失的數(shù)據(jù)流及其起點(diǎn)和終點(diǎn)。根據(jù)說明中術(shù)語(yǔ),說明“使用單車”可以分解為哪些子加工試題二閱讀下列說明,回答問題1至問題4,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)?!菊f明】M公司為了便于開展和管理各項(xiàng)業(yè)務(wù)活動(dòng),

4、提高公司的知名度和影響力,擬構(gòu)建一個(gè)基于網(wǎng)絡(luò)的會(huì)議策劃系統(tǒng)。【需求分析結(jié)果】該系統(tǒng)的部分功能及初步需求分析的結(jié)果如下:(1)M公司旗下有業(yè)務(wù)部、策劃部和其他部門。部門信息包括部門號(hào)、部門名、主管、聯(lián)系電話和郵箱號(hào);每個(gè)部門只有一名主管,只負(fù)責(zé)管理本部門的工作,且主管參照員工關(guān)系的員工號(hào);一個(gè)部門有多名員工,每名員工屬于且僅屬于一個(gè)部門。(2)員工信息包括員工號(hào)、姓名、職位、聯(lián)系方式和薪資。職位包括主管、業(yè)務(wù)員、策劃員等。業(yè)務(wù)員負(fù)責(zé)受理用戶申請(qǐng),設(shè)置受理標(biāo)志。一名業(yè)務(wù)員可以受理多個(gè)用戶申請(qǐng),但一個(gè)用戶申請(qǐng)只能由一名業(yè)務(wù)員受理。(3)用戶信息包括用戶號(hào)、用戶名、銀行賬號(hào)、電話、聯(lián)系地址。用戶號(hào)唯一

5、標(biāo)識(shí)用戶信息中的每一個(gè)元組。(4)用戶申請(qǐng)信息包括申請(qǐng)?zhí)?、用戶?hào)、會(huì)議日期、天數(shù)、參會(huì)人數(shù)、地點(diǎn)、預(yù)算和受理標(biāo)志。申請(qǐng)?zhí)栁ㄒ粯?biāo)識(shí)用戶申請(qǐng)信息中的每一個(gè)元組,且一個(gè)用戶可以提交多個(gè)申請(qǐng),但一個(gè)用戶申請(qǐng)只對(duì)應(yīng)一個(gè)用戶號(hào)。(5)策劃部主管為己受理的用戶申請(qǐng)制定會(huì)議策劃任務(wù)。策劃任務(wù)包括申請(qǐng)?zhí)?、任?wù)明細(xì)和要求完成時(shí)間申請(qǐng)?zhí)栁ㄒ粯?biāo)識(shí)策劃任務(wù)的每一個(gè)元組。一個(gè)策劃任務(wù)只對(duì)應(yīng)一個(gè)已受理的用戶申請(qǐng),但一個(gè)策劃任務(wù)可由多名策劃員參與執(zhí)行,且一名策劃員可以參與執(zhí)行,且在項(xiàng)策劃任務(wù)。【概念模型設(shè)計(jì)】根據(jù)需求階段收集的信息,設(shè)計(jì)的實(shí)體聯(lián)系圖(不完整)如圖2-1所示。圖2-1實(shí)體聯(lián)系圖【關(guān)系模型設(shè)計(jì)】部門(部門和,部門

6、名,部門主管,聯(lián)系電話,由E箱號(hào))員工(員工號(hào),姓名,(),聯(lián)系方式,薪資)用戶(用戶名,(),電話,聯(lián)系地址)用戶申請(qǐng)(申請(qǐng)?zhí)?,用戶?hào),會(huì)議日期,天數(shù),參會(huì)人數(shù),地點(diǎn),受理標(biāo)志,()執(zhí)行(申請(qǐng)?zhí)?,任?wù)明細(xì),()問題:2.1根據(jù)問題描述,補(bǔ)充五個(gè)聯(lián)系,完善圖2-1的實(shí)體聯(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:*和*:*)。問題:2.2根據(jù)題意,將關(guān)系模型中的空(a)(d)補(bǔ)充完整,并填入答題紙對(duì)應(yīng)的位置上。問題:2.3給出“用戶申請(qǐng)”和“策劃任務(wù)”關(guān)系模式的主鍵和外鍵。問題:2.4請(qǐng)問“執(zhí)行”關(guān)系模式的主鍵為全碼的說法正確嗎?

7、為什么?試題三閱讀下列系統(tǒng)設(shè)計(jì)說明,回答問題1至問題3,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。【說明】某大學(xué)擬開發(fā)一個(gè)用于管理學(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)中保存了會(huì)議文章(ConfPaper)、期刊文章(JurnalArticle)和校內(nèi)技術(shù)報(bào)告(TechReport)等學(xué)術(shù)出版物的

8、信息,如題目、作者以及出版年份等。除此之外,系統(tǒng)還存儲(chǔ)了不同類型出版物的一些特有信息;對(duì)于會(huì)議文章,系統(tǒng)還記錄了會(huì)議名稱、召開時(shí)間以及召開地點(diǎn);(1) 對(duì)于期刊文章,系統(tǒng)還記錄了期刊名稱、出版月份、期號(hào)以及主辦單位;對(duì)于校內(nèi)技術(shù)報(bào)告,系統(tǒng)記錄了由學(xué)校分配的唯一ID。3. 查詢指定會(huì)議集(Proceedings)或某個(gè)期刊特定期(Edition)的所有文章。會(huì)議集包含了發(fā)表在該會(huì)議(在某個(gè)特定時(shí)間段、特定地點(diǎn)召開)上的所有文章。期刊的每一期在特定時(shí)間發(fā)行,其中包含若干篇文章。4. 下載出版物。系統(tǒng)記錄每個(gè)出版物被下載的次數(shù)。5. 查詢引用了某篇出版物的所有出版物。在學(xué)術(shù)出版物中引用他人或早期的文

9、獻(xiàn)作為相關(guān)工作或背景資料是很常見的現(xiàn)象。用戶也可以在系統(tǒng)中為某篇出版物注冊(cè)引用通知,若有新的出版物引用了該出版物,系統(tǒng)將發(fā)送電子郵件通知該用戶?,F(xiàn)在采用面向?qū)ο蠓椒▽?duì)該系統(tǒng)進(jìn)行開發(fā),得到系統(tǒng)的初始設(shè)計(jì)類圖如圖3-1所示。refenoetEaitiorisubjert圖34初始設(shè)計(jì)類圏6KAuthorT*ccr一-Ih一根據(jù)說明中的描述,給出圖3-1中C1C9所對(duì)應(yīng)的類名。問題:3.1根據(jù)說明中的描述,給出圖3-1中類C6C9的屬性。根據(jù)說明中的描述,給出圖3-1中類C6C9的屬性。問題:3.2圖3-1中包含了哪種設(shè)計(jì)模式?實(shí)現(xiàn)的是該系統(tǒng)的哪個(gè)功能?圖3-1中包含了哪種設(shè)計(jì)模式?實(shí)現(xiàn)的是該系統(tǒng)的

10、哪個(gè)功能?問題:3.3試題四閱讀下列說明和C代碼,回答問題1至問題2,將解答寫在答題紙的對(duì)應(yīng)欄內(nèi)?!菊f明】一個(gè)無向連通圖G點(diǎn)上的哈密爾頓(Hamiltion)回路是指從圖笳的某個(gè)頂點(diǎn)出發(fā),經(jīng)過圖上所有其他頂點(diǎn)一次且僅一次,最后回到該頂點(diǎn)的路勁。一種求解無向圖上哈密爾頓回路算法的基礎(chǔ)私下如下:假設(shè)圖G存在一個(gè)從頂點(diǎn)V0出發(fā)的哈密爾頓回路V1V2V3.Vn-1V0。算法從頂點(diǎn)V0出發(fā),訪問該頂點(diǎn)的一個(gè)未被訪問的鄰接頂點(diǎn)V1,接著從頂點(diǎn)V1出發(fā),訪問V1個(gè)未被訪問的鄰接頂點(diǎn)V2,.o;對(duì)頂點(diǎn)Vi,重復(fù)進(jìn)行以下操作:訪問Vi的一個(gè)未被訪問的鄰接接點(diǎn)Vi+1;若Vi的所有鄰接頂點(diǎn)均已被訪問,貝U返回到頂

11、點(diǎn)Vi-1,考慮Vi-1的下一個(gè)未被訪問的鄰接頂點(diǎn),仍記為Vi;知道找到一條哈密爾頓回路或者找不到哈密爾頓回路,算法結(jié)束。C代碼】下面是算法的C語(yǔ)言實(shí)現(xiàn)。(1)常量和變量說明n:圖G中的頂點(diǎn)數(shù)c口:圖G的鄰接矩陣K:統(tǒng)計(jì)變量,當(dāng)期已經(jīng)訪問的定點(diǎn)數(shù)為k+1xk:第k個(gè)訪問的頂點(diǎn)編號(hào),從0開始Visitedxk:第k個(gè)頂點(diǎn)的訪問標(biāo)志,0表示未訪問,1表示已訪問(2)C程序#inelude<stido.h>#inelude<stidb.h>#defineMAX100VidoHamilton(intn,intxMAX,intcMAXMAX)int;intvisitedMAX;i

12、ntk;/*初始化x數(shù)組賀visited數(shù)組*/for(i=0:i<n;i+)xi=0;visitedi=0;/*訪問起始頂點(diǎn)*/k=0(1) ;x0=0K=k+1/*訪問其他頂點(diǎn)*/while(k>=0)xk=xk+1;while(xk><n)if(2)&&cx-k-1xk=1)/*鄰接頂點(diǎn)xk未被訪問過*/Break;elsexk=xk+1if(xk<n-1&&(3)/*找到一條哈密爾頓回路*/for(k=0;k<n;k+)prinf("%d-",xk;/*輸出哈密爾頓回路*/prinf("%

13、d-",x0;return;elseifxk<n&&k<n-1)/*設(shè)置當(dāng)期頂點(diǎn)的訪問標(biāo)志,繼續(xù)下一個(gè)頂點(diǎn)*/(4)k=k+1;else/*沒有未被訪問過的鄰接頂點(diǎn),回退到上一個(gè)頂點(diǎn)*/xk=0;visitedxk=0;(2) ;問題:4.1根據(jù)題干說明。填充C代碼中的空(1)(5).問題:4.2根據(jù)題干說明和C代碼,算法采用的設(shè)計(jì)策略為(6),該方法在遍歷圖的頂點(diǎn)時(shí),采用的是(7)方法(深度優(yōu)先或廣度優(yōu)先)。試題五閱讀下列說明和C+代碼,將應(yīng)填入(n)處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)?!菊f明】某圖像預(yù)覽程序要求能夠查看BMP、JPEG和GIF三種格式的文件,

14、且能夠Windows和Linux兩種操作系統(tǒng)上運(yùn)行程序需具有較好的擴(kuò)展性以支持新的文件格式和操作系統(tǒng)。為滿足上述需求并減少【C+代碼】#include#include<:string>Usingnamespacestd;classMatrix/各種格式的文件最終都被轉(zhuǎn)化為像素矩陣/此處代碼省略;classImplementorpublic:(1);顯示像素矩陣m;classWinlmp:publicImplementorpublic:VioddoPaint(Matrixm)/*調(diào)用Windows系統(tǒng)的繪制函數(shù)繪制像素矩陣*/;classLinuxImp:publicImplemen

15、tor/*調(diào)用Linux系統(tǒng)的繪制函數(shù)繪制像素矩陣*/;classImagepublic:viodsetImp(Implement*imp)this->imp=imp;VirtualviodparseFile(stringfileName)=0protected:Implementor*imp;classBMPImage:publicImage/此處省略代碼;classGIFImage:publicImagePublic:viodparseFile(stringfileName)/此處解析GIF文件并獲得一個(gè)像素矩陣對(duì)象m(2) ;顯示像素矩陣m;classJPEGImage:publi

16、cImage/此處代碼省略;intmain()/在linux操作系統(tǒng)上查看demo.gif圖像文件Image*image=(3);Implementor*imagelmp=(4);(5)Image->parseFile(”demo.gif”);return0;試題六閱讀下列說明和Java代碼,將應(yīng)填入(n)處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)【說明】某圖像預(yù)覽程序要求能夠查看BMP、JPEG和GIF三種格式的文件,且能夠在Windows和Linux兩種操作系統(tǒng)上運(yùn)行。程序需具有較好的擴(kuò)展性以支持新的文件格式和操作系統(tǒng)。為滿足上述需求并減少所需生成的子類數(shù)目,現(xiàn)采用橋接模式進(jìn)行設(shè)計(jì),得到如圖6-1

17、所示的類圖GinmageJPEGlmageWmlmpuntfstimp圖6-1類圖Java代碼】Importjava.util*;classMatrix/各種格式的文件最終都被轉(zhuǎn)化為像素矩陣/此處代碼省略;abstractclassImplementorPublic(1);/顯示像素矩陣m;classWinImpextendsImplementor;classLinuxImppublicvoiddoPaint;abstractclassImagepublicvoidsetImpextendsImplementor(Matrixm)/調(diào)用Linux系統(tǒng)的繪制函數(shù)繪制像素矩陣publicabstr

18、actvoidparseFileprotectedImplementorimp;classBMPImageextendsImage/此處代碼省略;classGIFImageextendsImagepublicvoidparseFile/(Implementorimp(StringfileName)this.imp=imp;);(StringfileName)此處解析BMP文件并獲得一個(gè)像素矩陣對(duì)象m(2);/顯示像素矩陣m;ClassMainPublicstaticviodmain(Stringargs:/在Linux操作系統(tǒng)上查看demo.gif圖像文件Imageimage=(3)Imple

19、mentorimageImp=("demo.gif”);("demo.gif”);(5)Image.parseFile中級(jí)軟件設(shè)計(jì)師2017上半年下午試題答案試題一問題1.1、E1:用戶E2:商家E3:單車問題1.2、D1:用戶信息文件D2:單車信息文件D3:行程信息文件D4:計(jì)費(fèi)規(guī)則信息文件D5:單車故障信息文件問題1.3、起點(diǎn)終占乙八、數(shù)據(jù)流名稱P3P3E1開鎖密碼P3E1行程/費(fèi)用P3D2單車狀態(tài)P3E3開鎖指令D4P3行程規(guī)則D3P7P行程信息P4D2單車狀態(tài)問題1.4、掃碼/手動(dòng)開鎖加工、騎行單車加工、鎖車結(jié)賬加工。試題二問題2.1、問題2.2、1、部門號(hào)2、用戶號(hào)、銀行賬號(hào)4、要求完成時(shí)間、4、要求完成時(shí)間、3、預(yù)算費(fèi)用、業(yè)務(wù)員問題2.3、用戶申請(qǐng)主鍵:申請(qǐng)?zhí)柾怄I:用戶號(hào)、員工號(hào)策劃任務(wù)主鍵:申請(qǐng)?zhí)柾怄I:主管、申請(qǐng)?zhí)枂栴}2.4、“執(zhí)行”關(guān)系模式的主鍵為全碼是錯(cuò)誤的。因?yàn)椤鄙暾?qǐng)?zhí)枴迸c“策劃號(hào)”的組合即能唯確定執(zhí)行關(guān)系中的一個(gè)元

溫馨提示

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

評(píng)論

0/150

提交評(píng)論