UML業(yè)務(wù)建模實(shí)例分析[4]

字號(hào):

下一步就是編制每一個(gè)用例的詳細(xì)說(shuō)明,對(duì)用例說(shuō)明的主要信息包括有:用例名稱(chēng)、編號(hào)、用例的簡(jiǎn)短描述、用例的參與者、與其他用例的管理、用例啟動(dòng)的前提條件、用例結(jié)束后的事后條件、用例的輸入、輸出、用例的執(zhí)行事件流等。在實(shí)際項(xiàng)目中,我們并不一定要面面俱到,而是根據(jù)實(shí)際情況對(duì)用例描述進(jìn)行裁減。其中有幾點(diǎn)重要信息是不能裁減的:用例名稱(chēng)、描述、輸入、輸出、執(zhí)行事件流、參與者。另外,如果實(shí)際情況需要,還可以使用MS Visio等工具畫(huà)出界面的示意圖來(lái)。
     如上例所述,我們對(duì)每一個(gè)用例都進(jìn)行詳細(xì)的描述,建立當(dāng)前系統(tǒng)的功能用例模型。需求溝通與分析是一個(gè)迭代的過(guò)程,通過(guò)與用戶(hù)的不斷溝通,最終達(dá)成對(duì)目標(biāo)系統(tǒng)的一致理解。如果用戶(hù)確認(rèn)了需求分析的成果,一般是需求規(guī)格說(shuō)明書(shū)之后,項(xiàng)目開(kāi)始進(jìn)入系統(tǒng)分析設(shè)計(jì)階段,也就是開(kāi)始構(gòu)造目標(biāo)系統(tǒng)的邏輯模型。
     為了讓系統(tǒng)設(shè)計(jì)能夠以結(jié)構(gòu)、組織方式和代碼重用的形式表現(xiàn)出來(lái),要對(duì)系統(tǒng)進(jìn)行設(shè)計(jì)規(guī)劃,設(shè)計(jì)階段應(yīng)該與分析階段交迭。需求是不斷地發(fā)展,而設(shè)計(jì)本身也會(huì)推動(dòng)需求的發(fā)展(反之亦然) 。在圖書(shū)館管理系統(tǒng)的建模設(shè)計(jì)中,以下3個(gè)方面的問(wèn)題是要關(guān)注的:業(yè)務(wù)對(duì)象的表示、業(yè)務(wù)服務(wù)的實(shí)現(xiàn)、用戶(hù)界面的組織。
     業(yè)務(wù)對(duì)象的表示
     在圖書(shū)館管理系統(tǒng)系統(tǒng)中,業(yè)務(wù)對(duì)象主要是數(shù)據(jù)庫(kù)和數(shù)據(jù)實(shí)體類(lèi)的表示方式。建模時(shí),可以構(gòu)造出系統(tǒng)的靜態(tài)模型,也就是系統(tǒng)類(lèi)圖來(lái)表示。如下圖則描述了借書(shū)這一用例的靜態(tài)結(jié)構(gòu)圖。為了體現(xiàn)類(lèi)之間的關(guān)系,在下圖中沒(méi)有顯示出每一個(gè)類(lèi)的屬性和基本操作。
     業(yè)務(wù)服務(wù)的實(shí)現(xiàn)
     業(yè)務(wù)服務(wù)的實(shí)現(xiàn)需要完成的功能是各種業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn),如借書(shū)處理的業(yè)務(wù)邏輯。每個(gè)模塊的信息錄入、修改、刪除、查詢(xún)等。業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn)基本相似,沒(méi)有太多的規(guī)律可循。采用UML來(lái)進(jìn)行業(yè)務(wù)服務(wù)的建模,可以使用UML 的序列圖、狀態(tài)圖、活動(dòng)圖。這個(gè)部分的工作,通常通過(guò)一系列的類(lèi)之間的交互來(lái)完成。為了在更動(dòng)態(tài)的層面上描述系統(tǒng),UML 提供了許多其他類(lèi)型的圖。
     對(duì)于B/S系統(tǒng)設(shè)計(jì)而言,情節(jié)圖(Scenario Diagram) 特別有用。情節(jié)圖分成兩種:協(xié)作圖(Collaboration Diagram) ,序列圖(Sequence Diagram) 。UML 建模工具Rational Rose 能夠從協(xié)作圖生成序列圖也可以從序列圖生成協(xié)作圖。例如,借閱書(shū)刊的業(yè)務(wù)過(guò)程可以采用如下序列圖來(lái)描述:
     借閱書(shū)刊過(guò)程主要包括:管理員選擇“借閱書(shū)刊”菜單,彈出對(duì)話(huà)框,管理員輸入書(shū)刊信息和用戶(hù)信息,系統(tǒng)查找數(shù)據(jù)庫(kù),是否存在該種物理書(shū)刊,如果不存在,顯示提示信息,用例結(jié)束;是否存在借閱者信息,如果不存在,顯示提示信息,用例結(jié)束;否則,管理員單擊確認(rèn)按鈕后,該圖書(shū)借閱給該借閱者,系統(tǒng)存儲(chǔ)借閱信息到數(shù)據(jù)庫(kù)。
     用戶(hù)界面的組織
     用戶(hù)界面布局圖能夠幫助組織系統(tǒng)頁(yè)面、文件、服務(wù)的布局結(jié)構(gòu)。在UML 中,對(duì)于頁(yè)面和文件的組織,可以使用構(gòu)件圖(Component Diagram) 或類(lèi)圖(Class Diagram) 建模型。本系統(tǒng)中使用類(lèi)圖對(duì)界面組織建模,頁(yè)面結(jié)構(gòu)以及各種業(yè)務(wù)服務(wù)被捆綁到不同的區(qū)域