自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

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

開發(fā) 架構(gòu)
UML業(yè)務(wù)建模你是否熟悉,本文就以圖書管理系統(tǒng)這個實(shí)例向大家介紹一下,相信通過本文的實(shí)例分析你對UML業(yè)務(wù)建模會有新的認(rèn)識。

本節(jié)和大家學(xué)習(xí)一下UML業(yè)務(wù)建模,UML是一種編制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)化語言,可以對復(fù)雜的系統(tǒng)建立可視化的系統(tǒng)模型。對于大中型信息系統(tǒng),很難直接進(jìn)行需求分析設(shè)計,需要借助模型來分析設(shè)計系統(tǒng),根據(jù)系統(tǒng)調(diào)研數(shù)據(jù),建立起目標(biāo)系統(tǒng)的邏輯模型。

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

對于大中型信息系統(tǒng),很難直接進(jìn)行需求分析設(shè)計,需要借助模型來分析設(shè)計系統(tǒng),根據(jù)系統(tǒng)調(diào)研數(shù)據(jù),建立起目標(biāo)系統(tǒng)的邏輯模型。

在軟件工程的歷史中,很長時間里人們一直認(rèn)為需求分析是整個軟件工程中最簡單的一個步驟,但在過去十年中越來越多的人認(rèn)識到它是整個過程中最為關(guān)鍵的一個過程。假如在需求分析時分析者們未能正確地認(rèn)識到客戶的需求的話,那么***的軟件實(shí)際上不可能達(dá)到客戶的要求,或者導(dǎo)致需求的頻繁變更,而軟件無法在規(guī)定的時間里完工。

在需求分析階段,要對經(jīng)過可行性分析所確定的系統(tǒng)目標(biāo)和功能作進(jìn)一步的詳細(xì)論述,確定系統(tǒng)“做什么?”的問題,最終建立起目標(biāo)系統(tǒng)的邏輯模型。

首先是獲得當(dāng)前系統(tǒng)的物理模型。物理模型是對當(dāng)前系統(tǒng)的真實(shí)寫照,可能是一個由人工操作的過程,也可能是一個已有的但需要改進(jìn)的計算機(jī)系統(tǒng)。首先是要對現(xiàn)行系統(tǒng)進(jìn)行分析、理解,了解它的組織情況、數(shù)據(jù)流向、輸入輸出,資源利用情況等,在分析的基礎(chǔ)上畫出它的物理模型。然后抽象出當(dāng)前系統(tǒng)的邏輯模型。

邏輯模型是在物理模型基礎(chǔ)上,去掉一些次要的因素,建立起反映系統(tǒng)本質(zhì)的邏輯模型。接下來建立目標(biāo)系統(tǒng)的邏輯模型。通過分析目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)在邏輯上的區(qū)別,建立符合用戶需求的目標(biāo)系統(tǒng)的邏輯模型。***補(bǔ)充目標(biāo)系統(tǒng)的邏輯模型。對目標(biāo)系統(tǒng)進(jìn)行補(bǔ)充完善,將一些次要的因素補(bǔ)充進(jìn)去,例如出錯處理等。

UML(TheUnifiedModelingLanguage,即統(tǒng)一建模語言)是一種編制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)化語言,可以對復(fù)雜的系統(tǒng)建立可視化的系統(tǒng)模型,目前已經(jīng)被工業(yè)標(biāo)準(zhǔn)化組織OMG(ObjectManagementGroup)接受,一經(jīng)推出便得到許多著名的計算機(jī)廠商如Microsoft、HP、IBM、Oracle等的支持,也在逐步開始應(yīng)用到需求分析過程中。
在使用UML建立當(dāng)前系統(tǒng)邏輯模型過程中,初學(xué)者通常會遇到一些問題:

1.什么時候真正需要業(yè)務(wù)模型?什么時候用例模型獨(dú)立存在?
2.在進(jìn)行精確的業(yè)務(wù)建模時能用哪些UML圖形?如何知道是否用順序圖或者交互圖?
3.業(yè)務(wù)模型如何涉及到其他模型(如領(lǐng)域模型,用例模型等等)呢?如何有機(jī)地組織這些模型?
本文將通過圖書館管理系統(tǒng)這個簡單而典型的實(shí)例來進(jìn)行一次UML需求分析實(shí)踐之旅。#p#


許多讀者對圖書館圖書管理工作比較熟悉,主要是圍繞讀者、圖書和工作人員的借還書展開工作。我們先看看圖書館工作人員和部分讀者的需求。
讀者來圖書館借書,可能先查詢書庫的圖書記錄。查詢可以按書名、作者、圖書編號、關(guān)鍵字查詢。查詢有兩種結(jié)果,如果查到則記下書號,交給工作人員,然后等候辦理借書手續(xù)。如果該書已經(jīng)被全部借出,則可做借書登記,等待有書時被通知。如果圖書館沒有該書的記錄,則做缺書登記。
辦理借書手續(xù)時先要出示圖書證,沒有圖書證則去申請圖書證。如果借書數(shù)量超出規(guī)定,則提示“借書數(shù)量超限,不能繼續(xù)借閱”。工作人員登記借閱人信息、借閱的圖書信息、借出時間和應(yīng)還書時間。系統(tǒng)自動修改書庫的圖書記錄、讀者庫信息。

◆當(dāng)一位讀者還書時,工作人員根據(jù)圖書證編號,找到讀者的借書信息,查看是否超期,如果已經(jīng)超期,則進(jìn)行超期處罰。
◆如果圖書有破損、丟失,則進(jìn)行破損處罰。清除借閱記錄,同時系統(tǒng)自動查看是否有等待借閱登記,如果有則發(fā)出通知,修改書庫記錄,該書設(shè)置為已預(yù)訂狀態(tài),否則設(shè)置為可借狀態(tài)。
◆圖書采購人員進(jìn)行圖書采購時,要參考各類圖書的庫存數(shù)和借閱率,注意合理采購。如果有缺書登記則隨時進(jìn)行采購。正在采購的圖書組成一個采購中書庫。
◆采購到貨后,進(jìn)行驗收,編號,同時加入圖書庫,修改采購中書庫,并且查看訂閱庫,發(fā)出到書通知,并且已經(jīng)修改書庫的圖書記錄為已預(yù)訂狀態(tài)。
◆借書登記是當(dāng)欲借的書被借空后,讀者自愿選擇的一種操作,它應(yīng)該記錄讀者名和聯(lián)系方式,一旦有這本書后可通知讀者。
◆到書通知,當(dāng)讀者預(yù)訂的書來到之后,按照讀者給出的聯(lián)系方式發(fā)出通知。
◆缺書登記是當(dāng)讀者需要的書庫內(nèi)查詢沒有記錄時,將此信息轉(zhuǎn)入缺貨庫,通知采購員采購。
◆圖書注銷,如果圖書丟失或舊書淘汰,則將該書從書庫中清除。
根據(jù)需求描述整理一張需求表:

 
需求分析時首先要識別出系統(tǒng)的參與者,在簡單的圖書館管理系統(tǒng)中,可以劃分出兩種參與者:讀者和管理員。當(dāng)然,根據(jù)業(yè)務(wù)的復(fù)雜程度,參與者也可以進(jìn)行細(xì)分,比如讀者可以再分為學(xué)生讀者、教師讀者、校外讀者,管理員根據(jù)業(yè)務(wù)和權(quán)限的不同可以再細(xì)分為庫房管理員、借還書操作員、系統(tǒng)維護(hù)人員、圖書館管理人員等不同角色。在這里,為了簡化處理,我們只列出了讀者和管理員。對參與者描述如下:

(1)讀者

描述:讀者可以借閱、預(yù)定、歸還物理書刊,可以對書籍和個人信息進(jìn)行查詢,可以取消預(yù)定,可以提出辦卡申請。
示例:持有借閱卡的任何人和組織。

(2)管理員

描述:圖書管理員對系統(tǒng)進(jìn)行維護(hù),包括讀者信息的創(chuàng)建、修改、刪除,書刊信息的維護(hù),條目信息的維護(hù),還有系統(tǒng)信息的維護(hù)。
示例:圖書管理員。

通過識別的參與者,對需求進(jìn)一步分析,將業(yè)務(wù)需求進(jìn)行分解,獲得每個參與者的使用用例。在本例中,我們可以得到以下用例:
1.書籍借出:提供借閱物理書刊的功能。
2.書籍歸還:提供歸還物理書刊的功能。
3.讀者辦卡:提供為讀者辦理借閱卡的功能。
4.預(yù)定書刊:提供對某一個種類的書刊的預(yù)約功能。
5.取消預(yù)定:提供對預(yù)定進(jìn)行取消的功能。

6.書籍查詢:為讀者提供網(wǎng)上的書籍查詢功能。
7.信息查詢:為讀者提供信息查詢的功能。
8.讀者信息維護(hù):提供讀者信息的錄入、修改、查詢、刪除的功能。
9.書刊信息維護(hù):提供物理書刊的錄入、修改、查詢、刪除的功能。
10.條目信息維護(hù):提供書刊條目的錄入、修改、查詢、刪除的功能。
11.系統(tǒng)信息維護(hù):提供對系統(tǒng)的參數(shù)的設(shè)置。
12.登錄:管理員需要先登錄才能進(jìn)入系統(tǒng)。#p#

并且,可以畫出如下系統(tǒng)用例圖:

通過用例圖,可以對系統(tǒng)功能有一個大概的了解,對于復(fù)雜系統(tǒng),我們可以結(jié)合IDEF方法,通過分層分解,逐步細(xì)化的方法來描述系統(tǒng)的功能。對于用例圖,建議不要畫的過于復(fù)雜,特別是用例之間的關(guān)系,因為復(fù)雜的用例圖不僅不能讓需求分析人員與客戶之間更好的溝通,反而是制造了一種溝通障礙。
下一步就是編制每一個用例的詳細(xì)說明,對用例說明的主要信息包括有:用例名稱、編號、用例的簡短描述、用例的參與者、與其他用例的管理、用例啟動的前提條件、用例結(jié)束后的事后條件、用例的輸入、輸出、用例的執(zhí)行事件流等。在實(shí)際項目中,我們并不一定要面面俱到,而是根據(jù)實(shí)際情況對用例描述進(jìn)行裁減。其中有幾點(diǎn)重要信息是不能裁減的:用例名稱、描述、輸入、輸出、執(zhí)行事件流、參與者。另外,如果實(shí)際情況需要,還可以使用MSVisio等工具畫出界面的示意圖來。

如上例所述,我們對每一個用例都進(jìn)行詳細(xì)的描述,建立當(dāng)前系統(tǒng)的功能用例模型。需求溝通與分析是一個迭代的過程,通過與用戶的不斷溝通,最終達(dá)成對目標(biāo)系統(tǒng)的一致理解。如果用戶確認(rèn)了需求分析的成果,一般是需求規(guī)格說明書之后,項目開始進(jìn)入系統(tǒng)分析設(shè)計階段,也就是開始構(gòu)造目標(biāo)系統(tǒng)的邏輯模型。
為了讓系統(tǒng)設(shè)計能夠以結(jié)構(gòu)、組織方式和代碼重用的形式表現(xiàn)出來,要對系統(tǒng)進(jìn)行設(shè)計規(guī)劃,設(shè)計階段應(yīng)該與分析階段交迭。需求是不斷地發(fā)展,而設(shè)計本身也會推動需求的發(fā)展(反之亦然)。在圖書館管理系統(tǒng)的建模設(shè)計中,以下3個方面的問題是要關(guān)注的:業(yè)務(wù)對象的表示、業(yè)務(wù)服務(wù)的實(shí)現(xiàn)、用戶界面的組織。

業(yè)務(wù)對象的表示

在圖書館管理系統(tǒng)系統(tǒng)中,業(yè)務(wù)對象主要是數(shù)據(jù)庫和數(shù)據(jù)實(shí)體類的表示方式。建模時,可以構(gòu)造出系統(tǒng)的靜態(tài)模型,也就是系統(tǒng)類圖來表示。如下圖則描述了借書這一用例的靜態(tài)結(jié)構(gòu)圖。為了體現(xiàn)類之間的關(guān)系,在下圖中沒有顯示出每一個類的屬性和基本操作。

業(yè)務(wù)服務(wù)的實(shí)現(xiàn)

業(yè)務(wù)服務(wù)的實(shí)現(xiàn)需要完成的功能是各種業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn),如借書處理的業(yè)務(wù)邏輯。每個模塊的信息錄入、修改、刪除、查詢等。業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn)基本相似,沒有太多的規(guī)律可循。采用UML來進(jìn)行業(yè)務(wù)服務(wù)的建模,可以使用UML的序列圖、狀態(tài)圖、活動圖。這個部分的工作,通常通過一系列的類之間的交互來完成。為了在更動態(tài)的層面上描述系統(tǒng),UML提供了許多其他類型的圖。
對于B/S系統(tǒng)設(shè)計而言,情節(jié)圖(ScenarioDiagram)特別有用。情節(jié)圖分成兩種:協(xié)作圖(CollaborationDiagram),序列圖(SequenceDiagram)。UML建模工具RationalRose能夠從協(xié)作圖生成序列圖也可以從序列圖生成協(xié)作圖。

借閱書刊過程主要包括:管理員選擇“借閱書刊”菜單,彈出對話框,管理員輸入書刊信息和用戶信息,系統(tǒng)查找數(shù)據(jù)庫,是否存在該種物理書刊,如果不存在,顯示提示信息,用例結(jié)束;是否存在借閱者信息,如果不存在,顯示提示信息,用例結(jié)束;否則,管理員單擊確認(rèn)按鈕后,該圖書借閱給該借閱者,系統(tǒng)存儲借閱信息到數(shù)據(jù)庫。#p#

用戶界面的組織

用戶界面布局圖能夠幫助組織系統(tǒng)頁面、文件、服務(wù)的布局結(jié)構(gòu)。在UML中,對于頁面和文件的組織,可以使用構(gòu)件圖(ComponentDiagram)或類圖(ClassDiagram)建模型。本系統(tǒng)中使用類圖對界面組織建模,頁面結(jié)構(gòu)以及各種業(yè)務(wù)服務(wù)被捆綁到不同的區(qū)域。

在UML中,系統(tǒng)的體系結(jié)構(gòu)使用部署圖(DeploymentDiagram)來完成。應(yīng)用部署的規(guī)劃對于規(guī)劃整個B/S系統(tǒng)是很有用的。它確定了一種有效的應(yīng)用部署的規(guī)劃組織方式,還可以作為一個模式在多個類似B/S系統(tǒng)上應(yīng)用。
在建模完成后,開發(fā)人員利用一些UMLCase工具如RationalROSE生成程序代碼框架,并對代碼框架進(jìn)行修改和補(bǔ)充,形成完整代碼;而且,還可根據(jù)代碼逆向生成UML模型。這就較好地保證了模型與代碼的一致性。

 圖2:用況活動圖                  圖3:借書部分的類結(jié)構(gòu)圖

測試必須在整個項目周期中進(jìn)行,對每個階段都要用所建立的模型進(jìn)行測試,這樣才能保證開發(fā)的質(zhì)量,減少開發(fā)的風(fēng)險。
統(tǒng)一建模語言UML是國際軟件工程領(lǐng)域具有劃時代意義的重要成果,適用于以面向?qū)ο蠹夹g(shù)來描述任何類型的系統(tǒng),而且適用于系統(tǒng)開發(fā)的不同階段,從需求規(guī)格描述直至系統(tǒng)完成后的測試和維護(hù)。軟件系統(tǒng)的規(guī)模越來越大,復(fù)雜度不斷提高,RUP迭代式增量開發(fā)方式可以降低風(fēng)險,同時可以適應(yīng)需求變化的需要。

在本次UML實(shí)踐之旅中,我們通過對圖書館管理系統(tǒng)的需求進(jìn)行分析,將UML應(yīng)用于系統(tǒng)開發(fā)的各個階段,建立了系統(tǒng)的需求模型、靜態(tài)模型和動態(tài)模型,同時遵循Rationl統(tǒng)一過程(RUP)的核心思想和基本原則,采用以用例為驅(qū)動、以體系構(gòu)架為核心的迭代化面向?qū)ο蠓治龊驮O(shè)計過程。

UML行為圖

用況圖(usecasediagram)描述了一組用況和參與者(一種特殊的類)以及它們之間的關(guān)系。
交互圖(interactiondiagram)是順序圖和協(xié)作圖的統(tǒng)稱。
順序圖(sequencediagram)是強(qiáng)調(diào)消息的時間次序的交互圖。
協(xié)作圖(collaborationdiagram)是強(qiáng)調(diào)收發(fā)消息的對象的結(jié)構(gòu)組織的交互圖。
狀態(tài)圖顯示了一個由狀態(tài),轉(zhuǎn)換,事件和活動組成的狀態(tài)機(jī)。
活動圖顯示了系統(tǒng)中從活動到活動的流。

【編輯推薦】

  1. 初纏之UML業(yè)務(wù)建模
  2. 對服務(wù)項目的關(guān)系進(jìn)行UML業(yè)務(wù)建模行之有效的辦法
  3. 專家指導(dǎo) UML建模分析步驟
  4. UML建模時需要注意的四大問題
  5. 學(xué)習(xí)指導(dǎo) 對服務(wù)體系進(jìn)行UML業(yè)務(wù)建模

 

責(zé)任編輯:佚名 來源: it168.com
相關(guān)推薦

2010-06-29 16:27:06

UML業(yè)務(wù)建模實(shí)例

2010-06-09 12:36:30

UML業(yè)務(wù)建模實(shí)例

2010-06-09 13:06:22

UML業(yè)務(wù)建模實(shí)例

2010-06-29 16:15:05

UML業(yè)務(wù)建模實(shí)例

2010-06-12 09:09:33

UML需求分析

2010-06-30 09:07:09

UML建模分析

2010-06-18 15:55:47

UML建模

2010-06-30 11:21:42

UML業(yè)務(wù)建模

2010-06-30 13:17:12

UML業(yè)務(wù)建模

2010-06-12 11:22:57

UML應(yīng)用

2010-06-29 19:08:23

UML建模技術(shù)

2010-06-29 16:53:48

UML實(shí)例教程

2010-06-29 14:23:38

UML建模分析步驟

2010-07-02 09:06:29

UML用例建模

2010-06-29 15:45:57

UML業(yè)務(wù)流程

2010-06-30 17:57:08

UML用例建模

2010-06-30 12:36:20

UML業(yè)務(wù)建模

2010-06-07 18:17:54

UML建模

2010-06-30 09:19:08

UML建模案例分析

2010-06-12 09:18:34

UML需求分析
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號