In the just introduced Version 7.0 of its Rhapsody Model-DrivenDevelopment Environment, Telelogic Inc. has introduced a number ofenhancements that it thinks will significantly improve embeddedsoftware developer productivity.
Among other things Rhapsody 7.0 enables a code-centric workfloweasing
A powerful new feature found in Rhapsody 7.0 is the
With this integration, there is automatic synchronization betweenthe code and the model, with easy navigation between the code and themodel, allowing developers to adopt MDD at their own pace.
Since developers can continue to work at the code level, there is ashortened learning curve with the MDD tool and almost zero ramp-uptime. As an additional benefit, Rhapsody automatically producesdocumentation and enables graphical analysis of the design.
Rhapsody 7.0 also supports the Code Respect initiative to betteralign the structure, formatting and syntax of reverse engineering codewhich, when combined with code visualization, round tripping anddynamic model/code associativity makes it easier to integrate handwritten code into the model.
Also, Rhapsody 7.0 provides automated base aware Difference andMerging (DiffMerge) feature, useful for parallel development processesand reducing integration time.
To enhance the development process for organizations implementingthe Software Product Line (SPL)approach, Rhapsody 7.0 provides numerous flexibility and processautomation features focused on assisting developers and engineersimplementing SPL.
The SoftwareEngineering Institute (Carnegie Mellon University, 2006) defines asoftware product line as a set of software-intensive systems that sharea common, managed set of features satisfying the specific needs of aparticular market segment or mission and that are developed from acommon set of core assets in a prescribed way.
SPL always has reuse in mind, with domain engineers creating a setof core assets for the product line that are later used by applicationengineers to implement the final products.
To ease the transition to an MDD-based SPL approach, Rhapsody 7.0allows domain engineers to capture their core reusable assets usingeither domain specific models or UML.
Variability within these core assets is defined using enhancedstereotyping and profiling capabilities allowing a developer toautomate and customize much of the process of developing a specificproduct from the core assets utilizing a new Java API, enhancedrules-based code generation and extensions to the command lineinterface.
A new welcome window now appears when the Rhapsody tool is opened.This widow provides navigation to user resources such as samples,documentation, tutorials and release contents. The content of thiswindow is user configurable, removing the “blank window syndrome” andhelps users get up to speed and start working with Rhapsody morequickly.
Many of the tab windows, including the description, properties,relations and tags tab can now be broken out into separate windows anddocked in the general workspace.
In addition, these windows and the features window can be set toeither freeze on the currently selected element or to update when newelements are selected by pinning or unpinning the window.
Rhapsody 7.0 also includes a number of C and Java-specific developerrefinements. The look and feel of the MDD environment is optimized forthe C developer, with full user control over the code generatoremploying rules-based technology.
The user interface has been tailored to allow C programmers todesign at the graphical level using concepts and terms that map to theC programming language, thereby providing a natural look and feel tothe typical embedded C developer.
For the Java developer, the Rhapsody Java code generation has beenupgraded to support JDK 5 (1.5) generics and type safe containersallowing Rhapsody users to produce code from a wider range of modelingconstructs.