jUCMNav
Table of contents
- jUCMNav
- General Information
- i* Modelling Suitability
- 1. Does the tool allow SD modelling?
- 2. Does the tool allow SR modelling?
- 3. Does the tool allow working with SD & SR models jointly?
- 4. Does the tool allow the construction of the models graphically?
- 5. Does the tool allow the construction of the models textually?
- 6. Describe how the elements are modelled and their flexibility (i.e., the elements can be moved and reordered).
- 7. Describe how the dependency links are modelled and their flexibility (i.e., dependencies are modelled with straight lines that can not be redirected).
- 8. Does the tool allow automatic organization of the elements?
- 9. Other modelling facilities provided by the tool:
- 10. Does the tool check SD models?
- 11. Does the tool check SR models?
- 12. Other checks provided by the tool (i.e., cross validation between SD and SR models).
- 13. Does the tool allow working with two or more models at the same time?
- 14. Does the tool allow to group models in projects?
- 15. Does the tool allow working with two or more projects at the same time?
- 16. What are the other functionalities that the tool provides?
- Usability
- Maturity of the Tool
- 22. Rate the maturity of the tool from the user point of view:
- 23. Has the tool been used for any case study?
- 24. Has the tool been tested in large models?
- 25. Has the tool any drawback when working with very large models?
- 26. Which is approximately the maximum size of the model (in terms of actors and dependencies) the tool has been used for?
- Extensibility and Interoperability
- 27. Does the tool allow importing files?
- 28. Does the tool allow exporting files?
- 29. Does the tool allow importing/exporting the data through an XML format?
- 30. Is the architecture of the tool published?
- 31. Does the tool allow the addition of other elements outside the i* framework of the tool?
- 32. New functionalities can be added to the tool by means of:
- 33. Rate the maturity of the tool from for open development:
- 34. Is there any internal documentation for programmers?
General Information
Tool Name
jUCMNavVersion
5.4Group
School of Electrical Engineering and Computer Science, University of Ottawa, Canadahttp://www.site.uottawa.ca/
Developers on Ohloh
https://www.ohloh.net/projects/11712
Web page
http://softwareengineering.ca/jucmnav/Main Purpose of the Tool
jUCMNav is a graphical editor for ITU-T's User Requirements Notation (Z.151). URN is composed of two complementary notations: the Use Case Map (UCM) scenario notation and the Goal-oriented Requirement Language (GRL). GRL is based on the i* and NFR frameworks. jUCMNav is an Eclipse plug-in that provides editors for both notations, links between both views, analysis capabilities (including GRL model evaluations), and various import and export formats.i* framework supported
Goal-oriented Requirement Language (GRL, ITU-T Recommendation Z.151, November 2008 and October 2012), which is based in part on i*.Availability of the tool
- ( ) For i* modelling only
- ( ) For development only
- (X) Both
Programming Language
Java 1.6 for developmentPlatform Requirements
- Java 1.6 JRE. Eclipse 3.5 and above, with GEF and EMF, and MDT OCL
- Eclipse's Web services tools optionally required to connect jUCMNav to external data sources for monitoring.
Other technology needed
- !GraphViz for automatic layout. (optional)
Current state of the tool
Version 1.0 supported the UCM notation and auto-layout. Version 2.0 added GRL and evaluations. Version 3 added UCM execution. Version 4 added many important analysis and usability capabilities. Version 5 now supports:- UCM and GRL editing
- User-defined traceability links between GRL elements and UCM elements
- Many navigation features (based on links, and on definitions/references)
- On-demand expansion of related intentional elements / actors in GRL diagrams
- Copy/paste of selected elements inside a model, and (partially) across models.
- UCM analysis (traversal mechanism) based on UCM scenario definitions (initial context)
- GRL analysis (NFR-like propagation) based on GRL strategies (initial set of satisfaction levels)
- Six GRL analysis algorithms: quantitative, qualitative, two hybrid ones, quantitative with KPI functions/aggregation, and constraint-oriented.
- Integrated UCM/GRL analysis (GRL evaluations affect scenario traversal, and vice-versa)
- Visualization of model differences
- Visualization of differences between the impacts of two given strategies
- Visualization of trends based on groups of strategies
- Support for sensitivity analysis based on ranges for contribution values and satisfaction values
- Support for -100..100 and 0..100 goal satisfaction ranges
- Support for URN 2 strategy inclusions and contribution overrides
- Verification of user-defined semantic constraints (in OCL) on URN models
- User-defined stereotypes, with contextual pop-up menus
- Stereotypes and predefined OCL constraints to support a GRL profile for i*
- Two profiles for legal compliance
- Computation of user-defined metrics (in OCL) on URN models
- Structuring of related GRL and UCM diagrams in "concerns"
- Support of (qualitative and quantitative) Key Performance Indicators combined with GRL for business process modelling and monitoring
- Web service interface to read external data sources and feed them to KPI/GRL models, for monitoring
- Support for Z.151 standard XML file format (import and export)
- Partial support for Aspect-oriented UCM (notation, with aspect composition)
- Transformation of UCM scenarios to Message Sequence Charts
- Transformation of UCM models to the Core Scenario Model representation (for performance engineering)
- Report generation in PDF, RTF and HTML
- Export of GRL/UCM models in various bitmap formats
- Export of strategy results to .csv files
- Export of AoUCM models to the Reusable Aspect Model (TAM) framework
- Import/Export of GRL catalogues
- Import/Export of GRL strategies
- Multilingual interface (English and French for the moment)
- Bilingual models (model labels can switch between two languages)
- Integration with Telelogic DOORS 7 and above (for full requirements management)
Ongoing work
- Usability improvements
i* Modelling Suitability
1. Does the tool allow SD modelling?
Yes, but actors need to contain at least one intentional element. This constraint will be removed in the future.2. Does the tool allow SR modelling?
Yes.3. Does the tool allow working with SD & SR models jointly?
Yes. Actors can contain graphs linking intentional elements, which can in turn be used in inter-actor dependencies.4. Does the tool allow the construction of the models graphically?
Yes, using a palette in an Eclipse-based editor.5. Does the tool allow the construction of the models textually?
No. However, the native file formal is in XML (XMI serialization of the underlying EMF object model), and the Z.151 XML Schema is also supported. We also have a CSV import mechanism to construct GRL diagrams from a tabular description of goal models (expressed with Excel).6. Describe how the elements are modelled and their flexibility (i.e., the elements can be moved and reordered).
- Elements can be defined once in the model and referenced consistently in many diagrams, which helps with model scalability.
- Single or multiple elements can be moved and deleted easily.
- An auto-layout feature can be used.
- Intentional elements bound to actors can be moved/resized with the actor boundary.
- There is also a multiple undo/redo mechanism for all functionalities.
- Metadata (and stereotypes) can be attached to any single elements
- URN typed links can be used to connect any pair of elements
7. Describe how the dependency links are modelled and their flexibility (i.e., dependencies are modelled with straight lines that can not be redirected).
Links are multiple-point lines. They can be defined once and referenced/reused in many diagrams. They cannot be redirected.8. Does the tool allow automatic organization of the elements?
Yes.9. Other modelling facilities provided by the tool:
- Links to UCM scenarios
- Strategies for evaluations
- KPI descriptions and links to external data sources for monitoring.
10. Does the tool check SD models?
Yes, by construction. The tool GUI prevents the creation of syntactically incorrect diagrams. User-defined OCL rules can be created, selected and checked. Many are provided by default.11. Does the tool check SR models?
Yes, by construction. The tool GUI prevents the creation of syntactically incorrect diagrams. User-defined OCL rules can be created, selected and checked. Many are provided by default.12. Other checks provided by the tool (i.e., cross validation between SD and SR models).
Yes. Diagrams use multiple references to the same definitions, so diagrams are consistent by construction. User-defined OCL rules can be created, selected and checked. Many are provided by default.13. Does the tool allow working with two or more models at the same time?
Yes. Multiple files can be opened, and each file can contain multiple UCM/GRL diagrams. All can be opened at the same time. Copy/paste across models is also partially supported.14. Does the tool allow to group models in projects?
Indirectly, through Eclipse's project definitions, which can contain multiple URN files. The files are independent however.15. Does the tool allow working with two or more projects at the same time?
Yes, see above.16. What are the other functionalities that the tool provides?
- Strategy definitions, evaluations (for analysis), comparisons, trends, and import/export
- Import/Export GRL catalogues
- KPI modelling and monitoring
Usability
17. Rate the understandability of the user interface
- ( ) Internal use
- ( ) Ready for public use
- (X) Has been used publicly
18. Rate the quality of the user manual
- ( ) Inexistent
- ( ) Internal use
- ( ) Ready for public use
- (X) Has been used publicly
- ( ) incomplete
- ( ) obsolete
- ( ) not in English
- ( ) writing not polished
- ( ) others: please specify
19. Does the tool provides i* learning facilities?
No, but there are interactive tutorials and Flash demonstrations on the TWiki Web site.20. Does the tool provide any examples for the users?
Yes, on the TWiki Web site.21. Rate the difficulty of installing the tool
- ( ) Copy files and initializing paths
- (X) Copy files
- ( ) Executable installation file provided
The recommended approach is to go through the Eclipse update site.
Maturity of the Tool
22. Rate the maturity of the tool from the user point of view:
- ( ) Under Development
- ( ) Prototype
- ( ) Ready for public use
- (X) Has been used publicly
- ( ) incomplete
- ( ) occasional testing
- ( ) non-exhaustive testing
- ( ) non-persistent data
- ( ) poor efficiency
- ( ) not portable
- ( ) others: please specify
23. Has the tool been used for any case study?
Yes- Healthcare business processes (access to patient information, patient discharge, ...)
- Several laws and regulations (for compliance)
- Web application
- YKY (Your Key Knows)
- Pattern modeling
- Secure electronic access
- Teaching Assistant allocation system
- Wireless Intelligent Network features
- Crisis management systems
- Via Verde
- ...
24. Has the tool been tested in large models?
Yes (hundreds of GRL/UCM diagrams in one model)25. Has the tool any drawback when working with very large models?
None.26. Which is approximately the maximum size of the model (in terms of actors and dependencies) the tool has been used for?
- About 10 actors, 75 intentional elements, 23 GRL (+ 17 UCM) diagrams, and 110 links (32 dependencies, 49 decompositions, 29 contributions)
- More recent (but confidential) regulation models include hundreds of intentional elements.
Extensibility and Interoperability
27. Does the tool allow importing files?
Yes- Models in XMI (Eclipse)
- Models in Z.151 XML format
- GRL catalogues (sub-models, in XML) can be imported into an existing model
- GRL strategies
- Regulations expressed as a CSV table
- UCEd use case files, transformed to UCMs
28. Does the tool allow exporting files?
Yes- Models in XMI (Eclipse)
- Models in Z.151 XML format
- GRL catalogues (sub-models, in XML) can be exported
- Message Sequence Charts for visualizing UCM scenarios in a linear way
- Various bitmap formats (.png, .bmp, .gif, .jpg) for images
- DXL, for Telelogic DOORS version 7 and above
- Core Senario Model files, for performance engineering
- .csv files (Comma Separated Values), for exporting strategy results to Excel
- PDF, RTF and HTML for model documentation
29. Does the tool allow importing/exporting the data through an XML format?
Yes. The XMI format is the serialization of the EMF interpretation of the URN metamodel available at http://cserg0.site.uottawa.ca/twiki/bin/view/ProjetSEG/URNMetaModel. In addition, the Z.151 XML format is supported http://jucmnav.softwareengineering.ca/ucm/bin/view/ProjetSEG/Z151ImportExport30. Is the architecture of the tool published?
Yes, see documentation on-line at http://jucmnav.softwareengineering.ca/twiki/bin/view/ProjetSEG/WebHome31. Does the tool allow the addition of other elements outside the i* framework of the tool?
Yes, based on the NFR framework, the UCM notation, and GRL extensions for Key Performance Indicators.32. New functionalities can be added to the tool by means of:
- (X) PLUG-IN
- (X) Open-Source code
- (X) import & export XML
- ( ) NONE
33. Rate the maturity of the tool from for open development:
- ( ) Under Development
- ( ) Prototype
- ( ) Ready for public development use
- (X) Has been used for public development
- ( ) incomplete code
- ( ) no help provided
- ( ) non-persistent data
- ( ) non-exhaustive testing
- ( ) poor efficiency
- ( ) not portable
- ( ) no development installation facilities provided
- ( ) others: please specify
34. Is there any internal documentation for programmers?
Yes- (X) Requirements specification and design decisions available
- (X) Interface conventions
- (X) Code conventions
- (X) Full commented code
- (X) Examples (to be added soon)
- (X) others: Flash demonstrations, tutorials, Bugzilla database