UML業(yè)務建模實例中如何作需求分析
本節(jié)向大家介紹一下如何進行UML業(yè)務建模實例分析,主要以圖書館管理系統(tǒng)為例向大家將講解,希望通過本節(jié)的介紹你對如何進行UML建模分析有一定的認識。下面是相關內容具體介紹。
UML業(yè)務建模實例分析
對于大中型信息系統(tǒng),很難直接進行需求分析設計,需要借助模型來分析設計系統(tǒng),根據(jù)系統(tǒng)調研數(shù)據(jù),建立起目標系統(tǒng)的邏輯模型。
在軟件工程的歷史中,很長時間里人們一直認為需求分析是整個軟件工程中最簡單的一個步驟,但在過去十年中越來越多的人認識到它是整個過程中最為關鍵的一個過程。假如在需求分析時分析者們未能正確地認識到客戶的需求的話,那么最后的軟件實際上不可能達到客戶的要求,或者導致需求的頻繁變更,而軟件無法在規(guī)定的時間里完工。
對UML業(yè)務建模實例進行分析時在需求分析階段,要對經(jīng)過可行性分析所確定的系統(tǒng)目標和功能作進一步的詳細論述,確定系統(tǒng)“做什么?”的問題,最終建立起目標系統(tǒng)的邏輯模型。
首先是獲得當前系統(tǒng)的物理模型。物理模型是對當前系統(tǒng)的真實寫照,可能是一個由人工操作的過程,也可能是一個已有的但需要改進的計算機系統(tǒng)。首先是要對現(xiàn)行系統(tǒng)進行分析、理解,了解它的組織情況、數(shù)據(jù)流向、輸入輸出,資源利用情況等,在分析的基礎上畫出它的物理模型。然后抽象出當前系統(tǒng)的邏輯模型。
邏輯模型是在物理模型基礎上,去掉一些次要的因素,建立起反映系統(tǒng)本質的邏輯模型。接下來建立目標系統(tǒng)的邏輯模型。通過分析目標系統(tǒng)與當前系統(tǒng)在邏輯上的區(qū)別,建立符合用戶需求的目標系統(tǒng)的邏輯模型。最后補充目標系統(tǒng)的邏輯模型。對目標系統(tǒng)進行補充完善,將一些次要的因素補充進去,例如出錯處理等。
UML(TheUnifiedModelingLanguage,即統(tǒng)一建模語言)是一種編制系統(tǒng)藍圖的標準化語言,可以對復雜的系統(tǒng)建立可視化的系統(tǒng)模型,目前已經(jīng)被工業(yè)標準化組織OMG(ObjectManagementGroup)接受,一經(jīng)推出便得到許多著名的計算機廠商如Microsoft、HP、IBM、Oracle等的支持,也在逐步開始應用到需求分析過程中。
在使用UML建立當前系統(tǒng)邏輯模型過程中,初學者通常會遇到一些問題:
1.什么時候真正需要UML業(yè)務建模?什么時候用例模型獨立存在?
2.在進行精確的業(yè)務建模時能用哪些UML圖形?如何知道是否用順序圖或者交互圖?
3.業(yè)務模型如何涉及到其他模型(如領域模型,用例模型等等)呢?如何有機地組織這些模型?
本文將通過UML業(yè)務建模實例圖書館管理系統(tǒng)這個簡單而典型的實例來進行一次UML需求分析實踐之旅。
許多讀者對圖書館圖書管理工作比較熟悉,主要是圍繞讀者、圖書和工作人員的借還書展開工作。我們先看看圖書館工作人員和部分讀者的需求。
讀者來圖書館借書,可能先查詢書庫的圖書記錄。查詢可以按書名、作者、圖書編號、關鍵字查詢。查詢有兩種結果,如果查到則記下書號,交給工作人員,然后等候辦理借書手續(xù)。如果該書已經(jīng)被全部借出,則可做借書登記,等待有書時被通知。如果圖書館沒有該書的記錄,則做缺書登記。
辦理借書手續(xù)時先要出示圖書證,沒有圖書證則去申請圖書證。如果借書數(shù)量超出規(guī)定,則提示“借書數(shù)量超限,不能繼續(xù)借閱”。工作人員登記借閱人信息、借閱的圖書信息、借出時間和應還書時間。系統(tǒng)自動修改書庫的圖書記錄、讀者庫信息。
當一位讀者還書時,工作人員根據(jù)圖書證編號,找到讀者的借書信息,查看是否超期,如果已經(jīng)超期,則進行超期處罰。
如果圖書有破損、丟失,則進行破損處罰。清除借閱記錄,同時系統(tǒng)自動查看是否有等待借閱登記,如果有則發(fā)出通知,修改書庫記錄,該書設置為已預訂狀態(tài),否則設置為可借狀態(tài)。
圖書采購人員進行圖書采購時,要參考各類圖書的庫存數(shù)和借閱率,注意合理采購。如果有缺書登記則隨時進行采購。正在采購的圖書組成一個采購中書庫。
采購到貨后,進行驗收,編號,同時加入圖書庫,修改采購中書庫,并且查看訂閱庫,發(fā)出到書通知,并且已經(jīng)修改書庫的圖書記錄為已預訂狀態(tài)。
借書登記是當欲借的書被借空后,讀者自愿選擇的一種操作,它應該記錄讀者名和聯(lián)系方式,一旦有這本書后可通知讀者。
到書通知,當讀者預訂的書來到之后,按照讀者給出的聯(lián)系方式發(fā)出通知。
缺書登記是當讀者需要的書庫內查詢沒有記錄時,將此信息轉入缺貨庫,通知采購員采購。
圖書注銷,如果圖書丟失或舊書淘汰,則將該書從書庫中清除。#p#
根據(jù)需求描述整理一張需求表:
對UML業(yè)務建模實例進行需求分析時首先要識別出系統(tǒng)的參與者,在簡單的圖書館管理系統(tǒng)中,可以劃分出兩種參與者:讀者和管理員。當然,根據(jù)業(yè)務的復雜程度,參與者也可以進行細分,比如讀者可以再分為學生讀者、教師讀者、校外讀者,管理員根據(jù)業(yè)務和權限的不同可以再細分為庫房管理員、借還書操作員、系統(tǒng)維護人員、圖書館管理人員等不同角色。在這里,為了簡化處理,我們只列出了讀者和管理員。對參與者描述如下:
(1)讀者
描述:讀者可以借閱、預定、歸還物理書刊,可以對書籍和個人信息進行查詢,可以取消預定,可以提出辦卡申請。
示例:持有借閱卡的任何人和組織。
(2)管理員
描述:圖書管理員對系統(tǒng)進行維護,包括讀者信息的創(chuàng)建、修改、刪除,書刊信息的維護,條目信息的維護,還有系統(tǒng)信息的維護。
示例:圖書管理員。
通過識別的參與者,對需求進一步分析,將業(yè)務需求進行分解,獲得每個參與者的使用用例。在本例中,我們可以得到以下用例:
1.書籍借出:提供借閱物理書刊的功能。
2.書籍歸還:提供歸還物理書刊的功能。
3.讀者辦卡:提供為讀者辦理借閱卡的功能。
4.預定書刊:提供對某一個種類的書刊的預約功能。
5.取消預定:提供對預定進行取消的功能。
6.書籍查詢:為讀者提供網(wǎng)上的書籍查詢功能。
7.信息查詢:為讀者提供信息查詢的功能。
8.讀者信息維護:提供讀者信息的錄入、修改、查詢、刪除的功能。
9.書刊信息維護:提供物理書刊的錄入、修改、查詢、刪除的功能。
10.條目信息維護:提供書刊條目的錄入、修改、查詢、刪除的功能。
11.系統(tǒng)信息維護:提供對系統(tǒng)的參數(shù)的設置。
12.登錄:管理員需要先登錄才能進入系統(tǒng)。請期待下節(jié)關于UML業(yè)務建模實例介紹。
【編輯推薦】