資源描述:
《基于用例驅動分析的軟件需求獲取方法》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、基于用例驅動分析的軟件需求獲取方法謝衛(wèi)宇,王恒山(上海理工大學管理學院,上海200093)摘要:用例驅動方法是當前國際流行的軟件開發(fā)過程之一,軟件開發(fā)所有階段的活動都是以用例為核心。本文在對軟件需求進行層次劃分的基礎上,探討了一個以用戶為中心,使用用例驅動分析技術依據(jù)用戶目標獲取不同層次的軟件需求的過程。關鍵詞:用例;執(zhí)行者;場景;業(yè)務需求;用戶需求;功能需求中圖分類號:TP31115文獻標識碼:ATheUseCaseDrivenAnalysisMethodofSoftwareRequirementsElicitationXIEWei2yu,WANGHeng2
2、shan(InstituteofManagement,UniversibyofshanghaiforScienceandTechnology,shanghai200093,China)Abstract:UseCaseDrivenApproachisapopularkindofsoftwaredeveloppingprocessesintheworldatpresent,andUseCasesarethecoreofallactivitiesineachphase.Thispaperexplainsauser2centeredprocessofsoftwarer
3、equirementselicitationonthebasisofrequire2menthierarchy,inwhichUseCaseDrivenAnalysisisusedtoelicitsoftwarerequirementsatdifferentrequirementlevelaccordingtouser′sgoals.Keywords:usecase;actor;scenario;businessrequirements;userrequirements;functionalrequirementssis)的軟件需求獲取(SoftwareReq
4、uirementElicitation)是以任務和用戶為中心的、迭代的增量式的需求開發(fā)方法。通過對系統(tǒng)用戶按角色(Role)進行劃分,明確各類角色的目標(Goal),用戶可以清楚地了解系統(tǒng)可以幫助他們完成什么任務以及是否滿足了他們的真正需求。而圖形化的表達方法和場景技術的運用,方便了分析人員與用戶進行需求獲取和驗證,從而有效地消除了期望差異。引言0軟件需求獲取(SoftwareRequirementElicitation)是軟件系統(tǒng)開發(fā)過程中最為困難也是最為重要的部分,只有真正滿足用戶需求的軟件產品才能為用戶接受,不能滿足這一點的產品不管采用了多么先進的技術對
5、用戶來說也是毫無用處的。根據(jù)Leffingwell在1997年的研究,軟件項目中40%~60%的問題都是在需求的獲取和分析階段埋下的禍根。傳統(tǒng)的結構化軟件開發(fā)方法在需求階段側重的是業(yè)務數(shù)據(jù)或者是業(yè)務流程,卻沒有把二者結合起來考慮,開發(fā)出來的產品結構復雜難以維護、可重用性差。面向對象技術把數(shù)據(jù)及其處理過程集成到類中,克服了結構化方法的缺點,但是忽視了用戶的需求。用戶才是軟件產品的最終使用者,以上需求分析方法都是以功能為中心而忽視了用戶的參與,通常會導致最終產品與客戶間的期望差異?;谟美寗臃治黾夹g(UseCaseDrivenAnaly2軟件需求及其分類在軟件系
6、統(tǒng)開發(fā)過程中,不同角色的人員對需求有著不同的理解。客戶所理解的需求就是使用軟件系統(tǒng)所要達到的經濟效益和工作效率方面的目標,這是一個高層次的、抽象的概念。系統(tǒng)分析員所考慮的1則是由客戶的高層次的需求導出的軟件系統(tǒng)在范圍、功能以及系統(tǒng)架構方面的需求。而對于具體的開發(fā)人員來說,軟件需求則變成了由系統(tǒng)分析員指定的軟件模塊的詳細設計要求,如輸入/輸出的數(shù)據(jù)格式、處收稿日期:2001212214作者簡介:謝衛(wèi)宇(19742),男,江蘇江都人,上海理工大學管理學院碩士研究生,研究方向:MIS、軟件工程、數(shù)據(jù)庫技術。為了保證各類人員在軟件需求上達成共識,避免期望差異,必須對軟
7、件需求按不同的角色進行劃分。軟件需求可劃分成三個不同的層次:現(xiàn)的行為,但是它不涉及具體的實現(xiàn)細節(jié),強調的是能做什么,而不是怎么去做。2.2用例驅動分析用例驅動分析的基本概念是執(zhí)行者和用例。通過識別并獨立分析每一個執(zhí)行者不同用例,可以了解系統(tǒng)的每一類用戶的要求和愿望,而不會沉溺于實現(xiàn)業(yè)務需求(BusinessRequirements)反映了組織機構或客戶對系統(tǒng)、產品高層次的目標要求。用戶需求(UserRequirements)描述了系統(tǒng)的直接使用者使用產品所必須要完成的任務。功能需求(FunctionalRequirements)、非功能需求(Nonfuncti
8、onalRequirements):功