劉振華 石 忠


中圖分類號:TP311.5 文獻標識碼:A
內容摘要:需求獲取和需求建模是軟件工程的一個重要階段,關系到軟件系統設計的成敗。本文運用UML語言,以商品銷售管理系統建模為例,詳細描述了系統功能需求分析建模的過程和方法,有效指導了系統的軟件實現,解決了信息管理系統開發過程中經常遇到的由于系統分析不到位而造成的功能實現不全面的問題,以期為今后相關系統的建模提供借鑒。
關鍵詞:UML 面向對象 商品銷售管理系統 需求分析 需求建模
需求分析是軟件生命周期中軟件定義時期的最后一個階段,是軟件工程過程中的一個重要環節,需求獲取和需求建模是這一階段的重要任務。全面獲取軟件需求、準確理解業務邏輯和運用建模工具正確建立軟件的邏輯模型是軟件開發工作獲得成功的前提和關鍵,直接關系到工程的成敗和軟件產品的質量。
結構化分析方法和面向對象方法都明確指出正確獲取系統需求是最終成功開發軟件的前提條件,分析過程都是提取用戶需求的過程。UML(Unified Modeling Language)是一種標準的面向對象建模語言,可用于任何具有靜態結構和動態行為的系統建模,并且適用于系統開發過程中從需求規格描述到系統完成后測試的不同階段。使用UML 進行系統建模,就是使用面向對象的方法來分析系統,然后用可視化的模型將信息用標準的圖形直觀地顯示出來,以此建立面向對象的系統模型。
UML 規定了一整套建模元素和相應的可視化描述,用于描述、說明、可視化地構造軟件開發各個階段的產品。UML提供的類圖、用例圖、順序圖、包圖等,可以從不同側面、不同層次分別以靜態或動態地反映系統。本文以商品銷售管理系統為例,闡述了UML在面向對象建模中的實際應用。
基于UML的系統分析過程
開發一個軟件系統,需要對該軟件系統的功能要求、性能要求、可靠性要求和安全保密要求等進行全面分析,確定相關限制及同其他系統元素間的接口,定義軟件的其他有效性需求等。運用統一建模語言UML可以捕捉系統的功能需求,分析、提取所開發系統領域的類以及描述它們之間的合作概況,完成系統的面向對象分析OOA(Object Oriented Analysis),在此基礎上,對系統進行面向對象設計OOD (Object Oriented Design),可以大大提高成功開發的幾率。
(一)建立用例模型
用例圖是首先需要建立的模型,它定義了系統的主要功能和系統邊界,完全是從系統的外部觀看系統功能,并不描述系統內部對功能的具體實現,是其它視圖的核心和基礎。通過用例建模,描述對系統感興趣的外部角色及其對系統的功能需求。在用例圖中,角色代表觸發系統功能的用戶或其它系統,用例代表具體的功能描述。
1.確定系統角色。使用用例來分析系統,首先需要確定系統的參與者,即角色。角色是指所有與系統直接交互的人或事物,向系統輸入或使用系統的某些功能,但是不屬于系統,角色可能是某個系統或一類人等。通過對系統的需求分析,可以確定系統的主要角色有:系統管理員、經理、營業員、庫存管理員、采購員、會計等。
2.獲取用例。用例描述的是系統的功能實現,它揭示了人們如何使用系統。系統的用例圖如圖1所示。
3.繪制用例圖。
(二)建立靜態模型
UML的靜態建模機制包括類圖、組件圖和配置圖。其中,類圖表達了系統中類與類之間的關系,是UML中最重要、最基本的靜態模型,它在系統的整個生命周期內都是有效的。類圖是構建其它圖的基礎,沒有類圖就沒有狀態圖等其它圖,也就無法表示系統其它方面的特性。構成類圖最主要的元素是類和類之間的關系,包括關聯(Association)、泛化(Generalization)、組合(Composition)、聚合(Aggregation)等。進行類圖建模時首先要分析與系統功能相關的對象,進行類的區分、確定類的屬性和方法,然后分析各種類之間的關系,并用建模元素描述出來。在本系統中定義了許多類,如:供貨商類、商品目錄類、商品庫存類、職工類、銷售類、缺貨類、換貨類、維修類、進貨類等。圖2是庫存管理子系統的類圖。
(三)建立動態模型
系統的靜態模型不能清晰地描述對象的行為和職責,不能全面的反映系統的情況。要描述系統的動態行為,必須建立系統的動態模型。
順序圖表示一組對象之間的動態協作關系,反映對象之間發送消息的時間順序。下面以系統管理子系統中增加用戶這個用例為例,畫出順序圖,作為對用例的具體描述。增加用戶順序圖如圖3所示。
結論
需求分析是軟件工程的一個重要環節,需求獲取和需求建模是這一階段的重要任務。全面獲取軟件需求、準確理解業務邏輯和運用建模工具正確建立軟件的邏輯模型是軟件開發工作獲得成功的前提和關鍵,直接關系到工程的成敗和軟件產品的質量。應用UML對商品銷售管理系統進行需求建模,有利于開發人員之間在各個開發環節間確立溝通的標準,既可以加快設計者對于問題的理解,又能夠在系統描述方面減少語義差異,保證需求分析的正確性,提高了系統的可靠性、穩定性、可維護性、可擴展性和軟件開發成功的可能性。以開發更多的信息管理系統,早日實現信息管理的現代化、規范化和科學化。
參考文獻:
1.徐東升,袁飛云,陳軍.基于P2P網絡的農業信息管理系統.農機化研究,2006(10)
2.賈曉輝,韓愷,樂嘉錦.基于UML的系統需求分析.計算機應用與軟件,2007
3.陸惠恩編著.軟件工程.人民郵電出版社,2007
4.張海藩.軟件工程導論.清華大學出版社,2002