For Rational® XDE users, the Rational UML modeling products in the Rational Software Development Platform present a new paradigm for code and model development. Get started by reviewing the basic differences between code-model synchronization, visual editing, and transformation capabilities.
In XDE synchronization, model and source code files are kept in a synchronized state by initiating a synchronization operation. The result is an updated model from modified source code, or updated source code from a modified model. Source code and model elements are distinct and separate, and are loosely linked for the purposes of synchronization. For software engineers and architects that work primarily in the code, synchronization is sometimes less than ideal because it presents obstacles for those who have little experience modeling with the Unified Modeling Language (UML).
Rational Software Architect and Rational Systems Developer move beyond the concept of synchronization and offer the following key features:
UML modeling and visual editing
The visual modeling feature most familiar to XDE users is UML modeling. Develop your project from the top-down through UML analysis and design models. Visualize your code with dynamically generated topic diagrams as well as manually created class diagrams. Also, make modifications to diagrams that are directly reflected in the code. Visual editing also includes tools that boost productivity and support users that approach software development with a bottom-up or code-first approach.
Transformations
Get code from your models using UML-to-code transformations. Benefits include an accelerated development lifecycle and improved software quality by reapplying the same solution for common problems that occur throughout a system. Transformation services help systems become more reliable and consistent.
Enhanced UML modeling support enables the top-down design approach to software engineering by providing analysts, architects, and others an environment to do analysis and design using use case, class, and deployment diagrams. Visual editing support provides the bottom-up developer with features that enable design on the go. Transformations bridge the gap between UML models and code, as well as between models at different levels of abstraction.