省考軟件設(shè)計(jì)師考試模擬題及答案資格證從業(yè)考試題卷(8)_第1頁
省考軟件設(shè)計(jì)師考試模擬題及答案資格證從業(yè)考試題卷(8)_第2頁
省考軟件設(shè)計(jì)師考試模擬題及答案資格證從業(yè)考試題卷(8)_第3頁
省考軟件設(shè)計(jì)師考試模擬題及答案資格證從業(yè)考試題卷(8)_第4頁
省考軟件設(shè)計(jì)師考試模擬題及答案資格證從業(yè)考試題卷(8)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 軟件設(shè)計(jì)師考試模擬題及答案-試題1閱讀以下說明,根據(jù)要求回答下列問題。 說明 某電子商務(wù)系統(tǒng)采用以數(shù)據(jù)庫為中心的集成方式改進(jìn)購物車的功能,詳細(xì)需求如下。 1加入購物車。顧客瀏覽商品,點(diǎn)擊加入購物車,根據(jù)商品標(biāo)識(shí)從商品表中讀取商品信息,并更新購物車表。 2瀏覽購物車。顧客提交瀏覽購物車請(qǐng)求后,顯示出購物車表中的商品信息。 3提交訂單。顧客點(diǎn)擊提交訂單請(qǐng)求,后臺(tái)計(jì)算購物車表中商品的總價(jià)(包括運(yùn)費(fèi))加入訂單表,將購物車表中的商品狀態(tài)改為待付款,顯示訂單詳情。若商家改變價(jià)格,則刷新后可看到更改后的價(jià)格。 4改變價(jià)格。商家查看訂購自家商品的訂單信息,根據(jù)特殊優(yōu)惠條件修改價(jià)格,更新訂單表中的商品價(jià)格。

2、5付款。顧客點(diǎn)擊付款后,系統(tǒng)先根據(jù)顧客表中關(guān)聯(lián)的支付賬戶,將轉(zhuǎn)賬請(qǐng)求(驗(yàn)證碼、價(jià)格等)提交給支付系統(tǒng)(如信用卡系統(tǒng))進(jìn)行轉(zhuǎn)賬;然后根據(jù)轉(zhuǎn)賬結(jié)果返回支付狀態(tài)并更改購物車表中商品的狀態(tài)。 6物流跟蹤。商家發(fā)貨后,需按訂單標(biāo)識(shí)添加物流標(biāo)識(shí)(物流公司、運(yùn)單號(hào));然后可根據(jù)顧客或商家的標(biāo)識(shí)以及訂單標(biāo)識(shí),查詢訂單表中的物流標(biāo)識(shí),并從相應(yīng)物流系統(tǒng)查詢物流信息。 7生成報(bào)表。根據(jù)管理員和商家設(shè)置的報(bào)表選項(xiàng),從訂單表、商品表以及商品分類表中讀取數(shù)據(jù),調(diào)用第三方服務(wù)Crystal Reports生成相關(guān)報(bào)表。 8維護(hù)信息。管理員維護(hù)(增、刪、改、查)顧客表、商品分類表和商品表中的信息。 現(xiàn)采用結(jié)構(gòu)化方法實(shí)現(xiàn)上述需

3、求,在系統(tǒng)分析階段得到如圖1-9所示的頂層數(shù)據(jù)流圖和圖1-10所示的0層數(shù)據(jù)流圖。 1、問題1 使用說明中的詞語,給出圖1-9中的實(shí)體E1E4的名稱。2、問題2 使用說明中的詞語,給出圖1-10中的數(shù)據(jù)存儲(chǔ)D1D4的名稱。3、問題3 圖1-10中缺失了數(shù)據(jù)流,請(qǐng)用說明或圖1-10中的詞語,給出其起點(diǎn)和終點(diǎn)。4、問題4 根據(jù)說明,給出數(shù)據(jù)流“轉(zhuǎn)賬請(qǐng)求”、“顧客訂單物流查詢請(qǐng)求”和“商家訂單物流查詢請(qǐng)求”的各組成數(shù)據(jù)項(xiàng)。試題2閱讀下列說明和圖,回答下列問題。 說明 某會(huì)議策劃公司為了方便客戶,便于開展和管理各項(xiàng)業(yè)務(wù)活動(dòng),需要構(gòu)建一個(gè)基于網(wǎng)絡(luò)的會(huì)議預(yù)定系統(tǒng)。 需求分析 1會(huì)議策劃公司設(shè)有受理部、策劃

4、部和其他部門。部門信息包括部門號(hào)、部門名稱、部門主管、電話和郵箱號(hào)。每個(gè)部門有多名員工處理部門的日常事務(wù),每名員工只能在一個(gè)部門工作。每個(gè)部門有一名主管負(fù)責(zé)管理本部門的事務(wù)和人員。 2員工信息包括員工號(hào)、姓名、部門號(hào)、職位、聯(lián)系方式和工資;其中,職位包括主管、業(yè)務(wù)員、策劃員等。業(yè)務(wù)員負(fù)責(zé)受理會(huì)議申請(qǐng)。若申請(qǐng)符合公司規(guī)定,則置受理標(biāo)志并填寫業(yè)務(wù)員的員工號(hào)。策劃部主管為已受理的會(huì)議申請(qǐng)制定策劃任務(wù),包括策劃內(nèi)容、參與人數(shù)、要求完成時(shí)間等。一個(gè)已受理的會(huì)議申請(qǐng)對(duì)應(yīng)一個(gè)策劃任務(wù),一個(gè)策劃任務(wù)只對(duì)應(yīng)一個(gè)已受理的會(huì)議申請(qǐng),但一個(gè)策劃任務(wù)可由多名策劃員參與執(zhí)行,且一名策劃員可以參與多項(xiàng)策劃任務(wù)。 3客戶信息

5、包括客戶號(hào)、單位名稱、通信地址、所屬省份、聯(lián)系人、聯(lián)系電話、銀行賬號(hào)。其中,一個(gè)客戶號(hào)唯一標(biāo)識(shí)一個(gè)客戶。一個(gè)客戶可以提交多個(gè)會(huì)議申請(qǐng),但一個(gè)會(huì)議申請(qǐng)對(duì)應(yīng)唯一的一個(gè)客戶號(hào)。 4會(huì)議申請(qǐng)信息包括申請(qǐng)?zhí)?、開會(huì)日期、會(huì)議地點(diǎn)、持續(xù)天數(shù)、會(huì)議人數(shù)、預(yù)算費(fèi)用、會(huì)議類型、酒店要求、會(huì)議室要求、客房類型、客房數(shù)、聯(lián)系人、聯(lián)系方式、受理標(biāo)志和業(yè)務(wù)員的員工號(hào)等??头款愋陀泻廊A套房、普通套房、標(biāo)準(zhǔn)間、三人間等,且申請(qǐng)?zhí)柡涂头款愋蜎Q定客房數(shù)。 概念模型設(shè)計(jì) 根據(jù)需求階段收集的信息,設(shè)計(jì)的實(shí)體聯(lián)系圖和關(guān)系模式(不完整)如圖1-11所示: 關(guān)系模式設(shè)計(jì) 部門(部門號(hào),部門名稱,主管,電話,郵箱號(hào)) 員工(員工號(hào),姓名,

6、(a) ,聯(lián)系方式,工資) 客戶(客戶號(hào),單位名稱,通信地址,所屬省份,聯(lián)系人,聯(lián)系電話,銀行賬號(hào)) 會(huì)議申請(qǐng)( (b) ,開會(huì)日期,會(huì)議地點(diǎn),持續(xù)天數(shù),會(huì)議人數(shù),預(yù)算費(fèi)用,會(huì)議類型,酒店要求,會(huì)議室要求,客房數(shù),聯(lián)系人,聯(lián)系方式,受理標(biāo)志,員工號(hào)) 策劃任務(wù)( (c) ,策劃內(nèi)容,參與人數(shù),要求完成時(shí)間) 執(zhí)行策劃( (d) ,實(shí)際完成時(shí)間)5、問題1 根據(jù)問題描述,補(bǔ)充5個(gè)聯(lián)系、聯(lián)系的類型,完善圖1-11的實(shí)體聯(lián)系圖。6、問題2 根據(jù)實(shí)體聯(lián)系圖,將關(guān)系模式中的空缺處補(bǔ)充完整(1個(gè)空缺處可能有多個(gè)數(shù)據(jù)項(xiàng))。對(duì)會(huì)議申請(qǐng)、策劃任務(wù)和執(zhí)行策劃關(guān)系模式,用下劃線和群分別指出各關(guān)系模式的主鍵和外鍵。7

7、、問題3 請(qǐng)說明關(guān)系模式“會(huì)議申請(qǐng)”存在的問題及解決方案。試題3閱讀下列說明和圖,回答下列問題。 說明 某城市的各國家公園周邊建造了許多供游客租用的小木屋和營地,為此,該城市設(shè)置了一個(gè)中心售票處和若干個(gè)區(qū)域售票處。游客若想租用小木屋或營地,必須前往中心售票處進(jìn)行預(yù)定并用現(xiàn)金支付全額費(fèi)用。所有的預(yù)定操作全部由售票處的工作人員手工完成。現(xiàn)欲開發(fā)一信息系統(tǒng),實(shí)現(xiàn)小木屋和營地的預(yù)定及管理功能,以取代手工操作。該系統(tǒng)的主要功能描述如下。 1管理預(yù)定申請(qǐng)。游客可以前往任何一個(gè)售票處提出預(yù)定申請(qǐng)。系統(tǒng)對(duì)來自各個(gè)售票處的預(yù)定申請(qǐng)進(jìn)行統(tǒng)一管理。 2預(yù)定。預(yù)定操作包含登記游客預(yù)定信息、計(jì)算租賃費(fèi)用、付費(fèi)等步驟。

8、3支付管理。游客付費(fèi)時(shí)可以選擇現(xiàn)金和信用卡付款兩種方式。使用信用卡支付可以享受3%的折扣,現(xiàn)金支付沒有折扣。 4游客取消預(yù)定。預(yù)定成功之后,游客可以在任何時(shí)間取消預(yù)定,但需支付賠償金,剩余部分則退還給游客。賠償金的計(jì)算規(guī)則是,在預(yù)定入住時(shí)間之前的48小時(shí)內(nèi)取消,支付租賃費(fèi)用10%的賠償金;在預(yù)定入住時(shí)間之后取消,則支付租賃費(fèi)用50%的賠償金。 5自動(dòng)取消預(yù)定。如果遇到惡劣天氣(如暴雨、山洪等),系統(tǒng)會(huì)自動(dòng)取消所有的預(yù)定,發(fā)布取消預(yù)定消息,全額退款。 6信息查詢。售票處工作人員查詢小木屋和營地的預(yù)定情況和使用情況,以判斷是否能夠批準(zhǔn)游客的預(yù)定申請(qǐng)。 現(xiàn)采用面向?qū)ο蠓椒ㄩ_發(fā)上述系統(tǒng),得到如表1-6

9、所示的用例列表和表1-7所示的類列表。對(duì)應(yīng)的用例圖和類圖分別如圖1-12和圖1-13所示。 表1-6 用例列表用例名說 明用例名說 明ManageInquiries管理預(yù)定申請(qǐng)ManageCashPayment現(xiàn)金支付MakeReservation預(yù)定ManageCrCardPayment信用卡支付ManagePayment支付管理GetDiscount計(jì)算付款折扣CancelReservation游客取消預(yù)定AutoCancelReservation系統(tǒng)自動(dòng)取消預(yù)定CheckAvailability信息查詢CalculateRefund計(jì)算取消預(yù)定的賠償金PublishMessage發(fā)布取消

10、預(yù)定消息 表1-7類列表 類名說明類名說明NationalPark國家公園Customer游客Reservation預(yù)定申請(qǐng)ReservationItem預(yù)定申請(qǐng)內(nèi)容TicketingOfficer售票處CampSite營地Bungalow小木屋Payment付款Discount付款折扣CashPayment現(xiàn)金支付CreditCardPayment信用卡支付Rate租賃費(fèi)用 8、問題1 根據(jù)說明中的描述與表1-6,給出圖1-12中UC1UC6處所對(duì)應(yīng)的用例名稱。9、問題2 根據(jù)說明中的描述與表1-7,給出圖1-13中C1C7處所對(duì)應(yīng)的類名。10、問題3 對(duì)于某些需求量非常大的小木屋或營地,說

11、明中功能4的賠償金計(jì)算規(guī)則,不足以彌補(bǔ)取消預(yù)定所帶來的損失。如果要根據(jù)預(yù)定的時(shí)段以及所預(yù)定場地的需求量,設(shè)計(jì)不同層次的賠償金計(jì)算規(guī)則,需要對(duì)圖1-13進(jìn)行怎樣的修改?(請(qǐng)用文字說明。)試題4閱讀下列說明和C代碼,回答下列問題。 說明 設(shè)有n個(gè)貨物要裝入若干個(gè)容量為C的集裝箱以便運(yùn)輸,這n個(gè)貨物的體積分別為s1,s2,.,sn,且有s1c(1in)。為節(jié)省運(yùn)輸成本,用盡可能少的集裝箱來裝運(yùn)這n個(gè)貨物。 下面分別采用最先適宜策略和最優(yōu)適宜策略來求解該問題。 最先適宜策略(firstfit)首先將所有的集裝箱初始化為空,對(duì)于所有貨物,按照所給的次序,每次將一個(gè)貨物裝入第一個(gè)能容納它的集裝箱中。 最優(yōu)

12、適宜策略(bestfit)與最先適宜策略類似,不同的是,總是把貨物裝到能容納它且目前剩余容量最小的集裝箱,使得該箱子裝入貨物后閑置空間最小。 C代碼 下面是這兩個(gè)算法的C語言核心代碼。 11變量說明 n:貨物數(shù) C:集裝箱容量 s:數(shù)組,長度為n,其中每個(gè)元素表示貨物的體積,下標(biāo)從0開始 B:數(shù)組,長度為n,bi表示第i+1個(gè)集裝箱當(dāng)前已經(jīng)裝入貨物的體積,下標(biāo)從0開始 i,j:循環(huán)變量 k:所需的集裝箱數(shù) min:當(dāng)前所用的各集裝箱裝入了第i個(gè)貨物后的最小剩余容量 m:當(dāng)前所需要的集裝箱數(shù) temp:臨時(shí)變量 12函數(shù)firstfit int firstfit13 int i, j; k=0;

13、 for(i=0; in; i+) bi=0; for i=0; in; i+) _; while (C-b js i) j+; _; k=k(j+1)? k: (j+1); return k; 14函數(shù)bestfit int bestfit13 int i, j ,min, m, temp; k=0; for (i=0; in; i+) bi=0; for (i=0; in; i+) min=C; m=k+1; for (j=0; jk+1; j+) temp=C-b j-s i; if(temp0 & tempmin) _; m=j; _; k=k(m+1)? k: (m+1); retu

14、rn k; 11、問題1 根據(jù)說明和C代碼,填充C代碼中的空缺處。12、問題2 根據(jù)說明和C代碼,該問題在最先適宜和最優(yōu)適宜策略下分別采用了_和_算法設(shè)計(jì)策略,時(shí)間復(fù)雜度分別為_和_(用O符號(hào)表示)。13、問題3 考慮實(shí)例n=10,C=10,各個(gè)貨物的體積為4,2,7,3,5,4,2,3,6,2。該實(shí)例在最先適宜和最優(yōu)適宜策略下所需的集裝箱數(shù)分別為_和_??紤]一般的情況,這兩種求解策略能否確保得到最優(yōu)解?_(能或否)。試題514、閱讀下列說明和C+代碼,回答下列問題。 說明 現(xiàn)欲開發(fā)一個(gè)軟件系統(tǒng),要求能夠同時(shí)支持多種不同的數(shù)據(jù)庫,為此采用抽象工廠模式設(shè)計(jì)該系統(tǒng)。以SQL Server和Acce

15、ss兩種數(shù)據(jù)庫以及系統(tǒng)中的數(shù)據(jù)庫表Department為例,其類圖如圖1-14所示。 C+代碼 #includeiostream using namespace std; class Department/*代碼省略*/; class IDepartment public: _=0; _=0; ; class SqlserverDepartment: _ public: void Insert(Department* department) coutInsert a record into Department in SQL Server!n; /其余代碼省略 Department GetDe

16、partment(int id) ; class AccessDepartment: _ public: void Insert(Department* department) coutInsert a record into Department in ACCESS!n; /其余代碼省略 Department GetDepartment(int id) /*代碼省略*/ ; _ public: _=0; ; class SqlServerFactory: public IFactory public: IDepartment* CreateDepartment() return new Sq

17、lserverDepartment(); ; class AccessFactory:public IFactory public: IDepartment* CreateDepartment() return new AccessDepartment() ; /其余代碼省略 ;試題615、閱讀下列說明和Java代碼,回答下列問題。 說明 現(xiàn)欲開發(fā)一個(gè)軟件系統(tǒng),要求能夠同時(shí)支持多種不同的數(shù)據(jù)庫,為此采用抽象工廠模式設(shè)計(jì)該系統(tǒng)。以SOLServer和Access兩種數(shù)據(jù)庫以及系統(tǒng)中的數(shù)據(jù)庫表Department為例,其類圖如圖1-15所示。 Java代碼 import java.util.*;

18、class Department /*代碼省略* / interface IDepartment _; _; class SqlserverDepartment _ public void Insert(Department department) System.out.println(Insert a record into Department in SQL Server!); /其余代碼省略 public Department GetDepartment(int id) class AccessDepartment _ public Void Insert(Department depa

19、rtment) System.out.println(Insert a record into Department in ACCESS!); /其余代碼省略 public Department GetDepartment(int id) _ _; class SqlServerFactory implements IFactory public Department CreateDepartment() retum new SqlserverDepartment(); /其余代碼省略 class AccessFactory implements IFactory public Departm

20、ent CreateDepartment() return new AccessDepartment(); /其余代碼省略 答案:試題11、E1:商家 E2:支付系統(tǒng) E3:物流系統(tǒng) E4:Crystal Reports或第三方服務(wù)由題干中的關(guān)鍵信息“3提交訂單。若商家改變價(jià)格,則刷新后可看到更改后的價(jià)格”、“4改變價(jià)格。商家查看訂購自家商品的訂單信息,根據(jù)特殊優(yōu)惠條件修改價(jià)格,更新訂單表中的商品價(jià)格”,結(jié)合如圖1-10所示的0層數(shù)據(jù)流圖中與外部實(shí)體E1相關(guān)的輸入數(shù)據(jù)流“商家訂單信息”、輸出數(shù)據(jù)流“訂單新價(jià)格”和處理“改變價(jià)格”,可知圖1-9中實(shí)體E1的名稱是“商家”。 根據(jù)題干中的關(guān)鍵信息“

21、6物流跟蹤。商家發(fā)貨后,需按訂單標(biāo)識(shí)添加物流標(biāo)識(shí)(物流公司、運(yùn)單號(hào));然后可根據(jù)顧客或商家的標(biāo)識(shí)以及訂單標(biāo)識(shí),查詢訂單表中的物流標(biāo)識(shí),”,結(jié)合圖1-10中與外部實(shí)體E1相關(guān)的輸入數(shù)據(jù)流“商家訂單物流信息”、輸出數(shù)據(jù)流“商家訂單物流標(biāo)識(shí)”和“商家訂單物流查詢請(qǐng)求”,以及處理“物流跟蹤”,也可知實(shí)體E1的名稱是“商家”。 由題干中“5付款。顧客點(diǎn)擊付款后,將轉(zhuǎn)賬請(qǐng)求(驗(yàn)證碼、價(jià)格等)提交給支付系統(tǒng)(如信用卡系統(tǒng))進(jìn)行轉(zhuǎn)賬;然后根據(jù)轉(zhuǎn)賬結(jié)果返回支付狀態(tài)”等關(guān)鍵信息,結(jié)合圖1-10中與外部實(shí)體E2相關(guān)的輸入數(shù)據(jù)流“轉(zhuǎn)賬請(qǐng)求”、輸出數(shù)據(jù)流“轉(zhuǎn)賬結(jié)果”和處理“付款”,可知圖1-9中實(shí)體E2的名稱是“支付系

22、統(tǒng)”。 根據(jù)題干中“6物流跟蹤。商家發(fā)貨后,需按訂單標(biāo)識(shí)添加物流標(biāo)識(shí)(物流公司、運(yùn)單號(hào));并從相應(yīng)物流系統(tǒng)查詢物流信息”等關(guān)鍵信息,結(jié)合圖1-10中與外部實(shí)體E3相關(guān)的輸入數(shù)據(jù)流“運(yùn)單號(hào)”、輸出數(shù)據(jù)流“物流信息”和處理“物流跟蹤”,可知圖1-9中實(shí)體E3的名稱是“物流系統(tǒng)”。 由題干中的關(guān)鍵信息“7生成報(bào)表。根據(jù)管理員和商家設(shè)置的報(bào)表選項(xiàng),從訂單表、商品表以及商品分類表中讀取數(shù)據(jù),調(diào)用第三方服務(wù)Crystal Report生成相關(guān)報(bào)表”等關(guān)鍵信息,結(jié)合圖1-10中與外部實(shí)體E4相關(guān)的輸入數(shù)據(jù)流“報(bào)表數(shù)據(jù)”、輸出數(shù)據(jù)流“報(bào)表”和處理“生成報(bào)表”,可知圖1-9中實(shí)體E4的名稱是“第三方服務(wù)(或Cr

23、ystal Reports)”。2、D1:訂單表 D2:商品表 D3:商品分類表 D4:購物車表基于問題1的分析結(jié)果,根據(jù)題干中“3提交訂單。顧客點(diǎn)擊提交訂單請(qǐng)求,后臺(tái)計(jì)算購物車表中商品的總價(jià)(包括運(yùn)費(fèi))加入訂單表”、“4改變價(jià)格。更新訂單表中的商品價(jià)格”、“6物流跟蹤。查詢訂單表中的物流標(biāo)識(shí),”等關(guān)鍵信息,結(jié)合圖1-10中與數(shù)據(jù)存儲(chǔ)D1相關(guān)的處理“提交訂單”、“改變價(jià)格”、“物流跟蹤”,可知數(shù)據(jù)存儲(chǔ)D1的名稱是“訂單表”。 由題干中的關(guān)鍵信息“1加入購物車。根據(jù)商品標(biāo)識(shí)從商品表中讀取商品信息”、“7生成報(bào)表。從訂單表、商品表以及商品分類表中讀取數(shù)據(jù),”、“8維護(hù)信息。管理員維護(hù)(增、刪、改、

24、查)顧客表、商品分類表和商品表中的信息”等,結(jié)合圖1-10中與數(shù)據(jù)存儲(chǔ)D2相關(guān)的處理“加入購物車”、“生成報(bào)表”、“維護(hù)信息”,可知數(shù)據(jù)存儲(chǔ)D2的名稱是“商品表”。 根據(jù)題干中的關(guān)鍵信息“7生成報(bào)表。從訂單表、商品表以及商品分類表中讀取數(shù)據(jù),”、“8維護(hù)信息。管理員維護(hù)(增、刪、改、查)顧客表、商品分類表和商品表中的信息”等,結(jié)合圖1-10中與數(shù)據(jù)存儲(chǔ)D3相關(guān)的處理“生成報(bào)表”、“維護(hù)信息”,可知數(shù)據(jù)存儲(chǔ)D3的名稱是“商品分類表”。 由題干中“1加入購物車。并更新購物車表”、“2瀏覽購物車。顯示出購物車表中的商品信息”、“3提交訂單。將購物車表,中的商品狀態(tài)改為待付款,”等關(guān)鍵信息,結(jié)合圖1-

25、10中與數(shù)據(jù)存儲(chǔ)D4相關(guān)的處理“加入購物車”、“瀏覽購物車”、“提交訂單”,可知數(shù)據(jù)存儲(chǔ)D4的名稱是“購物車表”。3、起點(diǎn) 終點(diǎn) D4或購物車表 提交訂單 顧客表 付款 付款 D4或購物車表 D1或訂單表 生成報(bào)表基于問題1和問題2的分析結(jié)果,由題干中“3提交訂單。顧客點(diǎn)擊提交訂單請(qǐng)求,后臺(tái)計(jì)算購物車表中商品的總價(jià)(包括運(yùn)費(fèi))加入訂單表”等關(guān)鍵信息,結(jié)合圖1-10中外部實(shí)體“顧客”、處理“提交訂單”和數(shù)據(jù)存儲(chǔ)“D1(或訂單表)”之間的邏輯關(guān)系,可知圖1-lO中缺失了一條起點(diǎn)為“D4(或購物車表)”、終點(diǎn)為“提交訂單”的數(shù)據(jù)流“商品價(jià)格”。 根據(jù)題干中“5付款。顧客點(diǎn)擊付款后,系統(tǒng)先根據(jù)顧客表中

26、關(guān)聯(lián)的支付賬戶”等關(guān)鍵信息,結(jié)合圖1-10中外部實(shí)體“顧客”、處理“付款”和數(shù)據(jù)存儲(chǔ)“顧客表”之間的邏輯關(guān)系,可知圖1-10中缺失了一條起點(diǎn)為“顧客表”、終點(diǎn)為“付款”的數(shù)據(jù)流“支付賬戶”。 由題干中的關(guān)鍵信息“5付款。顧客點(diǎn)擊付款后,然后根據(jù)轉(zhuǎn)賬結(jié)果返回支付狀態(tài)并更改購物車表中商品的狀態(tài)”等,結(jié)合圖1-10中外部實(shí)體“顧客”、處理“付款”和數(shù)據(jù)存儲(chǔ)“D4(或購物車表)”之間的邏輯關(guān)系,可知圖1-10中缺失了一條起點(diǎn)為“付款”、終點(diǎn)為“D4(或購物車表)”的數(shù)據(jù)流“商品狀態(tài)”。 根據(jù)題干中的關(guān)鍵信息“7生成報(bào)表。根據(jù)管理員和商家設(shè)置的報(bào)表選項(xiàng),從訂單表、商品表以及商品分類表中讀取數(shù)據(jù)”等,結(jié)合

27、圖1-10中外部實(shí)體“管理員”和“E1(或商家)”、處理“生成報(bào)表”、數(shù)據(jù)存儲(chǔ)“D1(或訂單表)”、“D2(或商品表)”和“D3(或商品分類表)”之間的邏輯關(guān)系,可知圖1-10中缺失了一條起點(diǎn)為“D1(或訂單表)”、終點(diǎn)為“生成報(bào)表”的數(shù)據(jù)流“訂單信息”。4、轉(zhuǎn)賬請(qǐng)求=驗(yàn)證碼+價(jià)格+賬號(hào)信息 顧客訂單物流查詢請(qǐng)求=顧客標(biāo)識(shí)+訂單標(biāo)識(shí) 商家訂單物流查詢請(qǐng)求=商家標(biāo)識(shí)+(訂單標(biāo)識(shí))基于問題1問題3的分析結(jié)果,根據(jù)題干中“5付款。顧客點(diǎn)擊付款后,系統(tǒng)先根據(jù)顧客表中關(guān)聯(lián)的支付賬戶,將轉(zhuǎn)賬請(qǐng)求(驗(yàn)證碼、價(jià)格等)提交給支付系統(tǒng)”等關(guān)鍵信息,可知數(shù)據(jù)流“轉(zhuǎn)賬請(qǐng)求”至少包含的數(shù)據(jù)項(xiàng)有:賬號(hào)信息、驗(yàn)證碼、價(jià)格。

28、 由題干中關(guān)鍵信息“6物流跟蹤。商家發(fā)貨后,需按訂單標(biāo)識(shí)添加物流標(biāo)識(shí)(物流公司、運(yùn)單號(hào));然后可根據(jù)顧客或商家的標(biāo)識(shí)以及訂單標(biāo)識(shí),查詢訂單表中的物流標(biāo)識(shí),并從相應(yīng)物流系統(tǒng)查詢物流信息”等,可知數(shù)據(jù)流“顧客訂單物流查詢請(qǐng)求”至少包含的數(shù)據(jù)項(xiàng)有:顧客標(biāo)識(shí)、訂單標(biāo)識(shí);數(shù)據(jù)流“商家訂單物流查詢請(qǐng)求”至少包含的數(shù)據(jù)項(xiàng)有:商家標(biāo)識(shí)、訂單標(biāo)識(shí)。試題25、如圖1-16所示 這是一道要求讀者掌握數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)的綜合分析題,本題的解答思路如下。 由題干中“每個(gè)部門有多名員工處理部門的日常事務(wù),每名員工只能在一個(gè)部門工作”等關(guān)鍵信息可知,實(shí)體“部門”與實(shí)體“員工”之間存在聯(lián)系“隸屬(或所屬)”,其聯(lián)系的類型為

29、一對(duì)多(1:n)。 同理,結(jié)合題干給出的“每個(gè)部門有一名主管負(fù)責(zé)管理本部門的事務(wù)和人員”等關(guān)鍵信息,結(jié)合常識(shí)可知,一名主管只隸屬于某個(gè)部門,因此實(shí)體“部門”與實(shí)體“主管”之間存在聯(lián)系“管理”,其聯(lián)系的類型為一對(duì)一(1:1)。 根據(jù)題干中“業(yè)務(wù)員負(fù)責(zé)受理會(huì)議申請(qǐng)”等關(guān)鍵信息,結(jié)合常識(shí)可知,一名業(yè)務(wù)員可以受理多個(gè)會(huì)議申請(qǐng),而每個(gè)會(huì)議申請(qǐng)對(duì)應(yīng)唯一的一名業(yè)務(wù)員受理,實(shí)體“業(yè)務(wù)員”與實(shí)體“會(huì)議申請(qǐng)”之間存在聯(lián)系“受理”,其聯(lián)系的類型為一對(duì)多(1:n)。 由題干中“一個(gè)策劃任務(wù)可由多名策劃員參與執(zhí)行,且一名策劃員可以參與多項(xiàng)策劃任務(wù)”等關(guān)鍵信息可知,實(shí)體“策劃任務(wù)”與實(shí)體“策劃員”之間存在聯(lián)系“執(zhí)行”,其

30、聯(lián)系的類型為多對(duì)多(m:n)。 根據(jù)題干中的關(guān)鍵信息“一個(gè)客戶可以提交多個(gè)會(huì)議申請(qǐng),但一個(gè)會(huì)議申請(qǐng)對(duì)應(yīng)唯一的一個(gè)客戶號(hào)”等,可知實(shí)體“客戶”與實(shí)體“會(huì)議申請(qǐng)”之間存在聯(lián)系“提交”,其聯(lián)系的類型為一對(duì)多(1:n)。 整理以上分析結(jié)果,結(jié)合圖1-11可得出完整的會(huì)議預(yù)定系統(tǒng)實(shí)體聯(lián)系圖,如圖1-16所示。6、(a)部門號(hào),職位 (b)申請(qǐng)?zhí)枺头款愋?,客戶?hào) (c)申請(qǐng)?zhí)枺瑔T工號(hào) (d)申請(qǐng)?zhí)?,員工號(hào) 關(guān)系模式: 會(huì)議申請(qǐng) (申請(qǐng)?zhí)枺头款愋?,客戶?hào)#,開會(huì)日期,會(huì)議地點(diǎn),持續(xù)天數(shù),會(huì)議人數(shù),預(yù)算費(fèi)用,會(huì)議類型,酒店要求,會(huì)議室要求,客房數(shù),聯(lián)系人,聯(lián)系方式,受理標(biāo)志,員工號(hào)#) 策劃任務(wù) (申請(qǐng)?zhí)?/p>

31、#,員工號(hào)#,策劃內(nèi)容,參與人數(shù),要求完成時(shí)間) 執(zhí)行策劃 (申請(qǐng)?zhí)?,員工號(hào)#,實(shí)際完成時(shí)間)這是一道要求讀者掌握數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)的綜合理解題,本題的解答思路如下。 結(jié)合問題1的分析結(jié)果,由題干已給出的關(guān)系模式:部門(部門號(hào),部門名稱,主管,電話,郵箱號(hào)),結(jié)合常識(shí)可知,屬性“部門號(hào)”能夠唯一標(biāo)識(shí)“部門”關(guān)系模式中的每一條記錄,因此屬性“部門號(hào)”是該關(guān)系模式的主鍵。 結(jié)合題干給出的“員工信息包括員工號(hào)、姓名、部門號(hào)、職位、聯(lián)系方式和工資”等關(guān)鍵信息,基于圖1-16所示的實(shí)體聯(lián)系圖,根據(jù)E-R模型到關(guān)系模式的轉(zhuǎn)換規(guī)則,可知“員工”關(guān)系模式需要加入1端實(shí)體“部門”的主鍵“部門號(hào)”(作為外鍵)

32、。因此“員工”關(guān)系模式需要補(bǔ)充“部門號(hào)”、“職位”兩個(gè)屬性。結(jié)合常識(shí)可知,屬性“員工號(hào)”能夠唯一標(biāo)識(shí)“員工”關(guān)系模式中的每一條記錄,因此“員工號(hào)”是該關(guān)系模式的主鍵。 根據(jù)題干給出的“客戶信息包括客戶號(hào)、單位名稱、通信地址、所屬省份、聯(lián)系人、聯(lián)系電話、銀行賬號(hào)。其中,一個(gè)客戶號(hào)唯一標(biāo)識(shí)一個(gè)客戶”等關(guān)鍵信息,基于圖1-16所示的實(shí)體聯(lián)系圖,根據(jù)E-R模型到關(guān)系模式的轉(zhuǎn)換規(guī)則,可知屬性“客戶號(hào)”是“客戶”關(guān)系模式的主鍵。 由題干給出的“會(huì)議申請(qǐng)信息包括申請(qǐng)?zhí)?、開會(huì)日期、會(huì)議地點(diǎn)、持續(xù)天數(shù)、會(huì)議人數(shù)、預(yù)算費(fèi)用、會(huì)議類型、酒店要求、會(huì)議室要求、客房類型、客房數(shù)、聯(lián)系人、聯(lián)系方式、受理標(biāo)志和業(yè)務(wù)員的員工

33、號(hào)等”等關(guān)鍵信息,基于圖1-16所示的實(shí)體聯(lián)系圖,根據(jù)E-R模型到關(guān)系模式的轉(zhuǎn)換規(guī)則,可知“會(huì)議申請(qǐng)”關(guān)系模式需要補(bǔ)充“申請(qǐng)?zhí)枴?、“客房類型”兩個(gè)屬性,以及補(bǔ)充加入1端實(shí)體“客戶”的主鍵“客戶號(hào)”(作為外鍵)。由題干已給出的“申請(qǐng)?zhí)柡涂头款愋蜎Q定客房數(shù)”等關(guān)鍵信息,以及常識(shí)可知,屬性“申請(qǐng)?zhí)枴迸c“客房類型”的組合才能唯一標(biāo)識(shí)每一條“會(huì)議申請(qǐng)”的數(shù)據(jù)記錄,因此它們是該關(guān)系模式的主鍵;屬性“客戶號(hào)”、“員工號(hào)”是“會(huì)議申請(qǐng)”關(guān)系模式的外鍵。 根據(jù)題干給出的“策劃部主管為已受理的會(huì)議申請(qǐng)制定策劃任務(wù),包括策劃內(nèi)容、參與人數(shù)、要求完成時(shí)間等”等關(guān)鍵信息,基于圖1-16所示的實(shí)體聯(lián)系圖,根據(jù)E-R模型到

34、關(guān)系模式的轉(zhuǎn)換規(guī)則,可知“策劃任務(wù)”關(guān)系模式需要補(bǔ)充加入1端實(shí)體“主管”的主鍵“員工號(hào)”(作為外鍵),以及補(bǔ)充加入多端實(shí)體“會(huì)議申請(qǐng)”的主鍵“申請(qǐng)?zhí)枴?作為外鍵)。結(jié)合常識(shí)可知,屬性“申請(qǐng)?zhí)枴奔仁恰安邉澣蝿?wù)”關(guān)系模式的主鍵,又是它的外鍵;屬性“員工號(hào)”是“策劃任務(wù)”關(guān)系模式的外鍵。 基于圖1-16所示的實(shí)體聯(lián)系圖,根據(jù)E-R模型到關(guān)系模式的轉(zhuǎn)換規(guī)則,若將聯(lián)系“執(zhí)行”獨(dú)立轉(zhuǎn)換成一個(gè)關(guān)系模式“執(zhí)行策劃”,則其關(guān)系模式中需要補(bǔ)充加入n端實(shí)體“策劃任務(wù)”的主鍵“申請(qǐng)?zhí)枴?同時(shí)作為主鍵和外鍵),以及加入m端實(shí)體“策劃員”的主鍵“員工號(hào)”(同時(shí)作為主鍵和外鍵)。屬性“申請(qǐng)?zhí)枴薄ⅰ皢T工號(hào)”的組合是“執(zhí)行策劃

35、”關(guān)系模式的主鍵,同時(shí)又是該關(guān)系模式的外鍵。7、會(huì)議申請(qǐng)存在數(shù)據(jù)冗余及數(shù)據(jù)修改的不一致性問題,應(yīng)該將關(guān)系模式分解為如下兩個(gè)模式: 會(huì)議申請(qǐng)1 (申請(qǐng)?zhí)枺蛻籼?hào),開會(huì)日期,會(huì)議地點(diǎn),持續(xù)天數(shù),會(huì)議人數(shù),預(yù)算費(fèi)用,會(huì)議類型,酒店要求,會(huì)議室要求,聯(lián)系人,聯(lián)系方式,受理標(biāo)志,員工號(hào)) 會(huì)議申請(qǐng)2 (申請(qǐng)?zhí)枺头款愋?,客房?shù))結(jié)合問題1和問題2的分析結(jié)果,由題干中“申請(qǐng)?zhí)柡涂头款愋蜎Q定客房數(shù)”等關(guān)鍵信息,以及關(guān)系模式設(shè)計(jì)中所得知的“會(huì)議申請(qǐng)(申請(qǐng)?zhí)?,客房類型,客戶?hào)#,開會(huì)日期,會(huì)議地點(diǎn),持續(xù)天數(shù),會(huì)議人數(shù),預(yù)算費(fèi)用,會(huì)議類型,酒店要求,會(huì)議室要求,客房數(shù),聯(lián)系人,聯(lián)系方式,受理標(biāo)志,員工號(hào)#)”可知

36、,該關(guān)系模式存在非主屬性對(duì)主鍵的部分函數(shù)依賴,從而將會(huì)造成數(shù)據(jù)冗余及數(shù)據(jù)修改的不一致性等問題。 為了解決這些問題,可以將“會(huì)議申請(qǐng)”關(guān)系模式分解為如下兩個(gè)模式。 會(huì)議申請(qǐng)1 (申請(qǐng)?zhí)?,客戶?hào)#,開會(huì)日期,會(huì)議地點(diǎn),持續(xù)天數(shù),會(huì)議人數(shù),預(yù)算費(fèi)用,會(huì)議類型,酒店要求,會(huì)議室要求,聯(lián)系人,聯(lián)系方式,受理標(biāo)志,員工號(hào)#)。 會(huì)議申請(qǐng)2 (申請(qǐng)?zhí)?,客房類型,客房?shù))。試題38、UC1:CheckAvailability UC2:MakeReservation UC3:GetDiscount UC4:ManageCashPayment UC5:ManageCrCardPayment UC6:Calcula

37、teRefund依題意,在如圖1-12所示的“小木屋和營地的預(yù)定及管理系統(tǒng)”用例圖中共有1個(gè)參與者TicketingOfficer(售票處)、11個(gè)用例。圖1-12中已給出了表1-6中的5個(gè)用例“ManageInquiries(管理預(yù)定申請(qǐng))”、“ManagePayment(支付管理)”、“CancelReservation(游客取消預(yù)定)”、“AutoCancelReservation(系統(tǒng)自動(dòng)取消預(yù)定)”、“PublishMessage(發(fā)布取消預(yù)定消息)”。而圖1-12中用例UC1UC6與表1-6中剩余的6個(gè)用例相關(guān)。 基于題干給出的說明信息“游客若想租用小木屋或營地,必須前往中心售票處

38、進(jìn)行預(yù)定。所有的預(yù)定操作全部由售票處的工作人員手工完成?,F(xiàn)欲開發(fā)一信息系統(tǒng),實(shí)現(xiàn)小木屋和營地的預(yù)定及管理功能,以取代手工操作?!?、“2預(yù)定。預(yù)定操作包含登記游客預(yù)定信息、計(jì)算租賃費(fèi)用、付費(fèi)等步驟”等,結(jié)合表1-6可知,TicketingOfficer(售票處)直接參與的用例UC2的名稱為“MakeReservation(預(yù)定)”。 根據(jù)題干給出的“6信息查詢。售票處工作人員查詢小木屋和營地的預(yù)定情況和使用情況,以判斷是否能夠批準(zhǔn)游客的預(yù)定申請(qǐng)”等關(guān)鍵信息,結(jié)合圖1-12中用例UC1與ManageInquiries(管理預(yù)定申請(qǐng))、UC2 MakeReservation(預(yù)定)之間都存在的inc

39、lude包含關(guān)系,可知用例UC1的名稱為“CheckAvailability(信息查詢)”。 基于題干給出的“3支付管理。游客付費(fèi)時(shí)可以選擇現(xiàn)金和信用卡付款兩種方式。使用信用卡支付可以享受3%的折扣,現(xiàn)金支付沒有折扣?!钡汝P(guān)鍵信息,結(jié)合圖1-12中用例UC4、UC5與ManagePayment(支付管理)之間都存在的泛化(generalization)關(guān)系,即圖1-12中“”表示其相聯(lián)的兩個(gè)用例之間存在“一般一特殊”的泛化關(guān)系,可知用例UC4、UC5的名稱分別為“ManageCashPayment(現(xiàn)金支付)”、“ManageCrCardPayment(信用卡支付)”;結(jié)合用例UC3與Mana

40、gePayment(支付管理)之間都存在的include包含關(guān)系,可知用例UC3的名稱為“GetDiscount(計(jì)算付款折扣)”。 由題干給出的“4游客取消預(yù)定。預(yù)定成功之后,游客可以在任何時(shí)間取消預(yù)定,但需支付賠償金,賠償金的計(jì)算規(guī)則是”、“5自動(dòng)取消預(yù)定。如果遇到惡劣天氣(如暴雨、山洪等),系統(tǒng)會(huì)自動(dòng)取消所有的預(yù)定,發(fā)布取消預(yù)定消息,全額退款?!钡汝P(guān)鍵信息,結(jié)合圖1-12中用例UC6與CancelReservation(游客取消預(yù)定)、AutoCancelReservation(系統(tǒng)自動(dòng)取消預(yù)定)之間都存在的incktde包含關(guān)系,可知用例UC6的名稱為“CalculateRefund(

41、計(jì)算取消預(yù)定的賠償金)”。9、C1:NationalPark C2:Rate C3:TicketingOfficer C4:Payment C5:Discount C6:CashPayment C7:CreditCardPayment依題意,在如圖1-13所示的“小木屋和營地的預(yù)定及管理系統(tǒng)”類圖中共有12個(gè)類。圖1-13中已給出了表1-7中的5個(gè)類“ReservationItem(預(yù)定申請(qǐng)內(nèi)容)”、“CampSite(營地)”、“Bungalow(小木屋)”、“Reservation(預(yù)定申請(qǐng))”、“Customer(游客)”。而圖1-13中類C1C7的名稱與表1-7中剩余的7個(gè)類名相關(guān)。

42、在UML類圖中,“”表示其相聯(lián)的兩個(gè)類之間存在聚合關(guān)系。它代表兩個(gè)類之間的整體/局部關(guān)系,其顯著的特點(diǎn)是不能包含循環(huán)的聯(lián)系(即局部中不能包含整體)。在圖1-13中,類C2與類ReservationItem(預(yù)定申請(qǐng)內(nèi)容)之間存在著一個(gè)聚合關(guān)系,C2是構(gòu)成ReservationItem的部分對(duì)象;并且類ReservationItem、類C2兩端所對(duì)應(yīng)的多重度分別為1、1.*;基于題干給出的關(guān)鍵信息“2預(yù)定。預(yù)定操作包含登記游客預(yù)定信息、計(jì)算租賃費(fèi)用、付費(fèi)等步驟”等,結(jié)合常識(shí)可知,一份預(yù)定申請(qǐng)內(nèi)容至少應(yīng)包含一項(xiàng)租賃費(fèi)用,也可以包含多項(xiàng)租賃費(fèi)用;而一項(xiàng)特定的租賃費(fèi)用只能出現(xiàn)在一份預(yù)定申請(qǐng)內(nèi)容中;因此

43、C2的類名是Rate(租賃費(fèi)用)。 在UML類圖中,“”表示其相聯(lián)的兩個(gè)類之間存在組合關(guān)系。它是聚合關(guān)系的一種特例。聚合是概念性的,只是區(qū)分整體與部分;組合具有很強(qiáng)的歸屬關(guān)系,而且整體與部分的對(duì)象生存周期是一致的。當(dāng)整體對(duì)象不存在時(shí),部分對(duì)象也不存在。在圖1-13中,類ReservationItem(預(yù)定申請(qǐng)內(nèi)容)與類C1之間存在組合關(guān)系;并且類C1、類ReservationItem兩端所對(duì)應(yīng)的多重度分別為1、0.*;基于題干給出的關(guān)鍵信息“某城市的各國家公園周邊建造了許多供游客租用的小木屋和營地”等,結(jié)合常識(shí)可知,一家國家公園可以出現(xiàn)在一份或多份預(yù)定申請(qǐng)內(nèi)容中,也可能沒有任何顧客預(yù)定它;而一

44、份特定的預(yù)定申請(qǐng)內(nèi)容只能出現(xiàn)在一家國家公園中;因此C1的類名是NationalPark(國家公園)。 “”表示其相聯(lián)的兩個(gè)類之間存在繼承關(guān)系(即“一般/特殊”關(guān)系)。子類繼承父類的結(jié)構(gòu)和行為,子類還可以增加或者覆蓋父類的行為。子類可以出現(xiàn)在父類出現(xiàn)的任何位置。類C6、C7與類C4之間存在繼承關(guān)系。C4表示一般類,C6和C7是C1的兩個(gè)具體類。在題干說明中“游客付費(fèi)時(shí)可以選擇現(xiàn)金和信用卡付款兩種方式?!背霈F(xiàn)的所有名詞詞匯中,具有明顯的“一般/特殊”關(guān)系的就是“付款”、“現(xiàn)金支付”和“信用卡支付”?!艾F(xiàn)金支付”和“信用卡支付”是具體的付款形式,當(dāng)游客在該管理系統(tǒng)支付預(yù)定錢款時(shí),需要選擇二者中的一個(gè)。而且每一次付款都與一個(gè)特定的預(yù)定申請(qǐng)(即類Reservation的一個(gè)實(shí)例)相關(guān),而每一份預(yù)定申請(qǐng)又與一個(gè)特定的游客(即類Customer

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論