海南軟件職業技術學院 鄧奉先 卓書堯
?
用例建模在實驗室管理系統需求分析中的應用研究
海南軟件職業技術學院 鄧奉先 卓書堯
軟件開發過程中需求分析起著關鍵性作用,準確把握用戶需求關系到開發項目的成敗。本文以高職院校實驗室管理系統為例,采用UML統一建模語言對系統進行抽象,使用用例建模技術展示系統的功能需求以及系統用戶與系統之間的交互關系,為后續的系統設計與實現打下基礎。
需求分析;UML;用例建模
需求分析是軟件開發過程中重要的一個部分,通過需求分析準確把握用戶需求,對一個項目開發的成敗起到關鍵作用。需求分析的任務是確定系統“做什么”,將用戶“做什么”的要求最終轉換為一個完全的、精細的軟件邏輯模型,并形成軟件需求規格說明書,準確地描述用戶的要求[1]。本文以高職院校實驗室管理系統為例,采用UML統一建模語言對系統進行抽象,使用用例建模技術展示系統的功能需求以及系統用戶與系統之間的交互關系,為后續的系統設計與實現打下基礎。
UML(Unified Modeling Language),是一種支持模型化和軟件系統開發的圖形化語言,UML支持從需求分析開始的軟件開發的全過程,為軟件開發的所有階段提供模型化和可視化支持。UML通過三類圖形建立系統模型:用例圖、靜態結構圖(包括類圖、對象圖、組件圖、配置圖)、動態行為圖(包括順序圖、協同圖、狀態圖、活動圖),這三類圖從不同的抽象角度實現系統的可視化。其中需求分析階段采用用例圖來描述用戶、需求、系統功能單元之間的關系,它展示了一個從系統外部觀察到的系統功能模型圖[2]。
用例(Use Case)代表用戶的需求,是表達用戶需求提供的一種方法,使用用例的方法來描述系統需求的過程稱為用例建模[3]。用例建模是站在用戶的角度考慮問題,把用戶需求和設計完全分離開來,用戶不需要了解系統的內部結構和設計,他們關心的是系統能提供的服務,也就是他們能使用的功能。用例建模用于需求分析階段,是系統開發者和用戶對需求規格達成的共識,驅動后續各個階段的開發工作。
2.1參與者(Actor)
參與者是與被定義系統發生交互的外部實體(指人、事物或者其他系統扮演的角色),代表系統的使用者或使用環境,它們以某種方式參與用例的過程。
2.2用例(Use Case)
用例表示一個或多個參與者為實現特定目標而執行的操作,它是對系統的用戶需求(主要是功能需求)的描述,表達了系統的功能和提供的服務。
2.3用例間關系
用例除了與其參與者發生關聯外,還可以與用例存在泛化、包含和擴展關系。用例泛化類似于類間的泛化,子用例表示父用例的特殊形式。包含關系是指包含提供者用例的行為到客戶用例的事件中。擴展關系是把新行為插入到已有用例的方法。
2.4用例圖
用例圖是一種UML技術,展示了參與者與用例之間的關系。用例圖主要包括參與者、用例以及它們之間的關系組合而成。
3.1功能需求
基于用例建模的需求分析是以用例為主導捕獲和描述軟件需求的過程,它提供了收集需求的框架和表達需求的方法[4]。這種方法區別于傳統的基于功能分解的方式描述系統功能,克服傳統方法容易混淆需求和設計的界限的缺點,它是系統分析人員和用戶反復溝通的結果,是兩者對需求達成的共識[5]。用例模型的建立是一個迭代的過程,在迭代的過程中不斷求精獲得功能需求。用例模型是由用例圖和對每個用例的詳細描述(即用例規約)組成的。
本文以高職院校實驗室管理系統為例,選取其中的用戶信息管理模塊描述用例建模的過程。
用戶信息管理子系統的使用人員包括實驗室設備的使用與管理人員,主要有設備科負責人、實驗室管理員,該功能實現用戶信息管理和賬號信息查詢。該功能記錄所有使用實驗室的設備使用人員,用戶在成功登錄進入系統后,用戶可以查詢賬號基本信息并能修改賬號密碼功能[6]。
3.2需求建模
(1)確定參與者:設備科室負責人、實驗室管理員。
(2)確定用例:查詢個人信息、修改個人信息。
(3)繪制用例圖:

圖1 用戶管理用例圖
用例圖的描述是總體上對系統功能的認識,用例規約是對用例圖中的每個用例詳細說明的文本描述,進一步說明系統的需求,是下一個階段系統設計的基礎,也是測試用例的重要依據。
(4)編寫用例規約
用例名:修改個人信息。
參與者:設備科負責人、實驗室管理員。
用例簡述:該用例規定了設備科負責人和實驗室管理員修改個人賬號信息的處理過程。
涉眾及興趣:設備科負責人、實驗室管理員希望能夠修改個人的信息。
前置條件:設備科負責人、實驗室管理員通過賬號和密碼驗證登錄進入系統。
事件流:
(a)基本流:①用戶在登錄進入系統后,選擇用戶管理功能模塊下點擊“修改個人信息”;②系統響應點擊事件,跳轉至修改信息界面;③用戶錄入要修改的信息,點擊“確定”按鈕;④系統對用戶的輸入數據進行驗證,若合法,則彈出提示對話框“已成功修改信息”。
(b)備選流:如果在用戶進行修改操作的過程中輸入的數據格式不正確,如用戶輸入手機號碼為10位,則提示“手機號碼為11位”;如果在修改操作過程中出現系統故障或斷電的情況,修改的信息將放棄本次存儲,保證數據的完整性和一致性。
后置條件:用戶修改后的信息正確錄入系統。
用例建模應用于需求分析階段,建模的過程是一個迭代和逐步求精的過程,完全站在用戶的角度考慮問題,從外部來定義系統的功能,不關心系統的設計與實現細節,將需求與設計完全分離開來。本文結合實例分析用例建模的過程,通過用例圖和用例規約描述系統需求分析,它作為用戶和開發人員溝通的一個有效手段,既有利于用戶理解系統提供的服務,又有效地降低待開發系統的復雜度。
[1]張海藩.軟件工程導論(第5版)[M].清華大學出版社,2009.
[2]蔡敏,等著.UML基礎與rose建模教程[M].人民郵電出版社,2006.
[3]謝星星.UML基礎與Rose建模實用教程.清華大學出版社,2011.
[4]孔垂煜.用例建模在軟件需求工程中的應用[J].福建電腦,2009(10).
[5]張秋余等.基于用例的需求建模方法[J].計算機工程與設計,2006(19).
[6]鄧奉先.高職院校實驗室管理系統的研究與開發[D].中山大學,2013.
鄧奉先(1985-),女,海南瓊海人,碩士,講師,研究方向:軟件工程、數據挖掘。
卓書堯(1980-),男,海南萬寧人,碩士,高級實驗師,研究方向:軟件工程、實驗室建設。