2018年上半年軟件設計師下午卷試題及答案解析_第1頁
2018年上半年軟件設計師下午卷試題及答案解析_第2頁
2018年上半年軟件設計師下午卷試題及答案解析_第3頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、2018年上半年軟件設計師下午卷試題及答案解析在在預約表中新增預約記錄,結果(4) 藥品管理。醫生提交處方,根據藥品名稱從藥品數據中查詢相關藥品庫存信息開出藥品,更新對應藥品的庫存以及預約表中的治療信息;給醫生發送藥品已開出”反饋(5) 報表創建。根據主管提交的報表查詢請求(報表類型和時間段),從預的數、通用信息、藥品庫存數據、醫生以及醫生出診時間中進行查詢,生成報表返回給主管.現采用結構化方法對醫療管理系統進行分析與設計,獲得如圖1-1所示的上下文數據流圖和圖12的神0層數據流圖。2018年上半年軟件設師綜合技能試題一(共15分)閱讀下列說明,將解答填入題紙的對應欄內。【說明】某醫療護理機構

2、為老年人或有護理需求者提供專業護理,現欲開發一基于web的醫療管理系統,以改善醫療護理效,該系統的主要要功能如下:通用信息查詢,客廣提交通用信息查詢請求,意而通用信表表,返回查詢結果醫生聘用。醫生提出成/職中申,交由去前行用事事,更新醫生表,并給醫生反聘用解聘結果:聊除解聘醫生的出診發排預約處理。醫生安排出診時向間,存入醫生出診時間表,根據客戶提交的預約查詢請求,查在職醫生及其出診時間等約所需數據并返同問:創建預約,提交預約請求,-,更新用約醫生出診時間并給醫生發送約通知給客戶反徵預約<>*捎美灣用持一|枚*用信息1E3連用信息晝向單果出論肘際f【問題【問題【問題【問題T饋購底*期

3、、f、1,81構反刊喲址itW*MRX村購所出診*桐茄靖出的時聞蟄的調求/_1H用&AT解府反國械的mi府品備禰IE生用情息曾具普融已拜出反博廠I透室般麟申#/曜生應祖«(/曜生%柔申堵阪牛葬眼勝曜IBl:2D疑敦也流朗處方EJ1】(3分)使用說明中的詞語,給出圖2】(5分)使用說明中的詞語,給出圖3)(4分)使用說明和圖中術語,補充圖4】(3分)使用說明中的詞語,說明-1中的實體E1E3的名稱。-2中的數據存儲D1D5的名稱。12中缺失的數據流及其起點和終點。預約處理”可以分解為哪些子加工,和圖12是如何保持數據流圖平衡。并說明建模圖11試題二(共15分)閱讀下列說明,回答

4、問題1至問題3,將解答填入答題紙的對應欄內。【說明】頃外代購公司為擴展公司業有業務及需求完成該系統鬲數輒庫設土,需要開發一個信息化管理系統。請根據公司現【需求描述】(1)記錄公司員工信息。員工信息包括工號、身份證號、姓名、性別和一個手機號,工號唯一標識每位員工,員工分為代購員和配送員。記錄采購的商品信息。商品信息包括商品名稱、所在超市名稱、采購價格、銷售價格和商品介紹,系統內部用商品條碼唯一標識每種商品。一種商品只在一家超市代購。(2) 記錄顧客信息。顧客信息包括顧客真實姓名、身份證號(清關繳稅用)、一個手機號和一個收貨地址,系統自動生成唯一的顧客編號。(3) 記錄托運公司信息。托運公司信息包

5、括托運公司名稱、電話和和地址,系統自動生成唯一的托運公司編號。(4) 顧客登錄系統之后,可以下訂單購買商品。訂單支付成功后,系統記錄唯一的支付憑證編號,顧客需要在訂單里指定運送方式:空運或海運。(5) 代購員根據觀客的訂單在超市采購對應商品,一份訂單所含的多個商品可能由多名代購員從不向超市米購。(6) 采購完的商品交由配送員根據顧客訂單組合裝箱,然后交給托運公司運送。托運公司按顧客訂單核對商品名稱和數量,然后按顧客的地址進行運送。21所示。【概念模型設計】根據需求階段收集的信息,設計的實體聯系圖(不完整)如圖【邏輯結構設計】據概念模型設計階段完成的實體聯系圖,得出如下關系模式(不完整):員工(

6、工號,身份證號,姓名,性別,手機號)商品(條碼,商品名稱,所在超市名稱,采購價格,銷售價格,商品介紹)顧客(編號,姓名,身份證號,手機號,收貨地址)托運公司司(托運公司編號,托運公司名稱,電話,地址)訂單(訂單ID,(a),商品數量,運送方式,支付憑證編號)代購(代購ID,代購員工號,(b)運送(運送D,配送員工號,托運公司編,訂單D,發運時間)【問題1】(3分)根據問題描述,補充圖2-1的實體聯系圖。【問題2】(6分)補充邏輯結構設計結果中的(a)、(b)兩處空缺。【問題3】(6分)為方便顧客,允許顧客在系統中保存多組收貨地址。請根據此需求,增加顧客地址”弱實體,對圖2-1進行補充,并修改運

7、送”關系模式。試題三(共15分)閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。【說明】某ETC(ElectronicTollCollection,不停車收費)系統在高速公路沿線的特定位置上設置一個橫跨道路上空的龍門架(Tollgantry),龍門架下包括6條車道(Traficlanes),每條車道上安裝有雷達傳感器(Radarsensor)、無線傳輸器(Radiotransceiver)和數碼相機(DigitalCamera)等用于不停車收費的設備,以完成正常行駛速度下的收費工作。該系統的基本工作過程如下:每輛汽車上安裝有車載器,駕駛員(Driver)將一張具有唯一識別碼的磁卡

8、插入車載器中。磁卡中還包含有駕駛員賬戶的當前信用記錄。當汽車通過某條車道時,不停車收費設備識別車載器內的特有編碼,判斷車型,將收集到的相關信息發送到該路段所屬的區域系統(Regionalcenter)中,計算通行費用創建收費交易(Transaction),從駕駛員的專用賬戶中扣除通行費用。如果駕駛員賬戶透支,則記錄透支賬戶交易信息。區域系統再將交易后的賬戶信息發送到維護駕駛員賬戶信息的中心系統(Centralsystem)(1) 車載器中的磁卡可以使用郵局的付款機進行充值。充值信息會傳送至中心系統,以更新駕駛員賬戶的余額。當沒有安裝車載器或者車載器發生故障的車輛通過車道時,車道上的數碼相機將對

9、車輛進行拍照,并將車輛照片及拍攝時間發送到區域系統,記錄失敗的交易信息;并將該交易信息發送到中心系統。(2) 區域系統會獲取不停車收費設備所記錄的交通事件(Trafficevents);交通廣播電臺(Trafficadvicecenter)根據這些交通事件進行路況分析并播報路況。現采用面向對象方法對上述系統進行分析與設計,得到如表3-1所示的用例列表以及如圖3-1所示的用例圖和圖3-2所示的分析類圖。表用例列表用例名豚說引Createfransaction記錄收費交易Churgecard滋卡充Underpaidtransoctioci此琰進支殊戶交易信息Keuord11】峋掀祀彖失敗文易信息R

10、ecordtrafticevent記錄交通事件圖3-1用物明圖3-2分析美圖【問題1】(4分)根據說明中的描述,給出圖3-1中A1A4所對應的參與者名稱。【問題2)(5分)根據說明中的描述及表31,給出圖3-1中UI-U5所對應的用例名稱【問題3】(6分)根據說明中的描述,給出圖32中C1C6所對應的類名試題四(共15分)閱讀下列說明和C代碼,回答問題1和問題2,將解答填入答題紙的對應欄內。【說明】某公司購買長鋼條,將其切割后進行出售。切割鋼條的成本可以忽略不計,鋼條的長度為整英寸。已知價格表P,其中中Pi(i=1,2,m)表示長度為i英寸的鋼條的價格。現要求解使銷售收益最大的切割方案。求解此

11、切割方案的算法基本思想如下:假設長鋼條的長度為n英寸,最佳切割方案的最左邊切割段長度為i英寸,則繼續求解剩余長度為n-i英寸鋼條的最佳切割方案。考慮所有可能的i,得到的最大收益rn對應的切割方案即為最佳切割方案。rn的遞歸定義如下:rn=max1<i(pi+rn-i)對此遞歸式,給出自頂向下和自底向上兩種實現方式【C代碼】/*常量和變量說明n:長鋼條的長度P:價格數組*/#defineLEN100intTop_Down_Cut_Rod(intP,intn)/*自頂向下*/Intr=0Inti;if(n=0)retum0;for(i=1;(1);i+)inttmp=pi+Top_Down_

12、Cut_Rod(p,n-i)r=(r>=tmp)?r:tmp;)returnr;)intBottom_Up_Cut_Road(intp,intn)(/*自底向上*/intrLEN=0;inttemp=0;inti,j;for(j=1;j<=n;j+)temp=0;for(i=l;(2);i+)temp=(3);(4)returnrn;【問題1】(8分)根據說明,填充C代碼中的空(1)(4)。【問題2】(7分)根據說明和C代碼,算法采用的設計練略為(5)。求解時,自頂向下方法的時間復雜度為(6);自底向上方法的時間復雜度為(7)(用O表示)。從下列的2道試題(試題五至試題六)中任選1

13、道解答。請在答題紙上的指定位置處將所選擇試題的題號框涂黑。若多涂或者未涂題號框,則對題號最小的一道試題進行評分。試題五(共15分)閱讀下列說明和C+代碼,將應填入(n)處的字句寫在答題紙的對應欄內【說明】,使得同樣的生成器(Builder)模式的意圖是將一個復雜對象的構建與它的表示分離構建過程可以創建不同的表示。圖5-1所示為其類圖圖5-1生成器模式類圖【C+代碼】#include<iostream>#include<string>usingnamespacestd;classProductprivate:stringpartA,partB;public:Product

14、()voidsetPartA(conststring&s)PartA=s;voidsetPartB(conststring&s)PartB=s;II其余代碼省略;classBuilderpublic:(1) ;virtualvoidbuildPartB()=0;;);classConcreteBuilderl:publicBuilder(private:Product*product;public:ConcreteBuilder1()product=newProduct();)voidbuildPartA()(3)("ComponentA");)voidbu

15、ildPartB()(4)("ComponentB");)Product*getResult()returnproduct;)II其余代碼省略);classConcreteBuilder2:publicBuilder/*代碼省略*/);classDirectorprivate:Builder*builder;public:Director(Builder*pBuilder)builder*pBuilder;)voidconstruct()(5)II其余代碼省略)II其余代碼省略);intmain()Director*director1=newDirector(newConc

16、reteBuilder1();directorl->construct();deletedirector1;return0;)試題六(共15分)閱讀下列說明和Java代碼,將應填入(n)處的字句寫在答題紙的對應欄內【說明】生成器(Builder)模式的意圖是將一個復雜對象的構建與它的表示分離,使得同樣的構建過程可以創建不同的表示。圖6-1所示為其類圖。圖6-1生成器模式類圖Java代碼】importjava.util.*;classProductprivateStringpartA;privateStringpartB;publicProduct()publicvoidsetPartA(

17、Strings)partA=s;publicvoidsetPartB(Strings)partB=s;interfaceBuilderpublic(1);publicvoidbuildPartB();public(2);classConcreteBuilder1:implementsBuilderprivateProductproduct;publicConcreteBuilder1()product=newProduct();publicvoidbuildPartA()(3)("ComponentA");publicvoidbuildPartB()(4)("Co

18、mponentB");publicProductgetResult()returnproduct;classConcreteBuilder2implementsBuilderII代碼省略classDirector(privateBuilderbuilder;publicDirector(Builderbuilder)(this.builder=builder;publicvoidconstruct()(5)II代碼省略classTest(publicstaticvoidmain(Stringargs)Directordirector1=newDirector(newConcreteB

19、uilder1();directorl.construct();2018年上半年(軟設)下午題答案及解析試題一、問題1:E1:客戶E2:醫生E3:主管問題2:D1:通用信息表D2:預約表D3:醫生表D4:出診時間表D5:藥品庫存表問題3:數據流名稱起點終點刪除解聘醫生的出診安排P2D4查詢相關藥品庫存信息P4D2更新預約表中治療信息D5P4更新所約醫生出診時間P3D4預約處理分解為:安排出診、創建預約、提交預約請求、發送預約通知。即保持父圖與子圖之間的平衡:父圖中某個加工的輸入輸出數據流必須與其子圖的輸入輸出數據流在數量上和名字上相同。父圖的一個輸入(或輸出)數據流對應于子圖中幾個輸入(或輸出

20、)數據流,而子圖中組成的這些數據流的藪據項全體正好是父圖中的這一個吸試題二、問題2:商品條碼,顧客編號訂單ID,商品條碼代購員顧客地址新增一個弱實體顧客地址,新增一個聯系客戶收貨地址,聯連接顧客實體和顧客地址類型為1:*;弱實體用雙矩型運送關系模式增加該訂單收貨地址試題二、問題1:A1:Centralsystem或中心系統A2:Driver或駕駛員A3:Regionalcenter或區域系統A4:Trafficadvicecenter或交通廣播電臺其中A3、A4可以互換問題2:U1:UnderpaidtransactionU2:RecordIllegaluseU3:Createtransact

21、ionU4:RecordtrafficeventU5:Chargecard其中U1、U2可以互換,用例名稱必須為英文,因為表中的漢字是對用例的說明。問題3:C1:CentersystemC2:TrafficeventsC3:TollgantryC4:RadarsensorC5:RadiotransceiverC6:DigitalCamera其中C4、C5、C6可以互換【解析】問題1:首先要識別出參與者,是人或組織。題干中表示參與者的有:駕駛員、區域系統、中心系統、交通廣播電臺。由問題2得出A1為中心系統。問題2:填寫用例,要先找到突破口,本題有兩個突破口,一個是U1、U2是U3的擴展,而所給定的用例名稱中,只有記錄透支帳戶交易信息和記錄失敗交易信息,是記錄收費交易的擴展。二個是有一個孤立的用例,從題干中可知為記錄交通事件,再加上問題1中的參與者,可以推出完整的用例圖。

溫馨提示

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

評論

0/150

提交評論