Bug管理系統UML2.0建模例項(一)

Liuwei-Sunny發表於2013-12-16

      本例項是Sunny給企業做UML內訓時所用教學例項之一,是一個較為完整的UML建模例項,可供大家學習參考!

 

1.專案概述
       隨著軟體專案規模和複雜性的增大,有效跟蹤和管理專案中存在的缺陷Bug變得越來越重要。每一個軟體企業都需要妥善處理軟體中的缺陷,這將直接關係到軟體過程質量與軟體產品質量,但並非所有的軟體組織都知道如何有效地管理自己軟體中的缺陷。在軟體缺陷管理(Software Defect Management)中,軟體缺陷的分類和管理非常重要,因此軟體缺陷管理工具的開發和使用將在現代軟體開發中發揮重要作用。本系列文章將使用UML2.0對Bug管理系統進行全程建模,該系統名為缺陷管理系統(Bug Management System, BMS),並按照軟體工程的標準,提供一套完整的解決方案。

 

1.1 需求分析
       一個完備的bug管理流程通常包括如下幾個步驟,如圖1-1所示:

                                                                                                    圖1-1 bug管理流程圖
       圖1-1是bug管理的最基本流程,而實際的bug管理要更加複雜,不同的步驟由不同的角色負責,如提交bug、驗證修改後的軟體是測試人員的工作,分析和定位bug以及修改相應的軟體是分析設計人員以及開發人員的工作,在整個過程中專案經理還需要對bug資訊進行統計和監控。在BMS的需求分析過程中,我們發現bug管理流程的某些步驟可以通過一個bug管理系統來完成,一方面可以提高bug的處理速度,另一方面便於對bug資訊的跟蹤與統計。
       通過對bug管理流程和實際使用過程的需求分析,BMS系統基本需求如下:
       (1) 系統預設管理員帳號為Admin,初始密碼為Admin。BMS系統管理員在登入系統後可修改密碼,系統管理員的主要工作包括增加相關人員初始資訊,包括帳號、初始密碼和專案角色,專案角色包括測試人員、開發組長、開發人員和專案經理;另外,系統管理員還可以刪除人員資訊。
       (2) 其他使用者在登入後方可使用該系統,除了帳號和專案角色外使用者可以修改各項個人資訊,包括真實姓名、聯絡電話和電子郵箱等。
       (3) 測試人員可以利用BMS提交自己發現的bug資訊,提交的資訊包括bug型別、bug嚴重程度、bug發生的位置(如所處功能模組、測試介面的URL或名稱等)、測試環境描述、使用的測試工具和版本資訊、測試用例資訊(包括測試資料、期望結果和實際結果等資訊)、附加描述資訊、附件(螢幕截圖或錄影等)等。測試人員將盡量填寫完整這些資訊以便最大程度幫助開發人員重現bug以便除錯,在系統資料庫中需要記錄bug的狀態。
       (4) 測試人員將bug提交給開發組長,開發組長在檢視bug資訊之後可將bug分發給相關開發人員,系統可以記錄開發組長的bug檢視和分發情況。
       (5) 開發人員可以登入系統檢視bug詳情,系統可以記錄開發人員是否已檢視bug詳情。在對bug進行修復後,更新bug修復資訊(修復內容、修復時間、修復人等),將更新的bug資訊傳送給測試人員,系統將修改bug的狀態,然後通知測試人員以獲取最新版本進行驗證。
       (6) 測試人員如驗證無誤,可關閉該bug;否則可重新返回開發人員修復。無論驗證是否通過,測試人員需更新bug測試資訊(測試結果、測試時間、測試人等)。
       (7) 專案經理可以隨時檢視bug統計報告,對bug資訊進行分類彙總與實時跟蹤。

 

1.2 開發技術
       本系統採用三層B/S結構進行開發,包括客戶端瀏覽器層、Web伺服器層和資料庫伺服器層,系統整體架構如圖1-2所示:
 

 

                                                                                                  圖1-2 BMS整體架構
       在實際部署和使用過程中,如果資料量較小,可以將Web伺服器和資料庫伺服器合二為一。B/S結構具備部署和升級簡單等優點,系統安裝、修改和維護全在伺服器端解決,使用者在使用系統時,僅僅需要一個瀏覽器就可執行全部的模組;同時B/S結構還提供了一種異種機、異種網聯機、聯網解決方案,開發團隊與測試團隊可以基於不同的作業系統平臺和網路環境進行協同工作。
       BMS系統開發技術包括:採用Java EE平臺,使用MVC架構,運用JSP + Servlet + JavaBean等技術來實現系統功能,資料庫採用MySQL,並使用Navicat 8 for MySQL對MySQL資料庫進行視覺化管理,伺服器中介軟體使用Tomcat 6.5,開發工具使用MyEclipse 8.0。

 

 

2.系統分析
       在BMS的系統分析階段,我們使用了用例圖、順序圖、狀態圖和活動圖等UML圖形構造系統的分析模型,對系統進行深入的分析,明確系統的開發目標,更好地回答了“做什麼”的問題,各種圖形相互補充,從不同的角度對系統進行全面的分析。通過使用UML方法,我們構造了系統的分析模型,具體分析工作如下:

 

2.1 用例模型
       在BMS系統中,我們首先使用使用者檢視即用例圖來將系統功能需求圖形化,通過找出執行者與用例來明確和細化系統功能。
       UML用例建模流程如圖2-1所示:
 

 
                                                                      圖2-1 UML用例建模流程圖
       BMS的執行者包括系統管理員、開發組長、開發人員、測試人員和專案經理,每個執行者對應的功能有所差異。系統提供主要功能包括人員資訊的管理和bug資訊的管理,因此用例主要包括對人員資訊和bug資訊的增刪改查等操作。

 

2.2 BMS用例圖
       通過對系統進行分析,BMS用例圖如圖2-2所示:
 

 


                                                                               圖2-2 BMS用例圖

【作者:劉偉    http://blog.csdn.net/lovelion

相關文章