圖書(shū)館信息系統(tǒng)分析_第1頁(yè)
圖書(shū)館信息系統(tǒng)分析_第2頁(yè)
圖書(shū)館信息系統(tǒng)分析_第3頁(yè)
圖書(shū)館信息系統(tǒng)分析_第4頁(yè)
圖書(shū)館信息系統(tǒng)分析_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、圖書(shū)館信息系統(tǒng)面向?qū)ο蠓治鰧?shí)例0總體問(wèn)題的陳述:本項(xiàng)目的目的是創(chuàng)建一個(gè)用于對(duì)圖書(shū)館的圖書(shū)進(jìn)行管理的圖書(shū)管理系統(tǒng)。 該項(xiàng)目的用戶:該項(xiàng)忖的用戶是一個(gè)某大學(xué)的圖書(shū)館,它負(fù)責(zé)對(duì)其顧客提供圖書(shū)借閱服務(wù)。 該項(xiàng)目的目標(biāo):總體上來(lái)說(shuō),項(xiàng)日的日標(biāo)是提高圖書(shū)管理的自動(dòng)化水平,為圖書(shū)業(yè)務(wù)過(guò)程 提供更快捷的、更好的和更準(zhǔn)確的服務(wù)。具體來(lái)講,系統(tǒng)的目標(biāo)包括:為借書(shū)者提供快速借書(shū) 的服務(wù);進(jìn)行快速準(zhǔn)確的圖書(shū)和借書(shū)者的信息維護(hù);圖書(shū)管理和查詢的口動(dòng)化。該系統(tǒng)的功能:系統(tǒng)功能是系統(tǒng)應(yīng)該做的爭(zhēng)情,例如系統(tǒng)提供的預(yù)定功能。應(yīng)該識(shí)別出這 些功能并把它們列入到邏輯相關(guān)聯(lián)的功能組中。注意:要驗(yàn)證某一個(gè)描述是否真是一個(gè)系統(tǒng)的功能,如

2、卜的判斷語(yǔ)句應(yīng)該成立:系統(tǒng)應(yīng)該做某一個(gè)描述例如,系統(tǒng)應(yīng)該做圖書(shū)的預(yù)定。然而,系統(tǒng)的屬性是系統(tǒng)的非功能性的特性,這些非功能性特性和系統(tǒng)功能經(jīng)常被混淆。 例如,“易于使用”就是一個(gè)非功能性的特性。它是不符合我們上述的驗(yàn)證語(yǔ)他“系統(tǒng)應(yīng)該做 易于使用”。系統(tǒng)屬性不應(yīng)該是功能規(guī)格說(shuō)明書(shū)屮的一部分,而應(yīng)該是一個(gè)單獨(dú)的系統(tǒng)屬性規(guī)格 說(shuō)明文檔。對(duì)于系統(tǒng)的功能,我們應(yīng)該對(duì)其分類(lèi),以便區(qū)分開(kāi)各類(lèi)功能的優(yōu)先次序和識(shí)別出哪些是理 所當(dāng)然應(yīng)該具備的系統(tǒng)功能。功能的分類(lèi)包括:明顯的:應(yīng)該履行的功能,并且用戶應(yīng)該知道這個(gè)功能是否已經(jīng)被履行。隱藏的:應(yīng)該履行的功能,但功能的履行對(duì)川戶不可見(jiàn)。很多使川底層技術(shù)的服務(wù)確實(shí)符 合這

3、種情況,例如,將數(shù)據(jù)保存到一個(gè)持久化存儲(chǔ)機(jī)構(gòu)中。隱藏的功能經(jīng)常在采集需求的過(guò)程 中被遺漏。修飾性的:可選的,增加這些功能不會(huì)對(duì)成本和其它系統(tǒng)造成重耍影響。為此,我們給出該系統(tǒng)的借書(shū)基本功能如下:f1記錄借出的圖書(shū)借閱事件明顯的f1.2查找書(shū)庫(kù)中是否存在這種圖書(shū)明顯的f1.3從借書(shū)卡中讀取借書(shū)者信息,并校驗(yàn)該信息明顯的f1.4查找書(shū)庫(kù)中這本書(shū)是否還有副本隱藏的f1.5當(dāng)一次借閱完成后,削減該書(shū)的副本存書(shū)數(shù)量隱藏的f1.6管理員要使用系統(tǒng),必須輸入id號(hào)和密碼才行明顯的f1.7查詢顯示借書(shū)信息明顯的f1.8提供一個(gè)持久化存儲(chǔ)機(jī)制隱藏的f1.9捉供過(guò)程間的和系統(tǒng)間的通信機(jī)制隱藏的系統(tǒng)屬性:系統(tǒng)屬性是

4、系統(tǒng)的特性,它們并不是系統(tǒng)的功能,例如:易用、容錯(cuò)、響應(yīng)時(shí) 間、界而形式、平臺(tái)等。系統(tǒng)屬性具有一組可能的屬性細(xì)節(jié),這些屬性細(xì)節(jié)往往是屬性的一些 離散的、表達(dá)模糊的符號(hào)值,例如:響應(yīng)時(shí)間二(生理上能夠接受的時(shí)間段)界面形式二(圖形化的,基于表的,彩色比較平淡的)在我們的案例中,要求借書(shū)查找時(shí)間小于1秒。我們結(jié)合上面的圖書(shū)館管理系統(tǒng)的案例,來(lái)給出圖書(shū)管理系統(tǒng)的問(wèn)題域模型。我們首先看 問(wèn)題域中的圖書(shū)、借閱、書(shū)目和借書(shū)者這四個(gè)類(lèi)。系統(tǒng)將通過(guò)計(jì)算機(jī)來(lái)處理圖書(shū)、副本、借書(shū)者和借閱。借書(shū)者要求借書(shū),給出要借圖書(shū)的 名稱(chēng),出示借書(shū)證。系統(tǒng)查找所借的圖書(shū)是否存在,若存在,同時(shí)還耍查看該圖書(shū)是否還有副 本,如果有

5、,再查詢?cè)摻钑?shū)者提供的借書(shū)證是否合法的注冊(cè)用戶,如來(lái)是,則辦理借閱手續(xù)(登 記借閱信息)。圖書(shū)是存放在圖書(shū)館中的一個(gè)書(shū)的名稱(chēng),副本是一個(gè)圖書(shū)的具體實(shí)例。一個(gè)圖書(shū)nj能有多 個(gè)副本,一個(gè)副本一定會(huì)對(duì)應(yīng)一個(gè)圖書(shū)。為簡(jiǎn)化起見(jiàn),我們假定一次借閱(登記)只能借一本 圖書(shū),同時(shí)會(huì)對(duì)應(yīng)著一個(gè)借書(shū)證信息。一個(gè)借書(shū)者可以進(jìn)行多次借閱。首先找出業(yè)務(wù)對(duì)彖:圖書(shū)、副本、借書(shū)證。系統(tǒng)需要處理的現(xiàn)實(shí)世界小的対象和概念:借閱、預(yù)立。將要發(fā)生或已經(jīng)發(fā)生的事件:已經(jīng)預(yù)定。.n擁有具冇f面給;ii其uml表示的問(wèn)題域的類(lèi)圖。圖書(shū)1參考0. n 預(yù)定0. n 具有借書(shū)證1圖21圖書(shū)管理系統(tǒng)中的問(wèn)題域主要概念類(lèi)圖問(wèn)題域類(lèi)圖屮的關(guān)系說(shuō)

6、明如下:1、一個(gè)圖書(shū)名稱(chēng)可以有多個(gè)同樣圖書(shū)的副本。2、每一個(gè)副本一定要對(duì)應(yīng)一個(gè)圖書(shū)名稱(chēng)。3、一次借閱必須記錄一個(gè)圖書(shū)的副本和一個(gè)借書(shū)證信息。4、一個(gè)副本可以被借閱,也可以不被借閱。5、一個(gè)借書(shū)證可以借多本書(shū),也可以不借一本書(shū)。6、一個(gè)借書(shū)證可以進(jìn)行多個(gè)圖書(shū)名稱(chēng)的預(yù)定,也可以不進(jìn)行預(yù)定。7、一次預(yù)定必須記錄一個(gè)圖書(shū)名稱(chēng)信息和一個(gè)借書(shū)證信息。8、一個(gè)圖巧名稱(chēng)可以被多次預(yù)定,也可以不被預(yù)定。術(shù)語(yǔ)表也是一個(gè)重要的內(nèi)容,下而我們給出圖書(shū)管理系統(tǒng)的術(shù)語(yǔ)表:圖書(shū):圖書(shū)是圖書(shū)館內(nèi)最重要的對(duì)象,它是系統(tǒng)處理主要對(duì)象,圖書(shū)是本書(shū)的信息描述, 它包含了圖書(shū)的名稱(chēng),圖書(shū)的作者以及圖書(shū)的isbn統(tǒng)一出版編號(hào)等內(nèi)容。副本

7、:副本是圖書(shū)的一個(gè)實(shí)例,一個(gè)圖書(shū)信息町以有多個(gè)副本,也可以沒(méi)有副本。副本是 借書(shū)時(shí)的其正對(duì)象。只有一個(gè)圖書(shū)有可以供借閱的副本時(shí),借書(shū)者才可以對(duì)其借閱。借書(shū)證:業(yè)務(wù)小的借書(shū)證記錄了借書(shū)者的信息,從計(jì)算機(jī)應(yīng)用軟件開(kāi)發(fā)的角度來(lái)看,如果 組織對(duì)象,應(yīng)該叫“借書(shū)者信息”更確切。借閱:借閱是圖書(shū)管理中的一個(gè)最重要的業(yè)務(wù)活動(dòng),它需要進(jìn)行一系列的操作才能完成一 個(gè)借閱業(yè)務(wù),包括查找圖書(shū)、查找副本、核對(duì)借書(shū)證(借書(shū)者信息)等步驟。預(yù)定:預(yù)定是圖書(shū)管理中的一個(gè)業(yè)務(wù)活動(dòng),它也需要一系列的操作才能完成。書(shū)籍:書(shū)籍是圖書(shū)的一種形式。雜志:雜志也是圖書(shū)的一種形式。圖書(shū)管理員:圖書(shū)館的工作人員,直接為借書(shū)者提供服務(wù)的人,也

8、是系統(tǒng)的直接使用者。借書(shū)者:到圖書(shū)館借書(shū)的人,屬于圖書(shū)館的用八(服務(wù)對(duì)象)。借書(shū)者信息:一個(gè)記錄了借書(shū)者完整信息的卡片,包括借書(shū)者的姓名、居住地址,所在城 市和電話號(hào)碼等內(nèi)容。有關(guān)的術(shù)語(yǔ)可能還有很多,這里就不再一一列出。對(duì)于圖書(shū)管理系統(tǒng)的業(yè)務(wù)模型,我們可以采用逐步描述的方式來(lái)建立:一、確定業(yè)務(wù)系統(tǒng)的參與者系統(tǒng)的參與者:借書(shū)者業(yè)務(wù)系統(tǒng):圖書(shū)館二、確定業(yè)務(wù)系統(tǒng)的參與者的目標(biāo)對(duì)于借書(shū)者的目標(biāo)我們可以描述如下:1 借書(shū)use csae12 還卩use case33 預(yù)定use case34取消預(yù)定use case4三、繪制圖書(shū)館業(yè)務(wù)系統(tǒng)的use case模型圖四、在以上四個(gè)use case中挑選一個(gè)作

9、為首先實(shí)現(xiàn)的目標(biāo)。選擇:use case 1,借書(shū)作為我們首先分析和實(shí)現(xiàn)的id標(biāo)。五、了解業(yè)務(wù)系統(tǒng)的參與者的期望,導(dǎo)岀系統(tǒng)責(zé)任。寫(xiě)出use case描述的事件流。business use case 描述: 借 |!i借書(shū)者到圖書(shū)館里選擇了喜歡的圖書(shū)z后,要求圖書(shū)館辦理借書(shū)手續(xù),圖書(shū)館登記所借圖 書(shū)的借閱資料,查找所借的圖書(shū)是否存在以及所借圖書(shū)是否還有副本,請(qǐng)借書(shū)者提供借書(shū)證。 借書(shū)者請(qǐng)圖書(shū)館登記借書(shū)證上的借書(shū)者信息,圖書(shū)館登記完成厲,將借書(shū)者所要借的圖書(shū)交給 借書(shū)者,借書(shū)者拿著圖書(shū)離開(kāi)圖書(shū)館。六、繪制業(yè)務(wù)系統(tǒng)的順序圖(sequence diagram)根據(jù)事件流的描述,繪出業(yè)務(wù)系統(tǒng)的順序圖,見(jiàn)

10、圖22。通過(guò)該圖我們可以看到,圖書(shū)館這個(gè)業(yè)務(wù)系統(tǒng)需要向借書(shū)者提供以下的服務(wù):1、受借書(shū)請(qǐng)求。2、提示借書(shū)者提供所耍借的圖書(shū)名稱(chēng)3、接受借書(shū)者提供的圖書(shū)名稱(chēng)4、查找書(shū)名5、查找副本6、提示借帖者給出借巧者信息7、接受借書(shū)者給出的借書(shū)者信息8、核對(duì)借書(shū)者信息并記錄借閱信息9、將圖書(shū)送出,提示借書(shū)者拿走圖書(shū)0:圖書(shū)館入:借書(shū)者1:耍求借書(shū)2:請(qǐng)給出書(shū)名3:給出書(shū)名 >4:查找書(shū)名< 一5:查找副本6:請(qǐng)給出借書(shū)者信息、7:給出借書(shū)者信息8:核對(duì)借書(shū)者信息<19:請(qǐng)把書(shū)拿走>圖2-2業(yè)務(wù)系統(tǒng)級(jí)的順序圖七、打開(kāi)業(yè)務(wù)系統(tǒng),找出業(yè)務(wù)系統(tǒng)內(nèi)部的業(yè)務(wù)對(duì)象模型元素根據(jù)前面的需求說(shuō)明,我們知

11、道圖書(shū)館內(nèi)部情況如f:作為圖書(shū)館工作人員的圖書(shū)管理員,他們負(fù)責(zé)為借書(shū)者服務(wù),并操作各種業(yè)務(wù)實(shí)體來(lái)完成 圖書(shū)館的各種業(yè)務(wù)流程。作為圖書(shū)館內(nèi)部的業(yè)務(wù)實(shí)體有:圖書(shū)借閱登記、圖書(shū)預(yù)定登記、圖書(shū)信息卡、圖書(shū)副本、 借書(shū)人信息等。每登記一次圖書(shū)借閱,需要登記圖書(shū)名稱(chēng)、借書(shū)者名稱(chēng)以及圖書(shū)副本號(hào)等信息。每登記一次圖書(shū)預(yù)定,需要登記圖書(shū)名稱(chēng)和借書(shū)者信息。具體的系統(tǒng)內(nèi)部結(jié)構(gòu)圖見(jiàn)圖23。圖23圖書(shū)館業(yè)務(wù)系統(tǒng)內(nèi)部業(yè)務(wù)對(duì)彖模型元素八、寫(xiě)岀詳細(xì)的事件處理流描述事件流描述:借書(shū)借書(shū)者到圖卩館里選擇了喜歡的圖書(shū)之后,要求圖書(shū)管理員辦理借書(shū)手續(xù),圖書(shū)管理員使 用圖書(shū)管理系統(tǒng)登記所借圖書(shū)的借閱資料。首先,圖書(shū)管理員向圖書(shū)借閱登記

12、輸入圖書(shū)名稱(chēng), 圖書(shū)借閱登記請(qǐng)圖書(shū)信息卡查找所借的圖書(shū)是否存在,如果該圖書(shū)存在,則圖書(shū)信息卡請(qǐng)圖書(shū) 副木檢查該圖書(shū)是否還有副本,如來(lái)有,進(jìn)行下而的工作;圖書(shū)管理員請(qǐng)借書(shū)者提供借書(shū)者信 息。借書(shū)者請(qǐng)圖書(shū)管理員登記借書(shū)者信息,圖書(shū)管理員向圖書(shū)借閱登記輸入借書(shū)若信息,圖書(shū) 借閱弩記請(qǐng)借卩者信息核対該信息是否有效;如果有效,圖巧借閱背記將登記相應(yīng)的借卩者信 息、圖書(shū)信息卡和圖書(shū)副本。處理完成后,提示圖書(shū)管理員登記完畢,圖書(shū)管理員將借書(shū)者所 要借的圖書(shū)交給借書(shū)者,借書(shū)者拿著圖書(shū)離開(kāi)圖書(shū)館。九、繪制業(yè)務(wù)系統(tǒng)詳細(xì)順序圖(sequence diagram)根據(jù)上面的借書(shū)事件流描述,我們可以給出借書(shū)業(yè)務(wù)的順序圖

13、,如圖24。通過(guò)順序圖我們可以看到每一個(gè)對(duì)象的責(zé)任:借書(shū)者:通過(guò)請(qǐng)求借書(shū),啟動(dòng)借書(shū)流程;向圖書(shū)管理員提供圖書(shū)名稱(chēng)和借書(shū)者信息;拿走 圖書(shū)。圖書(shū)管理員:接受借書(shū)請(qǐng)求,啟動(dòng)系統(tǒng)的借書(shū)流程;接受借書(shū)者提供的圖書(shū)名稱(chēng)、借書(shū)者 信息;向圖書(shū)借閱登記對(duì)象提供圖書(shū)名稱(chēng)和借書(shū)人名稱(chēng);提示借書(shū)人拿走圖書(shū)。圖書(shū)借閱登記:接受并執(zhí)行借書(shū)登記;接受并執(zhí)行查找圖書(shū);接受并執(zhí)行核對(duì)借書(shū)人信息。 圖書(shū)信息卡:負(fù)責(zé)查找圖書(shū)。圖書(shū)副本:負(fù)責(zé)查找核實(shí)空閑的副本。借書(shū)人信息:負(fù)責(zé)查找核實(shí)借書(shū)人,確認(rèn)其為合法的借書(shū)人。應(yīng)當(dāng)注意的是,借書(shū)事件流的描述并非只有以上的一種描述方式,它將隨著業(yè)務(wù)處理方式 的不同而改變。比如,我們也可以這樣描

14、述:借書(shū)者到圖書(shū)館里選擇了喜歡的圖書(shū)之后,將選定的圖書(shū)名稱(chēng)和借書(shū)者信息交給圖書(shū)管理 員,要求圖書(shū)管理員辦理借書(shū)手續(xù),圖書(shū)管理員使用圖書(shū)管理系統(tǒng)登記所借圖書(shū)的借閱資料。 首先,圖書(shū)管理員向圖書(shū)借閱登記輸入圖書(shū)名稱(chēng)和借書(shū)者信息,請(qǐng)圖書(shū)借閱登記處理借書(shū)登記 業(yè)務(wù),圖書(shū)借閱登記請(qǐng)圖書(shū)信息卡查找所借的圖書(shū)是否存在,如果該圖書(shū)存在,則請(qǐng)圖書(shū)副木檢查該圖書(shū)是否還有副本,如果有,進(jìn)行下面的工作;圖書(shū)借閱登記請(qǐng)借書(shū)若信息核対該信息 是否有效,如果有效,圖書(shū)借閱登記將登記相應(yīng)的借書(shū)者信息、圖書(shū)信息卡和圖書(shū)副本。處理 完成后,提示圖書(shū)管理員登記完畢,圖書(shū)管理員將借書(shū)者所要借的圖書(shū)交給借書(shū)者,借書(shū)者拿 著圖巧離開(kāi)圖巧

15、館。這樣的操作過(guò)程必然產(chǎn)生不同的順序圖。它明顯地減少了圖書(shū)管理員與借書(shū)者之間的交互 次數(shù)。這種方式所產(chǎn)生的順序圖見(jiàn)圖25。y11:請(qǐng)核對(duì)借書(shū)人信息9:請(qǐng)接受借b人辱凰10:請(qǐng)核借書(shū)人信息> 1:借書(shū)人信息13:請(qǐng)拿走圖書(shū)<12:登記借書(shū)信息i圖2-4業(yè)務(wù)系統(tǒng)打開(kāi)后的順序圖在建立業(yè)務(wù)模型時(shí),術(shù)語(yǔ)表也是一個(gè)重要的內(nèi)容,它是在前面已經(jīng)建立的問(wèn)題域模型的基 礎(chǔ)上進(jìn)行增補(bǔ)而形成的。下面我們給出圖書(shū)管理系統(tǒng)業(yè)務(wù)模型的術(shù)語(yǔ)表:圖書(shū)信息比圖書(shū)信息卡是圖書(shū)館內(nèi)最重要的對(duì)象,它是系統(tǒng)處理主要對(duì)彖,圖書(shū)信息卡 是某一本圖書(shū)的信息描述,它包含了圖書(shū)的名稱(chēng),圖書(shū)的作者以及圖書(shū)的isbn統(tǒng)一出版編號(hào) 等內(nèi)容。

16、圖書(shū)副本:圖書(shū)副本是圖書(shū)的一個(gè)實(shí)例,一個(gè)圖書(shū)信息卡可以有多個(gè)圖書(shū)副本,也可以沒(méi) 有圖書(shū)副本。圖書(shū)副本是借書(shū)時(shí)的真正對(duì)象。只有一個(gè)圖書(shū)信息卡有可以供借閱的圖書(shū)副本時(shí), 借書(shū)者才可以對(duì)其借閱。借書(shū)者信息:業(yè)務(wù)中的借帖者信息記錄了借書(shū)者的重要信息,包括借巧者的姓名、住址、 居住城市、居住省、身份證號(hào)碼、郵政編碼、電話號(hào)碼等內(nèi)容。圖書(shū)借閱登記:圖書(shū) 借閱登記是圖書(shū)管理中的一個(gè)最重要的業(yè)務(wù)活動(dòng),它需要進(jìn)行一系 列的操作才能完成一個(gè)圖書(shū)借閱登記業(yè)務(wù),包括查找圖書(shū)、查找副本、核對(duì)借書(shū)證(借書(shū)者信 息)等步驟。預(yù)定:預(yù)定是圖書(shū)管理中的一個(gè)業(yè)務(wù)活動(dòng),它也需要一系列的操作才能完成。書(shū)籍:書(shū)籍是圖書(shū)的一種形式。雜志

17、:雜志也是圖書(shū)的一種形式。圖書(shū)管理員:圖書(shū)館的丁作人員,直接為借書(shū)者提供服務(wù)的人,也是系統(tǒng)的肖接使用者。 借書(shū)者:到圖書(shū)館借書(shū)的人,屈于圖書(shū)館的用八(服務(wù)對(duì)象)。:借書(shū)人:圖巧管理員:圖書(shū)借閱背記:圖書(shū)信息卡:圖書(shū)副木請(qǐng)求借書(shū)月歸(圖書(shū)名稱(chēng),借卩者信息)2:請(qǐng)求借書(shū)登記(圖書(shū)名稱(chēng),|借書(shū)者信息3:請(qǐng)查找圖書(shū)(圖書(shū)名稱(chēng))>4:請(qǐng)查找圖書(shū)副本l)>5:請(qǐng)核對(duì)借書(shū)齊信息(借書(shū)者gb)6:記求借閱傅息(圖書(shū)信息卡,圖書(shū)副本,借書(shū)者信息)iii圖2-5另一種借書(shū)業(yè)務(wù)處理事件流產(chǎn)生的順序圖十、形成業(yè)務(wù)模型的對(duì)象模型在前面的第七步,我們找出了一些比較巫要的對(duì)象模型元索,結(jié)合前面的問(wèn)題域模型的類(lèi)

18、圖進(jìn)行修改和補(bǔ)充,我們可以得到業(yè)務(wù)系統(tǒng)的對(duì)象模型。見(jiàn)圖26。圖書(shū)副木有副本圖書(shū)信息卡參考巧籍圖書(shū)管理員0.1擁有0. .n參考0. n 圖書(shū)預(yù)定昏記圖2-6圖書(shū)館業(yè)務(wù)系統(tǒng)對(duì)象模型業(yè)務(wù)系統(tǒng)對(duì)象模型類(lèi)圖中的關(guān)系說(shuō)明如下:1、i個(gè)圖書(shū)信息卡可以有多個(gè)同名圖書(shū)副本。2、每一個(gè)圖書(shū)副本一定要対應(yīng)一個(gè)圖書(shū)信息卡。3、一次圖書(shū)借閱登記必須記錄一個(gè)圖書(shū)副本和一個(gè)借書(shū)人信息。4、一個(gè)圖書(shū)副本可以被借閱,也可以不被借閱。5、一個(gè)借書(shū)人信息可以進(jìn)行多次圖書(shū)借閱登記,也可以沒(méi)有圖書(shū)借閱登記。6、一個(gè)借書(shū)人信息可以進(jìn)行多次圖書(shū)預(yù)定登記,也可以沒(méi)有圖書(shū)預(yù)定登記。7、一次圖書(shū)預(yù)定登記必須記錄一個(gè)圖帖信息卡和一個(gè)借書(shū)人信息。

19、8、一個(gè)圖書(shū)信息卡可以被多次預(yù)立,也可以不被預(yù)立。9、書(shū)籍和雜志是圖書(shū)信息卡的特殊類(lèi)。它們之間具有一般特殊結(jié)構(gòu)。a、系統(tǒng)參與者描述 圖書(shū)管理員圖書(shū)管理員是與計(jì)算機(jī)系統(tǒng)實(shí)際交互的活動(dòng)者。圖書(shū)管理員通過(guò)增加和刪除標(biāo)題、書(shū)目和 借書(shū)者來(lái)維護(hù)系統(tǒng),同時(shí)也執(zhí)行像借書(shū)、還書(shū)、預(yù)定書(shū)目給、給出冇關(guān)存儲(chǔ)在系統(tǒng)中的數(shù)據(jù)的 信息等執(zhí)行系統(tǒng)關(guān)鍵性的功能。這些功能是為借書(shū)者服務(wù)的。借書(shū)者借書(shū)者圖書(shū)管理員借出書(shū)目借書(shū)者可以借閱和預(yù)定書(shū)和雜志。借書(shū)者可以是一個(gè)人或另一個(gè)圖書(shū)管理員。圖書(shū)管理員0增加標(biāo)題 «use>>«use»返還書(shū)目增加書(shū)目<<use>>系

20、統(tǒng)維護(hù)/ /一 r«use>>刪除書(shū)目«use»增加借書(shū)者刪除或更改借書(shū)者刪除或更新標(biāo)題圖書(shū)管理用例圖b、用例模型的綜合描述圖書(shū)管理系統(tǒng)為客戶提供一個(gè)管理圖書(shū)的軟件系統(tǒng),直接與系統(tǒng)交互的是圖書(shū)管理員,因 此,圖書(shū)管理員是應(yīng)用系統(tǒng)的參與者。借書(shū)者是通過(guò)圖書(shū)管理員與系統(tǒng)交互的,他的交互對(duì)象是圖書(shū)管理員,因此借書(shū)者是業(yè)務(wù) 系統(tǒng)的參與者。圖書(shū)管理員通過(guò)使用預(yù)定、借出書(shū)目、刪除預(yù)定和返還書(shū)目這些用例來(lái)提供對(duì)借書(shū)者的服 務(wù),還通過(guò)使用系統(tǒng)維護(hù)用例來(lái)完成增加標(biāo)題、刪除或更新標(biāo)題、增加書(shū)目、刪除書(shū)目、增加 借帖者、刪除或更新借帖者等系統(tǒng)維護(hù)的工作。我們以圖書(shū)管理的借書(shū)

21、用例來(lái)說(shuō)明詳細(xì)描述一個(gè)用例。圖書(shū)管理的借書(shū)用例的事件流描述。前提條件:借書(shū)者己經(jīng)將自己的姓名、所借的圖書(shū)標(biāo)題、圖書(shū)的作者等信息給了圖書(shū)管理員。 圖書(shū)管理員在獲取這些信息之后,開(kāi)始進(jìn)行圖書(shū)借閱業(yè)務(wù)處理。事件流:基本路徑:圖書(shū)管理員通過(guò)輸入所借閱的圖書(shū)標(biāo)題(書(shū)名、作者或出版號(hào)),使川系統(tǒng)的查閱來(lái)確定所 借圖書(shū)是一個(gè)有效標(biāo)題。圖書(shū)管理員通過(guò)查詢系統(tǒng)查詢確立該標(biāo)題下具有有效的、可供借閱的書(shū)目。圖書(shū)管理員通過(guò)輸入借巧者的信息,使用系統(tǒng)的查詢功能來(lái)確定借書(shū)者是一個(gè)已經(jīng)注冊(cè)的合 法借書(shū)者。圖書(shū)管理員通過(guò)輸入借閱圖書(shū)的標(biāo)題信息和借書(shū)者信息來(lái)確定該圖書(shū)和該借書(shū)者所存在的 預(yù)定信息。圖書(shū)管理員將書(shū)借給借書(shū)者。然后

22、,輸入所借的圖書(shū)標(biāo)題、書(shū)fi登記號(hào)、借書(shū)者的信息來(lái)形 成一個(gè)新的借閱,并將以上信息存儲(chǔ)。如果存在預(yù)定,圖書(shū)管理員通過(guò)輸入借閱圖書(shū)的標(biāo)題信息和借書(shū)者信息來(lái)刪除該圖書(shū)和該借 書(shū)者所存在的預(yù)定信息。否則執(zhí)行以卜-步驟。該用例實(shí)例結(jié)束。備選路徑:如果在上述圖書(shū)查詢中沒(méi)有借書(shū)者要求的圖書(shū),有兩種處理方式:其一,取消圖書(shū)借閱; 其二,通過(guò)系統(tǒng)維護(hù)增加一個(gè)圖書(shū)標(biāo)題,并為該借書(shū)者進(jìn)行一個(gè)圖書(shū)預(yù)定。如果在上述借書(shū)者查詢中沒(méi)有發(fā)現(xiàn)該借書(shū)者信息,同樣有兩種處理方式:其一,取消圖書(shū) 借閱;其二,通過(guò)系統(tǒng)維護(hù)增加一個(gè)借書(shū)者信息(新用戶),然后再執(zhí)行借書(shū)的用例。后置條件:當(dāng)借書(shū)完畢、或沒(méi)有要借的圖書(shū)并且借書(shū)者不希望預(yù)定、

23、或該借書(shū)者沒(méi)有注冊(cè) 并拒絕注冊(cè)為新用戶時(shí),該用例實(shí)例結(jié)束。1. 需求(requirements)典型地,由系統(tǒng)最終用八的代表寫(xiě)出文本形式的需求規(guī)范文檔。對(duì)于該圖書(shū)館應(yīng)用程序來(lái) 說(shuō),需求規(guī)范文檔應(yīng)該類(lèi)似于這樣:1. 這是一個(gè)圖書(shū)館支持系統(tǒng);2. 圖書(shū)館將圖書(shū)和雜志借給借書(shū)者。借書(shū)者已經(jīng)預(yù)先注冊(cè),圖書(shū)和雜志也預(yù)先注冊(cè);3. 圖書(shū)館負(fù)責(zé)新書(shū)的購(gòu)買(mǎi)。每一木圖書(shū)都購(gòu)進(jìn)多木書(shū)。當(dāng)舊書(shū)超期或破舊不堪時(shí),從圖書(shū)館屮 去掉。4. 圖書(shū)管理員是圖書(shū)館的員工。他們的丄作就是和讀者打交道并在軟件系統(tǒng)的支持下工作。5. 借閱人可以預(yù)疋當(dāng)前沒(méi)有的圖巧和朵志。這樣,當(dāng)他所預(yù)定的圖卩和雜志歸還回來(lái)或購(gòu)進(jìn)時(shí), 就通知預(yù)定人。當(dāng)

24、預(yù)定了某書(shū)的借書(shū)者借閱了該書(shū)后,預(yù)定就取消?;蛘咄ㄟ^(guò)顯式的取消過(guò)程 強(qiáng)行取消預(yù)定。6. 圖書(shū)館能夠容易地建立、修改和刪除標(biāo)題、借書(shū)者、借閱信息和預(yù)定信息。7. 系統(tǒng)能夠運(yùn)行在所有流行的技術(shù)環(huán)境中,包括unix, windows和os/2,并應(yīng)有一個(gè)現(xiàn)代的圖 形用戶界面(gui)o8. 系統(tǒng)容易擴(kuò)展新功能。系統(tǒng)的第一版不必考慮預(yù)定的圖書(shū)到達(dá)后通知預(yù)定人的功能,也不必檢查借書(shū)過(guò)期的情況。2. 分析(analysis)系統(tǒng)分析的目的是捕獲和描述所有的系統(tǒng)需求,并且建立一個(gè)模型來(lái)定義系統(tǒng)中主要的問(wèn) 題域類(lèi)。通過(guò)系統(tǒng)分析達(dá)到開(kāi)發(fā)者和需求者的理解和溝通。因此,分析一般都是分析員和用八 協(xié)作的產(chǎn)物。在這個(gè)階

25、段,程序開(kāi)發(fā)者不應(yīng)該考慮代碼或程序的問(wèn)題;它只是理解需求和實(shí)現(xiàn)系統(tǒng)的第一步。2. 1 需求分析(requirements analysis)分析的第一步是確定系統(tǒng)能夠做什么?誰(shuí)來(lái)使用這個(gè)系統(tǒng)?這些分別叫角色(actors)和用 例(use cases) 0用例描述了系統(tǒng)提供什么樣的功能。通過(guò)閱讀和分析文檔,以及和潛在的川 戶討論系統(tǒng)來(lái)分析用例。圖書(shū)館的角色戀為圖書(shū)管理員和借書(shū)人。圖書(shū)管理員是軟件系統(tǒng)的用戶;而借書(shū)者則是來(lái) 借閱或預(yù)定圖卩雜志的客戶。偶爾,圖書(shū)管理員或圖書(shū)館的其他工作人員也町能是一個(gè)借書(shū)者。 借書(shū)者不直接和系統(tǒng)交互,借書(shū)人的功能由圖書(shū)管理員代為執(zhí)行。圖書(shū)館系統(tǒng)屮的用例有:1. 借

26、書(shū)2. 述書(shū)3. 預(yù)定4. 取消預(yù)定5. 增加標(biāo)題6. 修改或刪除標(biāo)題7. 增加書(shū)目8. 刪除書(shū)目9. 增加借書(shū)者10. 修改或刪除借書(shū)者上面所列的用例中沒(méi)有維護(hù),維護(hù)是一個(gè)使用其它用例的更一般的用例。同時(shí),還應(yīng)注意到上 述用例中出現(xiàn)的兩個(gè)概念:標(biāo)題(title)和書(shū)fldtem)。因?yàn)樵谝粋€(gè)圖書(shū)館中,一個(gè)流行的標(biāo)題 可能有好兒本,因此系統(tǒng)必須將標(biāo)題(可能是書(shū)名或書(shū)的作者)同其它的書(shū)1=1(代表一個(gè)指定標(biāo)題 的物理副本)區(qū)分開(kāi)來(lái)。從圖書(shū)館借的是書(shū)目。在圖書(shū)館擁有一本書(shū)的副本(書(shū)目)之前加一個(gè)標(biāo) 題到系統(tǒng)中是可能的,這樣做的目的是讓借書(shū)者可以預(yù)訂。圖帖館系統(tǒng)分析的結(jié)杲寫(xiě)在uml用例圖中。每一個(gè)用

27、例都附帶有文木文檔,描述用例和客戶 交互的細(xì)節(jié)。文本是通過(guò)與客戶討論得到的。用例“借書(shū)”描述如下:1. 如果借閱者沒(méi)有預(yù)定:確定標(biāo)題確立該標(biāo)題下有效的書(shū)目確眾借書(shū)者圖書(shū)館將書(shū)借出登記一個(gè)新的借閱2. 如果借閱者有預(yù)尬:確定借書(shū)人確定標(biāo)題確處該標(biāo)題下有效的書(shū)目圖書(shū)館將相應(yīng)的書(shū)目借出登記一個(gè)新的借閱取消預(yù)定除了眾義系統(tǒng)的功能需求z外,在分析過(guò)程中用例用于檢查是否有相應(yīng)的域類(lèi)已經(jīng)被處義, 然后他們町以被用在設(shè)計(jì)階段,確保解決方案町以冇效地處理系統(tǒng)功能??梢栽陧樞驁D中町視 化實(shí)現(xiàn)細(xì)節(jié)。角色和用例。分析屮的第一步就是指出系統(tǒng)能被用來(lái)做什么,誰(shuí)將去使用它。它們分別就 是用例和角色。所有的用例必須始于角色,

28、而且有些用例也結(jié)束于角色。角色是位于你所t作 的系統(tǒng)外部的人或其他系統(tǒng)。一臺(tái)打卬機(jī)或一個(gè)數(shù)據(jù)庫(kù)都對(duì)能是一個(gè)角色。本系統(tǒng)有兩個(gè)角色: 借閱者和圖卩管理員。通過(guò)與用戶或客戶的討論,町以將每一個(gè)用例用文字進(jìn)行說(shuō)明。借出書(shū)ii預(yù)定0增加標(biāo)題«use»圖書(shū)管理員刪除預(yù)定«use>> 刪除或更新標(biāo)題増加isn«use»返還書(shū)ii増加借書(shū)者刪除或更改借書(shū)者2. 2 問(wèn)題域分析(domain analysis)系統(tǒng)分析也詳細(xì)地列出了域(系統(tǒng)中的關(guān)鍵類(lèi))。為了導(dǎo)出一個(gè)域分析,可以閱讀規(guī)范文檔 (specifications)和用例,查找哪一些概念應(yīng)該

29、被系統(tǒng)處理。或者組織一個(gè)集體討論,在用戶及 領(lǐng)域?qū)<夜餐膮⑴c下指出系統(tǒng)中必須處理的關(guān)鍵概念,以及它們之間的關(guān)系。其中冇些類(lèi)冇uml狀態(tài)圖,用來(lái)顯示這些類(lèi)的對(duì)彖可能具冇的不同狀態(tài),以及觸發(fā)他們的狀 態(tài)發(fā)生改變的事件。該例子中有狀態(tài)圖的類(lèi)是item和title類(lèi)。廠、loaneditemnot 1oanodnot reservednumber+3. 設(shè)計(jì)(design)設(shè)計(jì)階段對(duì)分析模型進(jìn)行擴(kuò)展并將模型進(jìn)一步細(xì)化,并考慮技術(shù)細(xì)節(jié)和限制條件。設(shè)計(jì)的目的 是制定一個(gè)可行的解決方案,以便能很容易地轉(zhuǎn)變成為編程代碼。設(shè)計(jì)可以分成兩個(gè)階段:體系結(jié)構(gòu)設(shè)計(jì)階段(architecture design) 0這是

30、一個(gè)從較高層次的進(jìn)行的設(shè)計(jì),用來(lái)定 義包(子系統(tǒng)),描述包之間的依賴(lài)性及通信機(jī)制。很自然,目的是要設(shè)計(jì)一個(gè)清晰簡(jiǎn)單的體 系結(jié)構(gòu),有很少的依賴(lài)性,而且盡可能避免雙向依賴(lài)。詳細(xì)設(shè)計(jì)階段(detailed design)。在此階段,所有的類(lèi)都詳盡地進(jìn)行描述,給編寫(xiě)代碼 的程序員一個(gè)清晰的規(guī)范說(shuō)明。uml屮的動(dòng)態(tài)模型用來(lái)說(shuō)明類(lèi)的對(duì)象如何在特定的情況卜做 出相應(yīng)的表現(xiàn)。3. 1體系結(jié)構(gòu)設(shè)計(jì)一個(gè)良好的體系結(jié)構(gòu)設(shè)計(jì)是一個(gè)可擴(kuò)展的和可改變的系統(tǒng)的基礎(chǔ)。包可能關(guān)注特定的功能 領(lǐng)域或關(guān)注特定的技術(shù)領(lǐng)域。把應(yīng)用程序邏輯(域類(lèi))和技術(shù)邏輯分開(kāi)是至關(guān)重要的,這樣不 管哪一部分的改變都不會(huì)影響其他的部分。本案例的包或叫子

31、系統(tǒng)如f:user-interface package包。該包屮的類(lèi)基于java awt包,java awt是一個(gè)用來(lái)書(shū)寫(xiě)用戶 界而應(yīng)用程序的java的標(biāo)準(zhǔn)庫(kù)。該包和business-objects package包協(xié)作。business-objects package包包含那些實(shí)際存儲(chǔ)數(shù)據(jù)的類(lèi)。ui包調(diào)用business對(duì)象的操作,對(duì)他們進(jìn)行取出或插 入數(shù)據(jù)操作。用戶接口包顯示了所冇的在用戶接口中的類(lèi),以及它們與其它類(lèi)(即,在業(yè)務(wù)對(duì)彖類(lèi))z i'可的關(guān)系和協(xié)作。用戶接口描述了四個(gè)類(lèi)圖:1、基本類(lèi)圖:該圖顯示了 staitclass,該類(lèi)包含了整個(gè)應(yīng)用軟件的主操作,并h只有它才可以 激

32、活主窗口(mninwindow)。主窗口包含了-個(gè)菜單該菜單被用來(lái)訪問(wèn)在應(yīng)用系統(tǒng)中所有的 其它窗口。2、功能類(lèi):它顯示了所有的用在menubar "functions"中的窗口類(lèi)。這些窗口包含了對(duì)于租 借和返還書(shū)目以及預(yù)定書(shū)目和取消預(yù)定的主要功能。3、信息類(lèi):它顯示了所有的用在menubar "information"中的窗口類(lèi)。這些類(lèi)都是為了查看 有關(guān)標(biāo)題和租借者信息以及瀏覽所有的標(biāo)題和所有的租借者的信息。4、維護(hù)類(lèi):它顯示了所有的用在menubar "maintenance"中的窗口類(lèi)。這些類(lèi)都是為了系統(tǒng) 維護(hù)的,如增加、刪除和更

33、新標(biāo)題、書(shū)目和租借者信息。ui包同樣也包含了對(duì)所有在分析中多定義的用例順序圖,它顯示了這些用例在設(shè)計(jì)階段的 實(shí)現(xiàn)。用例現(xiàn)在被細(xì)化成在設(shè)計(jì)類(lèi)圖中的實(shí)際操作,因此,這些順序圖可以閱讀,用來(lái)理解實(shí) 際代碼。有些順序圖同樣也被轉(zhuǎn)換成協(xié)作圖。business-object packageo 該包包括域類(lèi),這些域類(lèi)(如borrowednformation, title, item, loan 等)來(lái)自于分析模型。設(shè)計(jì)階段完整地定義了這些類(lèi)的操作,并增加了一些其他細(xì)節(jié)來(lái)支持持 續(xù)存儲(chǔ)。business-object包與database package進(jìn)行協(xié)作。所有的business-object類(lèi)必須繼承

34、database package 中的persistent 類(lèi)。database packageo database package 向business-object 包中的類(lèi)捉供服務(wù),以便他們能夠 持續(xù)地存儲(chǔ)。在當(dāng)前版本屮,persistent類(lèi)將把它的子類(lèi)的對(duì)象存儲(chǔ)到文件系統(tǒng)的文件屮。utility packageo utility package包含了一些服務(wù),用來(lái)被系統(tǒng)中其他包調(diào)用。當(dāng)前,objld類(lèi) 是該包中的唯一的類(lèi)。用來(lái)被整個(gè)系統(tǒng)包扌舌user-interface, business-object和database package 使用。這些包的設(shè)計(jì)如圖所示.圖:圖書(shū)館應(yīng)用程序體

35、系結(jié)構(gòu)設(shè)計(jì)總覽。本類(lèi) 圖顯示了應(yīng)用程序包以及它們之間的依賴(lài)性。database 包提供了persistence 類(lèi)。utility 包提供了object id 類(lèi)。business-object 包包 含了域類(lèi)(詳細(xì)情況參見(jiàn)類(lèi)圖)最后,ui包(在本例中它是基于標(biāo)準(zhǔn)jaaawt庫(kù))調(diào)用business 對(duì)象中的操作來(lái)實(shí)現(xiàn)對(duì)他們的數(shù)據(jù)存取操作。3. 2詳細(xì)設(shè)計(jì)細(xì)節(jié)設(shè)計(jì)描述了新的技術(shù)性的類(lèi),如user-interface利database包中的類(lèi),并il豐富了分析 階段所形成的business-object類(lèi)。類(lèi)圖、狀態(tài)圖和動(dòng)態(tài)圖用的還是分析階段所形成的圖,但 對(duì)他們定義的更加詳細(xì),具有了更高的技術(shù)

36、水平。在分析階段對(duì)用例進(jìn)行的文字性描述在此用 來(lái)證明用例在設(shè)計(jì)階段也能被處理。順序圖就是用來(lái)說(shuō)明用例如何在系統(tǒng)中被實(shí)現(xiàn)的。database packageo應(yīng)用程序必須有持續(xù)存儲(chǔ)的對(duì)象。因此,必須增加數(shù)據(jù)層來(lái)提供這樣 的服務(wù)。為簡(jiǎn)單起見(jiàn),我們將對(duì)象以文件的形式保存在磁盤(pán)上。存儲(chǔ)的細(xì)節(jié)被應(yīng)用程序隱藏起 來(lái),只需調(diào)用諸如store () , update () , delete ()和find ()這樣的公共操作即可。這 些都是persistent類(lèi)的一部分,所冇需要持續(xù)對(duì)象的類(lèi)必須繼承它。對(duì)類(lèi)進(jìn)行持續(xù)處理的一個(gè)重要因子就是objld類(lèi)。它的對(duì)象用來(lái)引用系統(tǒng)中的任何持續(xù)對(duì) 象(不管這個(gè)對(duì)象是在磁盤(pán)上還是已經(jīng)被讀進(jìn)了應(yīng)用程序之中)。objld是object identity的 簡(jiǎn)寫(xiě),它是一個(gè)廣為應(yīng)用的技術(shù),用來(lái)冇效地處理應(yīng)用程序中的對(duì)彖引用。通過(guò)使用object identifiers, 一個(gè)對(duì)象id能被傳遞到普通的persistent, getobjoct ()操作中,進(jìn)而該對(duì)象 將被從持續(xù)的存儲(chǔ)體中取出或存儲(chǔ)。通常情況下,這些都是通過(guò)每個(gè)持續(xù)類(lèi)的一個(gè)getobject操 作完成的。當(dāng)然,持續(xù)類(lèi)同時(shí)也作一些檢查或格式轉(zhuǎn)換的操作。一個(gè)對(duì)彖標(biāo)識(shí)符也能作為一個(gè) 參數(shù)很容易地在兩

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論