uml tools
Skip this Video
Download Presentation
UML Tools

Loading in 2 Seconds...

play fullscreen
1 / 20

UML Tools - PowerPoint PPT Presentation

  • Uploaded on

UML Tools. UML is a language, not a tool UML tools make use of UML possible Choice of tools, for individual or group use, has a large affect on acceptance of UML Choice of tool depends on: Usage context of the UML model Integration with existing tools Purchase and maintenance costs

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' UML Tools' - tania

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
uml tools
UML Tools
  • UML is a language, not a tool
  • UML tools make use of UML possible
  • Choice of tools, for individual or group use, has a large affect on acceptance of UML
  • Choice of tool depends on:
    • Usage context of the UML model
    • Integration with existing tools
    • Purchase and maintenance costs
    • Current acceptance of the users
uml 1 3 support
UML 1.3 Support
  • Full support for UML 1.3 is not always present
  • Minimum diagram requirement:
    • Use Case
    • Class
    • Colloboration
    • Sequence
    • Package
    • State
round trip
  • Reverse engineer – Extract UML model from source code
    • Useful as first step to generate UML model
    • Synchronize UML model with changes to source code
  • Forward engineer – Generate source code from UML Model
    • Automatic and accurate leads to greater tracability of UML model and source code
  • Difficulty in an iterative development cycle
class method access
Class & Method Access
  • The UML model contains knowledge of the classes and methods available which diagrams should utilize
  • Colloboration & Sequence Diagrams
    • Assign objects by selecting from a list of classes
    • Selection from a list of methods
  • Class Diagram
    • Selection from a list of classes in other packages or model
  • Full expression of the design for a system requires many different views, as in the multiple diagrams of UML
  • Visiting the different views in complex ways enhances the comprehension of the system
  • Interesting features may cross-cut the system requiring strong model navigation features
  • Navigation include zooming and panning features and views of the source code itself
diagram views
Diagram Views
  • UML model includes all details such as classes, methods, return values, associations, etc.
  • Diagram view should allow customization of these views such as
    • Show only partial method signature
    • Hide attributes and/or methods
    • Visibility based on access (public, private, protected)
    • Visibility based on the use of the entitiy, e.g., hide get/set methods
  • Provides a static view of the UML model without having to launch a modeling tool
  • Should include:
    • Pictures of each diagram
    • Navigation with hyperlinks
  • Must be automatically generated with little user input
  • Formats including HTML, SVG, etc.
exporting diagrams
Exporting Diagrams
  • Export to format for use in word processing document or web page, e.g., GIF, PNG, JPEG, SVG
  • Often necessary for use in reports to non-developers in the organization
  • Accurate print renditions are important
  • Diagrams are often larger than a single page requiring either multi-page printing or scaling
data modeling integration
Data Modeling Integration
  • Export of current model (or submodel) to another data modeling tools
  • Export of SQL to create tables a database
  • Export metadata to a data modeling tool
  • Synchronization between UML model and data model is essential
  • As in source code, versioning of the UML model is essential
  • Versions can serve as backups for lost or experimental changes to the model
  • A particular version of source code has a particular version of the UML model that it depends on
  • A modeling tool requires a higher-level of reliability than an office productivity application or even a source code editor
  • A “crash” of a modeling tool to a new user easily leads to a rejection of the tool and the process
  • As in a binary application, slight corruption of the model can lead to massive problems
  • Corruptions may not be easily visible and may only be discovered many versions later
  • All users must be able to use the tool on the platform of their choice, e.g., MS Windows, Linux, UNIX, MacOS
  • Platform for the deliverable product is also a consideration
  • Multi-Platform modeling tools
    • Permit change in platform used by developers
    • May permit change in platform used for deliverable product
  • Directly access an internal object model API to produce other artifacts
    • Spreadsheets for project management
    • Customized documentation
    • Generation of source code
    • Calculation of metrics on the model itself
  • Access the diagrams and the layout of the diagram itself
    • Custom layout and viewpoint algorithms
tool lifecycle
Tool Lifecycle
  • As a software product the modeling tool has its own lifecycle
  • Benefits of new versions:
    • Bug fixes
    • Performance enhancements
    • New features
    • Support for new formats
  • Changing modeling tools may be an expensive process that you want to avoid
repository support
Repository Support
  • Large projects require sharing of designs between developers, especially for colloboration on components
  • Each component may have many readers with one writer
  • A database can be utilized to provide the data sharing and concurrency control
  • Another approach is to build the repository on top of the source code itself
wish list research topics
Wish List (Research Topics?)
  • Integrated with editing tools
    • Navigation from context of diagram to focus of source code
    • Source code search features that include querying of the object model
  • Automatic generation of diagrams from trace data
  • Management tools
  • Metrics
tool examples
Tool Examples
  • Visio
    • Extension of drawing tools
  • Rational Rose
    • Full commercial tool with large number of plugins, special versions, etc.
  • ArgoUML
    • Open-source multi-platform
  • Originally a drawing tool
  • UML modeling tools on Profesional version under Software Tools
  • Department is in the process of buying a license
  • Conclusion?
rational rose
Rational Rose
  • Full-strength industrial modeling and development tool
  • Large number of add-ons, plug-ins, integration into all phases of lifecycle, e.g., testing, configuration
  • Availability of a large number of courses, training, etc.
  • Large cost
  • Conclusions?
  • Open-source Java project
  • Export to XMI
  • Commercial product “poseidon for uml” from gentleware (
  • Various editions
  • Conclusions?