Rational Software Architect Wiki
MarianaAlu 110000BNM1 1,245 Views
MattiasMohlin 270003TR77 908 Views
Yesterday the RSARTE team delivered the first version of a plugin that provides a number of utilities for fixing subtle and hidden problems in an RSARTE model. Over time we have identified a number of such problems in models which have been migrated from Rose RT (often caused by limitations or bugs in the version of the Rose RT importer that was used in the migration). There are also examples where bugs in older versions of RSARTE have introduced problems in a model, problems that are hidden and hence can be really tricky to detect and fix without some kind of tool support.
The Model Fixup plugin can initially be used for checking if your model contains any problems that can be fixed by the plugin. If such problems are found, you can then use the plugin for correcting the model.
This first version of the plugin provides 5 different fixup utilities. You are encouraged to install the plugin and at least use it for checking if your model is affected by any of the known problems.
Go here to download and read more about the Model Fixup plugin. It's a good idea to bookmark that page and visit it occasionally, because as we learn about new kinds of model problems we will deliver updated versions of this plugin.
RogerSnook 100000G8AQ 938 Views
Speak up - please take our 1-question survey what languages, if any, do you use with RSA?
MattiasMohlin 270003TR77 947 Views
The latest version of RSARTE is now RSARTE 9.1.2 CP1-2015.37. In this release we have improved the Navigation History feature in the Project Explorer. If you are not already familiar with this useful way of navigating around in the Project Explorer, you may first want to watch this video Navigation history in the Project Explorer and read the chapter "Navigation History" in RSARTE Navigation.
It is now possible to navigate both backwards and forwards in the navigation history. If you press the button in the Project Explorer tool bar
you are taken to the previous element in the navigation history. That is, you navigate backwards in the history, just like before. Note that the command is now called "Navigation History Go Back". However, sometimes you may want to also navigate in the other direction. For example, assume you have a long list of elements in the navigation history and happen to navigate backwards one time to much. Then instead of continue to navigate backwards until you find the element you are looking for it's much faster to instead navigate one step in the forward direction. This is now possible by means of a command called "Navigation History Go Forward". To use this command you must assign a keybinding to it in Preferences - General - Keys. Here is an example where we have assigned a keybinding to both these navigation commands so that it becomes easy to navigate in both directions:
Another improvement in this feature is that now it's also possible to assign a keybinding to the command that clears the navigation history ("Clear History"). For example:
For a complete list of changes included in this release, see Included Changes.
MattiasMohlin 270003TR77 855 Views
The next cumulative delivery for RSARTE 9.1.2 CP1 is now available for download. In addition to bug fixing and performance improvements a few new features are also included.
Hidden structure view in the Compare/Merge editor
The Compare/Merge user interface has lots of buttons and views to fit in a relatively small window. To save some space the Structure view that appears when you do a sub-compare or sub-merge is now hidden by default. This view is intended to show the structure of code snippets, but since code snippets often cannot be parsed correctly by CDT in isolation, the view often is just empty (or contains a single "Translation Unit" node). If you want to show the Structure view you can do so by enabling the preference General - Compare/Patch - Modeling Compare/Merge - Show structure view in sub-merge sessions.
Comment texts visible in the Project Explorer
The text of comments is now visible in the Project Explorer. If the comment has multiple lines, only the first line is shown. Rich text annotations are ignored.
Showing comments for internal transitions
Comments for internal transitions can now be shown in the internal transitions compartment for a state symbol or state chart diagram. To make them visible enable the preference UML Development - Real Time - Diagrams - State Chart - Show Internal Transition Comments inside Compartment. This preference can also be set on individual state chart diagrams using the Appearance tab of the Properties view. The comment is shown on a separate line before the transition name and is preceded by '//'. For example:
Avoid warnings from gcc for unused variable 'rtg_list'
A macro ATTR_UNUSED is now generated for the variable 'rtg_list' which is not used by generated code, and often neither used by user code snippets.
unsigned char ATTR_UNUSED rtg_list;
This macro is defined in the unit header file (by default called UnitName.h). For gcc this macro expands to the compiler directive __attribute__((unused)) which avoids a warning to be reported for this variable. For other compilers the macro expands to an empty string.
Using external C++ libraries together with the preference "Detect source dependencies automatically"
When this preference is set the C++ code generator automatically computes the set of source elements to transform, based on the top capsule and which other model elements it depends on (directly or indirectly). This scheme now works better when C++ external libraries are used. All code for prerequisite TCs will be built with the settings specified in the top executable TC, and external libraries will be linked with the application as usual.
MattiasMohlin 270003TR77 769 Views
Today we release the next cumulative delivery for RSARTE 9.1.2 CP1. We would like to bring your attention to the changes mentioned below.
An experimental feature is a feature that is still under development, but which we decide to include anyway in a release. By doing so we can get early feedback from users, which we can take into account when completing the feature. Experimental features are by default hidden in RSARTE, to avoid distracting users who don't need to use these feature. To enable experimental features you can choose one of the following methods:
2) Set a system property in eclipse.ini: -DRSARTE_ENABLE_EXPERIMENTAL=true
Experimental features are marked in the user interface by means of the word "EXPERIMENTAL". You are encouraged to try out experimental features and provide us feedback about them, but expect that these features may change in future releases of RSARTE.
Detect source dependencies automatically
Some users reported that they preferred the original implementation of this feature, where source dependencies specified in prerequisite TCs were added in addition to the ones that are detected automatically based on analyzing the top capsule. Therefore we have now restored the original implementation of this feature, and introduced an additional preference which can be set by users who prefer to ignore source dependencies specified in prerequisite TCs. This new preference is an experimental feature:
Reordering internal transitions by means of drag and drop
It is now easier to reorder internal transitions that are shown in a compartment on a state symbol or a state chart diagram. Previously you had to use the dialog "Sort/Filter Compartment Items" for doing this, but now you can simply reorder the transitions by drag and drop within the compartment.
We know of one limitation for this feature; if you drag the transition by clicking inside the outline rectangle there is no visual indication of where it will be dropped when you move the mouse. Avoid this by dragging it by clicking on one of the edges of the outline rectangle. We are working on fixing this issue.
Improved highlighting for selected lines
To make it easier to work in big cluttered diagrams where lines and labels may overlap each other we have introduced an improved visualization for selected lines. This visualization is controlled by the preference UML Development - Real Time - Diagrams - Highlight Connections:
Currently this feature only applies to lines in state chart diagrams (transition lines), composite structure diagrams (connector lines) and sequence diagrams (message lines).
Saving files automatically before running a transformation
It's now possible to save files automatically before a transformation is run. Only the files that affect the transformation get saved. Enable this feature by setting the preference UML Development - Save affected files before running transformations. Note that this feature is experimental for the time being.
15:43:23 : Silent save before running transformation was performed for "/qwqwqw/CPPModel.emx"
MattiasMohlin 270003TR77 801 Views
The latest and greatest RSARTE release is now RSARTE 9.1.2 CP1 2015.46. For this delivery I'd like to mention the following improvements:
Java API for compare/merge operations
RSARTE now contains a new API plugin com.ibm.xtools.umldt.rt.api. This plugin provides an API for invoking compare/merge operations programmatically. In the future the plugin will be extended to also contain other public APIs for RSARTE.
Improved feedback when reordering internal transitions and comments by drag/drop
The visual feedback you get when reordering items in an internal transitions compartment has been improved. It's now easier to see exactly where the moved transitions or comments will be inserted.
Hiding items in the internal transitions compartment
Comments and internal transitions shown in an internal transitions compartment can now be hidden without having to use the Sort/Filter Compartment Items dialog. Select the comments and transitions you want to hide, then perform the context menu command Hide Compartment Items.
Creating state comments
It's now easier to create state comments to be shown in the internal transitions compartment of a state or state chart diagram. You can create such comments either by the context menu command Add UML - State Comment or by using the popup toolbar that appears for the state or internal transitions compartment:
Highlighting non-visible labels
The highlighting for selected lines and their connected symbols that was introduced in the previous release has now been further improved. It's now possible to also highlight labels for the selected line, and its connected symbols, when these labels are outside the visible region of a diagram. Currently this is an experimental feature, which is enabled by setting the preference UML Development - Real Time - Diagrams - Highlight Connections - Show label highlight even if the label is not visible.
Highlights for non-visible labels contain a hyperlink. If you click it the diagram will scroll to make the label visible. This feature is hence useful as a means for navigating around in big diagrams with long lines. Here is an example:
The RSARTE EGit integration now supports squash merge. Previously the commit IDs were not correctly computed when using squash merge, but this has now been fixed.
MattiasMohlin 270003TR77 783 Views
Today we release RSARTE 9.1.2 CP1 2015.49 which will be the last delivery for the year. As usual there are lots of improvements, and I'd like to mention the following:
Java API for compare/merge and EGit operations
We have extended the API based on the feedback we got from the previous release:
Internal transitions compartment for state chart diagram
The representation of the compartment in the presentation model was modified to avoid backwards incompatibility with previous releases. This means that it's now possible to use this new compartment, and still be able to open the model in an older version of RSARTE. Therefore this feature is no longer experimental.
The product feedback utility helps us at IBM to improve the quality of RSARTE. It can collect reports on quality problems such as slow performance, hangings, crashes and internal errors, and send these reports to us. See this article for information on how to install, configure and use the product feedback utility.
Easier to edit Property Sets code snippets from the Properties view
If you want to edit several Property Sets code snippets for the same element it's convenient to do it from the Properties view where you can see the overview of all available code snippets. Previously when the "Edit" hyperlink was clicked in order to edit one of these code snippets, the opening of the code editor would lead to that the General tab in the Properties view got focus. Now this has been fixed so that the Property Sets tab stays active while you edit the code snippets.
Different ways of initializing multi-dimensional arrays
You can now choose between two different ways of initializing multi-dimensional arrays:
The choice is controlled by a new preference in UML Development - RealTime C++ Transformations:
MattiasMohlin 270003TR77 677 Views
The first release of RSARTE for the year is now available: 9.1.2 CP1 2016.02. You will notice that, except for a bunch of bug fixes, there are not so many news in this release compared to the previous one. The reason is that our development team now is spending most of their efforts on the upcoming version 10.0, which we expect should be ready approximately by the end of March.
The main new feature in this release is something we call "context sensitive library builds". It is an evolution of the work for detecting source dependencies automatically, and it's controlled by a preference UML Development - Real Time C++ Transformations - Context sensitive library builds. When this preference is enabled, full libraries for prerequisite TCs will not be built. Instead, only object files for those parts of the libraries that are actually used by source elements of the built TC will be produced. It is common that an executable only uses a small subset of everything that is present in its libraries, and by only building the parts of libraries that are really used, the total build time can be significantly reduced.
Note that "context sensitive library build" is currently an experimental feature, and further improvements are being worked on for the next release.
MattiasMohlin 270003TR77 569 Views
Another three weeks have passed and it's time for a new release of RSARTE. The release contains an updated version of RSARTE 9.1.2 CP1 which now is the latest and greatest RSARTE version which we recommend for production use. We also release an evaluation version of the upcoming RSARTE 10.0. Needless to say you should only use this version for testing.
RSARTE 9.1.2 CP1 2016.05
If either of these preferences are set, the prerequisite libraries of a transformation configuration will be built in a context sensitive way, meaning that only those elements of the libraries that are referenced by source elements of the built transformation configuration will be built. They will be built into object files which are directly linked with the executable or library that corresponds to the top-level transformation configuration.
1_PREREQ_OBJS_LISTFILE = 1.prereq_olist
1_LIBS = @$(1_PREREQ_OBJS_LISTFILE)
Note that this feature only is supported when using inclusive makefiles and GCC.
RSARTE 10.0 2016.05
This is where the RSARTE development team now spends most of its efforts. For more information about the recent progress on this new major version please see this presentation.
MattiasMohlin 270003TR77 680 Views
We were slightly delayed, but today we are finally ready to deliver another version of RSARTE 9.1.2 CP1 which we recommend for production use. We also deliver an updated evaluation version of RSARTE 10.0. Remember to only use it for evaluation and testing.
RSARTE 9.1.2 CP1 2016.08
The implementation of the "context sensitive library" build feature has now been finalized. The feature is still marked as experimental in this release, but in the next delivery we expect it to be a standard (non-experimental) feature of the product.
The object files that are produced when building a TC in a context sensitive way are now put together into a library rather than being linked directly with. This avoids the problem with getting too long command-lines (something which we previously attempted to solve with the gcc specific @file argument). By placing the object files in a library we now have a solution that works on all supported compilers. Note that these libraries will be limited versions of the regular libraries that are built for a prerequisite TC since they only will contain object files for referenced elements. These libraries are therefore placed in the output folder of the TC that is built.
Other than this, the new version of RSARTE 9.1.2 CP1 also contains fixes for a few bugs that have been discovered.
RSARTE 10.0 2016.08
The following have been done in this version:
In addition we have continued to improve the quality of the new version and it should now be very close to that of 9.1.2 CP1.
ElenaS 270005VGDC 724 Views
We have released new sprint drops for the week 2016.11. Several improvements were made for RSA RTE 9.1.2 CP1, and we continue to work on evaluation of new RSARTE 10. You already can test new eclipse and RSARTE functionality but it is not final release, so do not use it for production.
RSARTE 9.1.2 CP1 2016.11
A new experimental option has been added to transformation configurations: "EXPERIMENTAL Include unit header file without unit subdirectory path" for both C and C++ transformations. The unit header file is included in each generated C++ file. By default the #include directive looks like this:
Also added support for $(TCONFIG_NAME) in "Unit subdirectory", "Unit name", "Target configuration name" for C and C++ transformations. So, for example, you would be able to use $(TCONFIG_NAME) as target configuration name and Unit subdirectory and get unit files generated into the target configuration folder.
RSARTE 10.0 2016.11
During this sprint we also released new version of ModelFixup plugin which is 4.0, new fixup has been added there as well as several fixes made.
ElenaS 270005VGDC 636 Views
Long-awaited RSA RTE 2016.14 has been released today. Major event of this sprint is finalization of first official version of RSA RTE 10! It is now the production quality. We also continue to work on improvement for RSA RTE 9.1.2 CP1 since main users are still extensively using this version.
RSARTE 9.1.2 CP1 2016.14
Main focus of this sprint was improvement of stability for key functionality of our tool: compare/merge, code generation and diagrams. We have fixed several issues reported by our customers. Impressive number of incidents received with our Feedback module has been analyzed and 14 of them were fixed.
Also we continue evaluation of "Context sensitive library build" feature and improved sources closure analysis, added a couple of new information messages.
2) Dependencies to nested class are considered as dependencies to enclosing class, and enclosing class is also included into the sources closure:
3) If an element has got NativeType defined then its UML type is ignored for context sensitive closure.
However, some more testing remains to complete this work, so hopefully this feature will be fully available during one of our future releases.
RSARTE 10.0 2016.14
This is the day that we have been waiting for a long number of sprints. Team efforts ultimately resulted in the first official release of RSA RTE 10 version. During this sprint we have been working on finalization of licensing, installation and performance issues for this major version. You can now check all advantages that goes with new eclipse Mars.2(1) and new CDT versions. Apart from that, we remind you that some of the functionality became optional to install (TargetRTS, Connexis, Feedback module, EGit integration, Sketcher, CORBA) and some were removed (RTJava, UAL), several RSA components were also excluded from our installation. All this together brought performance acceleration of main user workflows: starting from installation, models loading and ending up in code indexing.
Several things remain to be incomplete such as integration with ClearCase CTE. This work is planned to be finished during one of upcoming sprints.
We strongly recommend to follow your complete pre-deployment test routines before using this version in production.
MattiasMohlin 270003TR77 588 Views
RSARTE 9.1.2 CP1 2016.17
Except for this, 9.1.2 CP1 only saw a few bug fixes in this release. Our goal is to keep 9.1.2 CP1 as stable as possible and most of our efforts will instead be spent on version 10.
RSARTE 10.0 2016.17
Our theme for this release of RSARTE 10 has been to improve "Compare/Merge". In particular we have worked on the usability of the Compare/Merge. Many model changes are now easier to understand due to improved grouping of changes and better change descriptions.
Also, there are two new preferences (in General - Compare/Patch - Modeling Compare/Merge - UML Compare/Merge):
Conflict suppression strategy: Defines which version of a change to select for conflicts that can be suppressed. By default the local version from your workspace (left contributor) will be selected. The corresponding command-line option is -CPconflictSuppressionStrategy=left|right
Pure presentation conflicts: Set this preference to "Ignore" if you don't care about conflicts in the presentation, for example position of symbols or routing of lines. Such pure presentation conflicts will then be suppressed. The corresponding command-line option is -CPconflictSuppression=notation=on|off
MattiasMohlin 270003TR77 428 Views
Our sprint 2016.20 has ended and as a result there are now two new versions available for RSARTE: 9.1.2 CP1 2016.20 and 10.0 2016.20. Both are recommended for production usage.