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

字號:

對于大中型信息系統(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(The Unified Modeling Language,即統(tǒng)一建模語言)是一種編制系統(tǒng)藍(lán)圖的標(biāo)準(zhǔn)化語言,可以對復(fù)雜的系統(tǒng)建立可視化的系統(tǒng)模型,目前已經(jīng)被工業(yè)標(biāo)準(zhǔn)化組織OMG(Object Management Group)接受,一經(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í)踐之旅。
     許多讀者對圖書館圖書管理工作比較熟悉,主要是圍繞讀者、圖書和工作人員的借還書展開工作。我們先看看圖書館工作人員和部分讀者的需求。
     讀者來圖書館借書,可能先查詢書庫的圖書記錄。查詢可以按書名、作者、圖書編號、關(guān)鍵字查詢。查詢有兩種結(jié)果,如果查到則記下書號,交給工作人員,然后等候辦理借書手續(xù)。如果該書已經(jīng)被全部借出,則可做借書登記,等待有書時被通知。如果圖書館沒有該書的記錄,則做缺書登記。