Presentation is loading. Please wait.

Presentation is loading. Please wait.

Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.

Similar presentations


Presentation on theme: "Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007."— Presentation transcript:

1 Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007

2 Requirement Engineering with URN: Integrating Goals and Scenarios 2 Outline Context and Motivation Alternatives Considered Contributions –Integrated URN Metamodel –Integrated URN Tool –GRL Catalogues –URN Links –GRL Strategies –Evaluation Algorithm –Actor Labels –Links Between URN and External Requirements Validation Future Work

3 Requirement Engineering with URN: Integrating Goals and Scenarios 3 Context URN combines two views: –Use Case Maps (UCM) for operational scenarios over architectural components –Goal Requirements Language (GRL) to model goals, requirements, alternatives and rationales. Tool support for each view, but in isolation No integrated solution for complete URN model –Prevents exploiting URN to its fullest extent

4 Requirement Engineering with URN: Integrating Goals and Scenarios 4 Motivation Combine goals and scenarios for expressing and reasoning about functional and non-functional requirements Develop a tool to support both views Provide model analysis features Support reusability of models Support links with other types of requirements

5 Requirement Engineering with URN: Integrating Goals and Scenarios 5 Goals

6 Requirement Engineering with URN: Integrating Goals and Scenarios 6 Tool Alternatives

7 Requirement Engineering with URN: Integrating Goals and Scenarios 7 Contributions of the Tools Common Metamodel Graphical Completeness UsabilityReusing Developed Models Goal and Scenario Analysis Links with External Requirements New Tools GMEMakeSome Negative Some Positive Hurt XMF MosaicMakeBreakHurtHelp Hurt Rational Software Architect MakeBreakHurtSome Negative Help Telelogic Tau G2MakeHurtSome Negative Some Positive Help Existing Tools GRToolBreak Some Negative UnknownSome Positive Hurt OME/OpenOMEMakeBreakSome Negative HelpSome Positive Unknown TAOM4EMakeSome Positive HelpUnknownSome Negative Unknown SanDriLaBreak Some Negative Hurt jUCMNav 1.0Help

8 Requirement Engineering with URN: Integrating Goals and Scenarios 8 Integrated URN Metamodel 2 metamodels: Abstract and Implementation. –Split the core URN concepts (for the standard) from graphical layout information and elements/attributes with no semantic impact (for the tool). 4 main packages: URN, URNcore, GRL and UCM –URN package defines links between UCM and GRL –GRL and UCM packages define the constructs of both sub-views –URNcore package now defines common concept of the notation Diagrams Nodes Links Containers Container References

9 Requirement Engineering with URN: Integrating Goals and Scenarios 9 jUCMNav GRL Editor in jUCMNav Takes advantage of the Eclipse views (hierarchical/graphical outline, properties, resources) Improved usability: drag & drop editing, group manipulation, undo/redo, autolayout, … Multiple URN diagrams in the same model Element definitions/references (actors and intentional elements) Only allows creating syntactically valid models

10 Requirement Engineering with URN: Integrating Goals and Scenarios 10

11 Requirement Engineering with URN: Integrating Goals and Scenarios 11 GRL Catalogues Export GRL definitions for reuse in other models Catalogue Catalogue name, Description, Author Intentional Element Id, Name, Description, Type, Decomposition Type Decomposition Name, Description, Source id, Destination id Contribution Name, Description, Source id, Destination id, Contribution type, Correlation Dependency Name, Description, Dependee id, Depender id

12 Requirement Engineering with URN: Integrating Goals and Scenarios 12 Integrating UCM and GRL: URN Links Provide traceability links between elements of both sub-views Improve consistency between GRL and UCM Used during model analysis Supported Links –Intentional Elements  Responsibilities –Intentional Elements  Components –Intentional Elements  Maps –Actors  Responsibilities –Actors  Components –Actors  Maps

13 Requirement Engineering with URN: Integrating Goals and Scenarios 13 GRL Strategies User defined sets of initial evaluations Allow comparing the results of intentional element evaluations Implemented using the Scenarios and Strategies view Numerical interpretation of the satisfaction levels Evaluation of the impact of strategies on the operational and architectural aspects, using URN links jUCMNav supports exporting GRL strategy results to comma-separated value files (CSV)

14 Requirement Engineering with URN: Integrating Goals and Scenarios 14 Quantitative Versus Qualitative Evaluation Quantitative satisfaction levels offer granular representation of evaluations Evaluations between -100 and 100

15 Requirement Engineering with URN: Integrating Goals and Scenarios 15

16 Requirement Engineering with URN: Integrating Goals and Scenarios 16 Evaluation Algorithm New propagation algorithm for numerical evaluations Supports cycles and automatic conflict resolution Use all intentional element link types to calculate the evaluation –Decompositions: Standard AND/OR graph –Contributions: Contribution types convert in numerical values Use a configurable tolerance parameter Result is normalized between -100 and 100 if it is out of bounds –Dependencies: Minimal evaluation value of the dependees

17 Requirement Engineering with URN: Integrating Goals and Scenarios 17 Algorithm Implementation Strategy design pattern Use Eclipse extension points –New algorithms can be added easily public void init(EvaluationStrategy strategy, HashMap evaluations); public boolean hasNextNode(); public IntentionalElement nextNode(); public int getEvaluation(IntentionalElement element);

18 Requirement Engineering with URN: Integrating Goals and Scenarios 18 Actor Labels Actor global satisfaction labels Help visualize tradeoffs between stakeholders. Computed using priority and criticality of intentional element references bound to actors Priority = Low Criticality = None Priority = None Criticality = High

19 Requirement Engineering with URN: Integrating Goals and Scenarios 19 URN Models and DOORS Complement textual requirements using URN Create links between URN models and external requirements Provide synchronization mechanism to support evolving requirements Use jUCMNav export mechanism to create DOORS eXtension Language (DXL) scripts Extend the UCM DXL library in DOORS to support integrated URN models

20 Requirement Engineering with URN: Integrating Goals and Scenarios 20 Metamodel of GRL in DOORS

21 Requirement Engineering with URN: Integrating Goals and Scenarios 21

22 Requirement Engineering with URN: Integrating Goals and Scenarios 22 Validation GRL editor implemented with undoable commands containing preconditions and postconditions (Java assertions). More than 100 automated test cases. 2 case studies (web application and credit card gateway). Used by research groups and 35 students in a requirements analysis course. 2 publications at SAM 2006.

23 Requirement Engineering with URN: Integrating Goals and Scenarios 23 Future Work Combine GRL strategies and UCM scenarios to measure the impact of strategic decisions on architectural model Develop new analysis algorithms for GRL strategies (such as top-down algorithm or actor maximization algorithm) Develop a graphical comparison mechanism between two URN models Implement the change report in the DXL library to support the integrated URN model


Download ppt "Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007."

Similar presentations


Ads by Google