OK. I will write the rest of this post in German. MESCONF is a German conference and people speak German there. You are always welcome to join, but I think it’s less useful if you don’t understand German.
Was ist MESCONF!?
Eine Deutsche Konferenz die es seit 2015 gibt. MESCONF steht für “Modeling für/for Embedded Systems Conference”. Es gibt ein link auf der Website wo alle infos stehen.
Was hat Qualität mit Architektur zu tun?
Bei der MESCONF 2023 stehen die praktischen Anwendungen und Erfahrungen im Vordergrund, die Anwender beim Einsatz von Modellierung für Architekturdesign und Softwareentwicklung gemacht haben. Es erwartet Sie eine ausgewogene Kombination aus Vorträgen und Raum für Diskussionen über Erfahrungen und Erwartungen.
Zum 7. Mal tagt diese jährlich stattfindende Konferenz und diesmal wird Sie folgendes erwarten:
Innovative Formate für innovativen Wissensaustausch
Vorträge
MBSE Reverse Engineering of the OPS-SAT Satellite – Peter Gersing / GPP
10 Jahre Modellierung mit UML im Serieneinsatz – Dr. Andreas Wagener / Faulhaber
The way to AI building machines – Jan Seyler / Festo
Die Logik einer logischen Architektur – Andreas Willert / SodiusWillert
Lassen sich Architekturen unterschiedlicher Engineering Disziplinen kongruent halten? Jan Richter / Siemens
AUTOSAR Adaptive mit Rhapsody – Vom System zu Implementierung und Test Hartmut Wittke / BTC
Open Space
Neben den Fachvorträgen bietet die Konferenz in Form von Open Space viel Raum für den direkten Erfahrungsaustausch zwischen Anwendern und Experten (angefangen von Methoden-Experten bis hin zu Werkzeug-Herstellern).
This month I finally had the chance to fly to Florida again. Long time no see! The IBM Think was in Orlando, and I needed to be there. So I booked the flight, and on a Friday, I took off to fly to Orlando via Boston. The plane took off late but would still arrive early, so I could leave the airport in Boston and meet with an old I-Logix friend who still works for IBM. For a few months, I have had a fantastic feature called “Global Entry.” That means you are allowed to enter the USA with just your passport. There is a separate entry with Electronic Passport Reading Machines. And… it works like a charm. I’m in within seconds. No more standing in line… OK, OK… also, no more stamps. But I can live with that.
This awesome feature comes with another real cool option: TSA Pre-Check. That means: no more unpacking laptop, no more shoes and belt off. So.. I’m happy. This meant I was out of Boston no more than 5 minutes after the plane landed. Very cool.
We went to a place called “Legal Seafood”. Well chosen name, all was legal 😉 Very good food!
After 3 hours, it was time to go back and catch the plane to Orlando. As always, I am surprised by how big the USA is…
Another 2.5-hour flight brought me to sunny Orlando. It was not so sunny anymore; it was late. So I picked up my rental and went to my hotel to catch some sleep. Luckily I had already slept on the airplane. Otherwise, it would’ve been a long, long day. I’m not used to that anymore…
Support
I received a question that I’d like to share with my readers. It was from another old I-Logix friend who now works for another company but is still using Rhapsody.
The question was
The Rhapsody C, C++ and Java code generators allowed you to add Requirements comments to generated code
E.g.
Is there anyway to change the way the requirement comment gets formatted?
We have some functionality in Polarion whereby if you checkin source code to your SCM system, we have a way of linking parts of that source code to Polarion work-items.
The problem is, our source code parser requires a certain format for the comment … hence my question if its possible to customize the way Rhapsody produces the requirements comment.
So far it just seems to do a // Realizes requirement NAME
Answer
Of course, you can! Rhapsody wouldn’t be Rhapsody if there wasn’t an intelligent way of doing this.
It’s called: Writer Templates. They are properties that tell the code generator what it needs to generate.
So I made a very small model, 1 Requirement, 1 Class with a “trace” dependency to that requirement and 2 configurations. One without changes and one wit han adapted Writer Template.
After the Think, I had a few days left to go to Fort Myers and enjoy Florida. 35º and sun, sun, sun…. Of course also seafood, unsweetened ice tea, and beach. And destruction. Yes. The last hurricane really left a lot of damage. Terrible to see.
When you read this, I’m already back. Flew back from Fort Myers via Atlanta to Schiphol. Everybody keeps telling me that it’s not cold… But I think different.
Have fun working with Rhapsody and I hope spring finally turns up in Europe…
Finally…. after almost 3 years there is new full release of Rhapsody. Yes, there have been iFixes, even a full release disguised as an iFix, but this is the real thing.
Where do I get it? You can download it from the IBM Website if you have the right login (P.A) or from our download portal if you are a customer with a valid support contract. If you have but you can’t login: just send us a mail on support@willert.de
What’s new?
ATG: Support of Visual Studio 2017 and Cygwin GNU g++ version 10
ATG now supports Visual Studio 2017 (in addition to Visual Studio 2012) and Cygwin GNU g++ compilers up to version 10.
ATG: Support of Cygwin compile environments with GNU g++ 64 bit
ATG now supports Cygwin compile environments also with the 64-bit version of the GNU g++ compiler (in addition to the 32-bit version).
TestConductor: Support computation of code coverage for Cygwin/MinGW GNU gcc/g++ version 10
TestConductor supports the computation of code coverage for Cygwin and MinGW GNU compile environments with gcc or g++ compilers up to version 10.
TestConductor: Support checking of invariant properties of the system under test
TestConductor can now check the invariant properties of the system under test. The checks are based on functions that can be implemented either manually or by using helpers and can be applied to one or multiple test cases. Each invariant check is performed during the whole test sequence of all applied test cases.
TestConductor: Support of test sets
TestConductor supports test sets that allow the grouping of multiple test cases in a test context. This feature allows the execution of several test cases in one sweep without the need to execute the whole test context with all owned test cases, including the generation of execution results and coverage information for a test set.
TestConductor: Improved support for Java models
TestConductor supports testing of Java models with similar functionality as C++ and C. Tests can be performed for Java code generated with or without Rhapsody animation.
XMI toolkit: Added the GraphicalProperties called LineThickness
A GraphicalProperties element called LineThickness is added to the XMI toolkit. With this element, thevisual rendering of lines on the diagram now can be exported and imported.
XMI toolkit: Added the flows realizing Association
In uml2, there is an InformationFlow that realizes the Association. This InformationFlow becomes a flow in Rhapsody. The link between the flow and the Association is now imported in Rhapsody to make the flows realize the association.
XMI toolkit: Added package in Object Model Diagram
The project packages can now be imported into Object Model Diagram.
XMI toolkit: Added a Select All/Deselect All button for units selection
Added a button to select or deselect all the Units.
XMI toolkit: Added a profile selection criteria in the export function
Profile that is not selected is no more exported during XMI export.
XMI toolkit: Renamed the Export Rhapsody Profiles option to Export extra data to support round trip
The current option name denotes whether to export or not to export the Rhapsody profile, but the choice is whether to export or not to export extra data, which is necessary to facilitate round-trip.
XMI toolkit: Tags with the value enum now reference to the InstanceValue instead of LiteralString
Previously, the tags with the value enum referenced to LiteralString, but now they reference to InstanceValue.
XMI toolkit: Added – MDReader is overriding UML2.4
UML 2.1 plug-in is able to correctly handle message’s signature from UML2.4, where the signature became changeable, instead of using MessageEvent. But an old fix inside MDReader overrides this behavior and forces it to have a SendOperationEvent, even in the case of a Signal.
RulesComposer: Updated open source lib version due to vulnerabilities
Some libraries are replaced or removed due to identified vulnerabilities. The consequence is that some components now have better abilities, but other features are unavailable such as the Eclipse Software Manager.
RulesComposer: Packaged Eclipse setup with Git version
As the Eclipse Software Manager is inoperable, the latest version of this component is installed.
RulesComposer: Updated features from Sodius Download centre
Installed the latest version of each integrated feature.
Installed the latest version of this feature, which is essential in current developments.
ADA Code Generator: Fixed CG and state transition
A state transition defect is fixed with And state transition. Now both sides of the And state are processed on a single event. The property Ada_CG.State.LegacyAndState allows generating legacy code. If the legacy model is opened, the legacy code is generated by default.
Profile not selected must not be exported during XMI export.
ADA Code Generator: Fixed CG animation compilation
Fixed animation of a class that inherits from an abstract reactive class with private visibility.
ADA Code Generator: Added GC New Macro
The macro $CodeGeneratedFileName can be now used in Ada_CG::File::ImplementationHeader property on separate operations.
ADA Code Generator: Added CG
New Macro- Ada_CG::Argument::DescriptionTemplateproperty can be used with the following keywords: $Name, $Direction, $Type, $Description.
ADA Code Generator: Improved RE
Improved the reverse of separate operations.
ADA Code Generator: Fixed RT
With advanced round trip mode, now the generalization stereotype is imported.
Additional Profiles
Rhapsody Unified Architecture Framework (UAF) 1.2 profileFor more information about the latest version of the Unified Architecture Framework Profile for Engineering Systems Design Rhapsody, see Rhapsody Unified Architecture Framework (UAF) 1.2 profile article.
It should be winter… but it’s not. At least not where I live ( on 52ºN an 7ºE ) But luckily, I can travel sometimes. I had to be in Munich briefly, just before Christmas. (Thanks for the invite, Franky!)
From the plane, I could already see the snow. I’m afraid that will be all the snow I see this winter.
I had a great steak at “El Gaucho”, recommended!
iFix4
IBM Engineering Systems Design Rhapsody 9.0.1 SR1 iFix004 is now available for download. This iFix addresses several issues, including:
OSLC links to requirements are lost if .rpyx is reloaded.
INCONSISTENT BEHAVIOR OF FLOWS BETWEEN PORTS ON BDD / IBDS
RHAPSODY CRASHES WHEN CHANGING AN ELEMENT BETWEEN TWO NEW TERM ELEMENTS.
To apply this iFix, please ensure that the system environment variable by the name TELELOGIC_LICENSE_FILE exists and points to the location of a valid license server or file. The installation process requires administrator privileges and will replace the existing log4j.properties file with a new log4j2.xml file. We recommend taking a backup of your log4j.properties files prior to installation.
This iFix can be installed using MSI installation for the 64-bit version of Rhapsody on Windows. If you have previously installed IBM Engineering Systems Design Rhapsody 9.0.1 iFix001, iFix002, or iFix003, you will need to first uninstall Rhapsody before installing this iFix.
After installation, users can take advantage of the integration with Engineering Workflow Management (EWM) or Rhapsody Model Manager (RMM) by installing the new integration plug-ins located in the <Rhapsody installation directory>\EWMIntegration folder.
We recommend all users to download and install this iFix to ensure optimal performance and stability of IBM Engineering Systems Design Rhapsody.
You can download the iFix from our download portal ( You need a valid login code which you get when you have a valid support contract )
Nex release will be 9.0.2; we are already working on that. And we are working on the next major version with a completely revised GUI!
Hard Rock Cafe
I noticed that there was an HRC shop on the airport!
Traveling has started again. I have already had a few trips, and I am now writing this from Lounge 52 on Schiphol, ready to fly to Detroit for the third time in 3 months. Everybody must have heard the airport, road, and train horror stories by now, and I can say: a lot of them are correct. Schiphol, my home airport, is really busy. I am privileged because I have an AirFrance/KLM Platinum Frequent-Flyer Pass. this gives you “Sky Priority” which means I can sneak in smaller queues for Check-In, Security Check and Passport Check. But lately I was with my son, who does not have that, and I had to join the full 2hr Security queue. Not funny. And apperently we were lucky, on some days the queues are longer than four hours and loads of people miss their flights. As an “Airport Professional” I always know ways to shorten the waiting time, and I do not have to search my way, I know the way. (Which on Schiphol is a lot easier than on other airports) That helps a lot but it is annoying to do something that used to take minutes but now takes hours. Also on the road the traffic jams are increasing and the trains are fuller (because shorter…) and sometimes even not driving due to staff shortage. Add to that the increased change that one or more of your flights can be cancelled at random and you have the ingredients for “Travel Roulette”
Back on the release
Also delayed for quite a while were the Rhapsody releases. It was not entirely COVID that caused this but also exchanging the outsourcing crew to another country and then back to internal development (Which I definitely approve of and, although it does not make me happy, willing to accept the long delay ) But finally, now is the time for the first update in a long time. The mechanism has changed. The new release is an iFix. IBM is changing to a more agile release schedule, there will be more often releases in the future. Same for the extensions, we already have a 3 month release schedule. And teh extensions are available as iFixes
Naming Confusion
A while ago, IBM decided to rename all of its products. It happens more in large companies where decisions are not made by the people that deal with stuff but by the ones without a clue… Sometimes there are new “Buzzwords du Jour” because marketing wants that. Well, it is what it is. Just ignore it (I do) The annoying thing is that it is challenging to find Rhapsody on FixCentral. It is known under different names:
Name
Versions
Telelogic Rhapsody
< 7.4.0.1
Rational Rhapsody
7.5 – 8.4
IBM Engineering Systems Design Rhapsody (Rational)
9.0 –
IBM Engineering Systems Design Rhapsody (IBM Engineering)
9.0 –
So search for the correct names when you need an iFix.
9.0.1 iFix3
That is the name of the latest iFix. You must de-install the current 9.0.1 Rhapsody since it is a “new” install. The installer will check and will inform you about that.
Back in Europe
So the last trip was again challenging. The flight to Detroit was OK (Just 2 hours late, that’s peanuts nowadays) The next day to New Orleans was cool. I was sitting next to an older lady that had not flown for 30 years. Her last flight was a horror flight, and she went back by car.
I was busy comforting her and explaining the noises of an aircraft, and at the same time, realizing I just ignored a lot of stuff myself because I’m used to it. I never realize that I equalize the pressure when starting or landing. We arrived in New Orleans on time, and I like to think I made a difference for somebody.
The flight back was not as cool. I received a text message when I was already trying to sleep. ( KLM and Delta are on my VIP list… they can disturb me in all iPhone Focus Modes) The first flight from New Orleans (MSY) to New York (JFK) was delayed (How do they know that a day before???), which left me with a 59-minute step-over time. Not enough. So i started calling with the KLM Platinum Hotline, they couldn’t help me, the flight was handled by Delta and I was checked-in. Then back to the Delta Website and I could reschedule my flight to take a later flight from New York. All good. Until I was, again, disturbed by a text that promissed a further delay. (…. many curse words censored ) So I, again, rebooked. Just to find out after an hour that the flight I selected now had an 8 hour stop-over. Not Good. So I rebooked again (At 5 am) to a flight via Detroit. Losing my Economy Premium seat and the KLM flight (Delta hates KLM Platinum passengers) And then finally I slept for like 2 hours.
That flight went, and I managed to upgrade my seat, at least to have a free seat next to me. But sleeping just wasn’t in it. Too much noise. So after a second night with just 2 hrs of sleep i was lightly tired. But at home.
I still like travel. And Zoom/WebEx/GoToMeeting/Skype//.. are fine instruments. But they do not replace the need for an occasional face-to-face(F2F) meeting. That is always worth the trouble.
So happy upgrading with Rhapsody
Walter van der Heiden ( wvdheiden@sodiuswillert.de )
Nutzen Sie unseren Automotive Day, um von den Erfahrungen Ihrer Peers zu profitieren und Ihre eigenen Ideen und Fragen einzubringen. Unsere Kunden Mercedes, Continental, Hella und Marquardt werden über ihre Projekte berichten, und gemeinsam mit unseren Partnern IBM, Method Park und pure-systems ergänzen wir Erfahrungen aus der erfolgreichen Anwendung von Prozessen, Methoden und Tools.
have you ever had that? Ready installing, looking at the result and then think @#$%^&*() i forgot something?
Mo problem, you can run the installer again! But unfortunately you’ll see that this doesn’t help you.You can select repair (Which just replaces all files you had already installed), uninstall (Yes, cool, then I can start over) or modify. The last option looks promising but it only allows you to install extra add-ons. not change your existing installation. So de-install? Not so fast, my friends…
Re-using the code has interesting side-effects..
Apparently IBM has re-used the code of the installer. So when you select “Modify” you will notice a “Back” button. Press it and you see that you go back in your installer and you actually CAN change stuff!
The “re-install” process.
So. That’s it for today!
Happy re-installing Rhapsody!
Walter van der Heiden (wvdheiden@sodiuswillert.com)
WHAT??? Why would you want to uninstall??? Hold your horses…. It happens… You might want to re-install, install in a different sequence, or… IBM withdraws an iFix. As happened this week when the Rhapsody 9.0.1 iFix2 was removed from the FixCentral.
FixCentral
You download your Rhapsody versions from IBM. But apart from new versions there are also iFixes, these do not offer new functions but bug fixes.
How do I get an iFix?
At the FixCentral Website from IBM. https://www.ibm.com/support/fixcentral/
I only see new/old versions of Rhapsody?
That is because the name of Rhapsody has changed. Since 9.0 the name is IBM Engineering Systems Design Rhapsody. Older versions (until 8.4) were called “Rational Rhapsody”. You have to enter the correct name in the search field.
FixCentral for old and new Rhapsody Version
How do I download an iFix?
You can figure it out, I think, on the website. There are 3 possibilities to download, HTTP, FTP and DownloadDirector. The last one is comfortable but you have to install java for it and then run a java installer, that is not aways a possibility.
How do I install an iFix
When you have downloaded the correct iFix, unpack it and click on the setup.bat file. The older iFixes had a “By Hand” iFix, you had to unpack that over your Rhapsody install directory and then run a batch file to update the registry.
Do I have to install all iFixes?
If you are about to install an iFix: only install the latest one. It will contain all previous iFixes as well. (Cumulative)
How do I uninstall an iFix
Normally you should not have to do that but when you have to (When IBM redraws an iFix like 9.0.1 iFix2): IBM states that you use the Windows Uninstall Feature. ( https://www.ibm.com/support/pages/how-uninstall-rhapsody-interim-fix ) I have not found the iFix in there, i could not de-install it. So IMHO there is only one solution: uninstall Rhapsody and re-install. (And if necessary after that instal the right iFix. Sorry.
That’s it:
Happy modeling with Rhapsody!
Walter van der Heiden (wvdheiden@sodiuswillert.com)
Finally, the MESCONF will be….. online again… Luckily it is still packed with awesome stuff! The rest of this BLOG entry will be in German….
Model based Engineering – Hype oder Hope?
Das erfahren Sie auf der MESCONF – DIE Konferenz zum Thema Modellierung
Treffen Sie Top-Experten, Anwender und Toolhersteller. Lassen Sie sich inspirieren, bringen sie Ihre ganz konkreten Fragestellungen ein und diskutieren Sie Lösungen mit gleichgesinnten Praktikern und Experten. Machen Sie sich schlau über aktuelle Trends, Methoden, Tools und Lösungen. Ein Tag rund um das Thema Modellierung von Embedded Systemen im Systems und Software Engineering sind ein gut angelegtes Investment in Zeiten des rapiden Wandels und der Komplexitätsfalle.Zum 6. Mal tagt diese jährlich stattfindende Konferenz und diesmal wird Sie folgendes erwarten:
Innovative Formate für innovativen Wissensaustausch
Fachvorträge
1 – “Mehrwert von Modellierung und Simulation für die Produktentwicklung” Dr. Wladimir Schamai – Head of Modeling & Simulation (M&S) bei Danfoss
2 – “Und wo soll ich anfangen?” Wie Einführung von MBSE in Organisationen klappen kann Prof. Dr. Andreas Vogelsang – Professor für Software & Systems Engineering am Institut für Informatik der Universität zu Köln
Open Space
Neben den Fachvorträgen bietet die Konferenz in Form von Open Space viel Raum für den direkten Erfahrungsaustausch zwischen Anwendern und Experten (angefangen von Methoden-Experten bis hin zu Werkzeug-Herstellern).
Die Konferenz findet dieses Jahr online und nur an einem Tag statt – 23.09.2021 – Seien Sie dabei!
Warum MESCONF?
Wenn bei einer konstruktiven Tätigkeit mehr und mehr Zeit für Änderungen aufgewendet wird und eine Vielzahl von Beteiligten in Kontext gehalten werden müssen, macht es Sinn, erst einmal Modelle zu erstellen. Das ist ganz und gar nicht neu und hat in Folge immer zu mehr oder weniger großen Revolutionen geführt. 3D in der Mechanik und VHDL in der Mikroelektronik sind gute Beispiele dafür. Aber Hoffnung alleine hat niemals geholfen. Beim Modellieren von Systemen und Software wird vieles falsch gemacht und wer glaubt, der Komplexität mit Simplifizierung zu begegnen, darf keine Revolution erwarten.
Einige Experten und Anwender haben sich darüber Gedanken gemacht und die konkreten Erkenntnisse in einem „Modeling Manifest“ ( http://mdse-manifest.org ) definiert und dokumentiert.Was sich darin einfach liest und logisch anhört, ist in der Praxis aber auch häufig nicht so gradlinig umsetzbar und es stellen sich immer wieder neue Fragen.
Deshalb gibt es die MESCONF, eine Konferenz mit hohem Fokus, genau auf diese Problematik hin zugeschnitten und hocheffizient. Am 17. September 2020 treffen sich Experten mit Anwendern, um „best-practices“ auszutauschen oder auch ganz neue Erkenntnisse zu gewinnen.
M2M is a product from SodiusWillert that helps you to save large amounts of time. It converts Rhapsody models made with certain profiles to other profiles. For example, taking a SysML model and convert that to an AUTOSAR model.
How does it work?
It is not really magic… actually you do your own magic. M2M uses a ruleset to define what elements are moved to which other elements, for instance: take a SysML Block and transform it to an AUTOSAR Block. Now that would be an easy one. You can also make it more complicated. E.g.: You can define that a SysML Block with stereotype “SWC” will be converted into an AUTOSAR SWC.
That is already more interesting. But it doesn’t stop there. The rules allow you to define multiple elements to convert to one element or one element to convert to multiple elements (1:1, 1:m, n:1, m:n) But then the fun really starts because you can also add functions (written in JavaScript) to do pre-conversion checks (“Do I want this specific element to convert?”) or post-processor actions (:e.g. “Rename this element” or “Create other elements on other places”)
You only sync once?!?
This opens a lot of posibilities to transfer model element between models from different profiles. Using M2M in combination with DiffMerge opens even more possibilities. This helps you in keeping different models up-to-date, no matter where you make changes. So you can have multiple different views on your System under Development, a Systems Engineering view, an AUTOSAR view, a Software View and maybe even a source-code view of the used BSW (Basic SoftWare) all of them subject to changes but all of them in sync thanks to M2M.
Put the power where you need it.
Some models have certain possibilities that others don’t have and vice-versa. This means that you should model in the profile that offers you what you need. SysML is perfect to model requirements and use-cases and link them, the AUTOSAR model gives you feel insights in all parts of your software and the UML model has a bit of both (and state machines…) M2M allows you to add your own information exactly where it fits best.
I want to have this!!
That is cool. Contact me to get an evaluation version and an evaluation license.