Monday 27 November 2023

IBM Engineering Rhapsody Tip #107 - Create a use case package structure

This video represents training Module A on creating use case package structures using the Executable MBSE Profile, a GPL-licensed extension to Rhapsody development by MBSE Training and Consulting Ltd to enhance SysML with method-aware helpers. 

The Executable MBSE Profile takes a mosaic approach by adding new term packages which have specific purposes.. The methodology is designed to support team-based development in Rhapsody with an awareness of both DOORS Next external requirements and configuration of Rhapsody projects using Rhapsody Model Manager and the IBM Jazz platform.

Tuesday 24 October 2023

Interesting paper comparing BPMN with Activity Diagrams

I've done a lot of work on a new New Term IBD-like diagram in Rhapsody for modeling Function Blocks as parts in a process flow. I've increasingly had to look to BPMN notation to provide a paradigm for how to manage aspects such as decision nodes, forks and joins. 

The result is very intelligible, similar to Activity Diagrams but with a slant of BPMN and a unique ability to blend structural and functional modeling.  

Interestingly I've just found this paper that compares BPMN notation with UML/SysML Activity Diagrams:


Friday 18 August 2023

Continued development of executablembse profile

I've been continuing development of executable mbse profile (part of the SysML Helper collection), an open-source project I started in 2016 to automate some Harmony-like methods steps because I needed the HarmonySE toolkit to do some additional things / cope with a new workflow.

I don't post about this here though as it would've overwhelmed my video posting. Instead, the profile changes are posted here: 

Things to note:

1. The SysMLHelper bundle has more than one profile. It has the original SysMLHelper profile but I moved my development to the ExecutableMBSE profile in 30 May 2019. I also did a Tau G2 migration profile, for example, and a Metamodeling profile. 

2. All the profiles including the Metamodeling Profile are in the same bundle because they share the Java code. I found that whenever I was creating a profile for a new task or a new problem that needed a GUI, I needed to repeat a lot of code. The bundling like gives a better foundation for creating and updating profiles quickly without re-inventing the wheel. 

3. Profile will pretty much work with any Rhapsody version 8.3.1 onwards as the API hasn't changed that much. The unit files for the profile are developed in 8.3.1.  

2. The Executable MBSE profile (main active profile under dev) has two different workflows for modeling functions; either using operations or using function blocks (new term metatype based on class). Latest stuff is all coming from customers who've found ways of working with DOORS NG and OSLC (things that come from real workflows).

3. Profile uses a metamodel profile that is part of SysML toolkit to render properties for new terms. I back-fitted this into the SysML Helper profile collection in 2021 and seems to work well. 

Tuesday 2 May 2023

IBM Engineering Systems Design Rhapsody 9.0.2 was released on 23 Mar 2023

Just a heads up that there was a new Rhapsody release on 23 March 2023: 
IBM Engineering Systems Design Rhapsody 9.0.2

This supersedes the latest iFix for 9.0.1 which was iFix 004 which fixes some issues introduced in iFix 003: IBM Support: Fix Central - Select fixes

Reflections on tool-neutral training

So, last couple of weeks I did some 2 day tool-neutral face-to-face training. It was fun actually. Like my tool-specific training, it is very interactive except that I use white boards and group work, and miss out the tool-based labs. In the group work, we develop a novel system from scratch using whiteboards. The fun bit is the interaction between people sharing ideas. You never know quite how it will turn out. Both courses had similar participants (a mixture of functional safety consultants, software, and systems engineers) but went in different directions with their solutions as I played around a bit with project constraints (budget, time etc). As we explored the different diagrams, I took their ideas and put them into a model to show them out it would look and some of the different views, particularly around traceability tables and using simulation to explore emergent behavior.

Sunday 26 March 2023

v4.2.g.PreRelease of Executable MBSE Profile

Over last 6 months with more late adopters moving to try and pick-up MBSE and run with it, I've found myself moving more towards suggesting people exploit tool automation such as my SysMLHelper. The amount of code and ideas now accumulated in this open-source project is substantial and it fits almost all needs now (executable or function-block based).

If I've come up with ideas I've incorporated them into it. The latest SysMLHelper is 4.2.g.PreRelease and is available on Github. I also post info to my website, although I've found with all; my websites that I've not had time to add much beyond essentials as I've got hungry customers I've committed hours to.

Regarding my helpers, all I ask is that you comply and respect the license as it protects me against commercialisation of my ideas. I've avoided 3rd party libraries in all my Java. Also, there's a limit to my time, hence if you really want proper help then get me to consult for a bit and I can put my experience to use for you, either to recover projects that need help or to make sure you start off with some quick wins. Doing MBSE with Rhapsody isn't effortless, but it can be fun if you learn how to speed up the tool mechanics and get drawing diagrams quickly based on well proven paths.

Reflection on recent trainings

Done 3 hands-on Rhapsody tool trainings in the 1-3 months, all Rhapsody 4-days but some spread over non-consecutive days (which is one of the benefits of remote/virtual-image-based deliveries). One of the 4 days was C++ based including deep-dive into statecharts and configuration management topics (dates over 2 weeks). The other was mostly Systems/SysML-based (automotive), also dates over 2 weeks. They seemed to go well. More recently I've found myself doing more consulting and recovery jobs, e.g. people getting into trouble with Rhapsody Model Manager and understanding its true potential but also coaching people on advanced topics like making context patterns work with their models.