Monday, 1 May 2017

How important is the tool choice?

I heard an interesting analogy recently from someone who was describing how your needs from a tool change over time. For example, when you first go to University you need a fork, knife and tin opener (and a glass). The things you cook may be limited but you learn about cooking over time. When you get your first house you may invest in a set of cooking utensils. If you really like cooking and you have the money you might splash out on some great knives.

It's a nice analogy but there are a few things to consider. Usually when one makes a modelling tool choice it's something you learn to live with because changing tools is difficult and people begin to invest their time, i.e. it's not simply the case of buying a new set of tools as there are people to consider (for example, the manager who stuck their head out to get the money approved).

While you might consider the modelling tool to be a set of knives there is also the bigger picture about the kitchen. For example, IBM doesn't sell knives, it sells kitchens hence a lot of people using a tool like Rhapsody are in big companies where the kitchen is in play, including wider issues such as interfacing with change management and requirements management tools.

I prefer to think of the analogy of a boat that you intend to tend you down river. You could choose a canoe or an inflatable raft. The chances however is that when you hit the rapids you won't have the luxury to change tools. You'll just have to hang on. That's not to say that your tool won't carry you there. You'll just need to take the rough with the smooth.

Something to remember though is that modeling tools are very different in their architectures. Some are repository-based, some file-based, some use Relational databases, some - like Jazz/Design Manager - use an ontological database. Some even have a file-based and repository-based option (Rhapsody, for example).

Chances are though that you won't find out the real differences until later. That's not to say that one tool is better than another. For example, when I was product manager for Artisan Studio one of the great things was how easy it was to collaborate on the same model as it had a Object-based database with very fine granular locking. This of course has benefits and disadvantages (e.g. what happens over a wide-area network?). Rhapsody has some really sharp aspects. Simulation is one. Configure-ability is another, or working with SCM.

The thing is whichever tool you choose, you're provably stuck with it for a while. I'd recommend therefore that you learn it very well (or get someone that does). Play to your tools strengths but don't be surprised if at some point you see others shooting down the river on different boats, at different times, or occasionally you find you need to portage a waterfall in a few years.

Tuesday, 18 April 2017

4 Different Representations for Use Cases in OMG SysML/UML

This 6 minute video uses one of the example models from my 3 day Mastering MBSE with OMG SysML and IBM Rational Rhapsody training. I actually speak!

It shows 4 different forms for how use cases might be represented in SysML or UML: namely structured text, an activity diagram, an interaction model with sequence diagrams, and as an executable state machine model. The cool thing is that we’re free to use whatever you like. Neither SysML nor the UML specify how a use case shall look. The main thing to consider is that use cases take on a journey from analysis to design! Through-out this journey we will meet different people with different needs and levels of knowledge. We need to consider their needs, recognizing that different stakeholders will have different needs, and that needs will change over time. After all there is little value in building an executable state machine of a system, if a simple review of the use case description can determine that it is not what the customer wants after all.

Monday, 17 April 2017

Rhapsody training updated to 8.2

Yep, it's official. In line with my goal to deliver the most up to date training, all my training has been updated to Rhapsody 8.2 (and what a nice release it is).

Sunday, 2 April 2017

Official launch of

To better align with the refined mission statement of the business which is "to make executable MBSE simple through the provision of consulting and training services", I've created a new website

The focus of this site ( will remain on generic Rhapsody training & advice while aspects  including the executable MBSE method, and updates to the supporting open-source SysML Helper profile, will be moved to the new website.

Friday, 31 March 2017

Feedback from Rhapsody MBSE training on 15-17th March

Past performance is best indication of future performance. This was the aggregated top 5 feedback from my last training course (where 5 = Strongly agree and 1 = Strongly disagree):

Monday, 27 March 2017

Rhapsody Tip #21 - Display options for ports incl. PortsSingleLabelLayout (Intermediate)

Rhapsody has many properties and display options for how ports are show. This video shows some of these, including a rather cool (and slightly hidden) PortsSingleLabelLayout property. Some advanced ideas are also shown, such as using a stereotype to convey new default properties to a diagram as well as basic usability such as showing or hiding ports from display. Enjoy!

Friday, 27 January 2017

Run as administrator when doing Rhapsody 8.2 installation

Rhapsody 8.2 was released on 8th Dec 2016.

For 8.2 to correctly install you should right-click the setup.exe and choose Run as administrator (it is not sufficient that the user has admin rights to ensure correct installation)

Note also that there is an iFix1 for Rhapsody 8.2 client available on IBM's Fix Central website. If you're forming a deployment package then it may make sense to include this (which is critical if looking to use Jazz/dm with related iFix1, but also to ensure you're up to date with fixes).