Tuesday 28 December 2021

Update to create V13 of IBM Rhapsody UML/SysML training material

Having left IBM as technical specialist for Rhapsody in 2015, I have been creating and delivering my own training material specialising in Rhapsody. I've just worked my way through a update cycle to create a Version 13 of my material. Key updates were:

- Re-naming of labs to reflect the more common order I've been settling on for delivery. This involves making sure most valuable/popular labs are given focus in initial choices for a 3 day delivery.
- Added a bit more differentiation to the Rhapsody Gateway labs with DOORS and Microsoft Word by making customisation of the Gateway Type an extension exercise at the end (i.e. still got expert tips and tricks but can also be used with simple users who don't need the expert bit).
- I simplified / shortened the sequence diagramming to make it shorter but retain the core knowledge (as the latter can be a bit heavy going for users completely new to SysML/UML).
- Added more differentiation to the ports and interfaces lab to make the conversion to proxy ports an extension exercise at the end (i.e. still got expert tips and tricks but can also be used with simple users who don't need the expert bit).
- Validate the material against IBM Engineering System Design Rhapsody Version 9.0.1 Editions with Jazz 7.0.2 server / DOORS 9.7.

The following is an example of a 5 day delivery for software engineers (and systems):

Mastering IBM Engineering Rhapsody in C++ - Sample Agenda V13 - 5 day (incl. Test Conductor)




Day 1 (Core)

Rhapsody user interface essentials and advanced

·         Focused understanding on controlling Rhapsody user interface.

·         Understand how projects are stored and how to open them.

·         Controlling the user interface to navigate around projects

·         Moving around and zooming in and out of diagrams, incl. full screen.

·         Navigating between elements, e.g., structural to behavioural.

·         Appreciation of delete from model vs delete from diagram.

·         Appreciation of how set-up effectively with profiles and properties.


Use Cases and requirements

·         Creating a model from scratch, including properties and profiles.

Practical Labs:

Lab A1: Controlling the Workspace

Lab A2: Controlling the browser

Lab A3: Creating a use case diagram

Lab A4: Use case activity modeling

Lab A5: Features and Zoom toolbar (ext)

Day 2 (Core)

Requirements and tables/metrics

·         Understand Rhapsody’s integrations with requirements managed via Gateway synchronizer (Word, Excel, “classic” DOORS) and/or

·         Overview of IBM Jazz platform and remote requirements (demo); OSLC links to Jazz, RTC Eclipse, accessing models by web-client for review purposes etc.

·         Requirement traceability essentials.

·         Appreciation of tables and matrices and what they are used for.


Composite structures

·         Understanding relations in UML/SysML: composition, association, generalization, aggregation, dependencies.

·         Controlling compartments and associated display options.

·         Tips for getting diagrams out of Rhapsody quickly and printing.

·         Linking elements with hyperlinks and enabling quick navigation.

·         Searching projects and using queries to filter the browser.

Practical Labs:

Lab B1: Rhapsody Gateway with Word

Lab B2: Rhapsody Gateway with DOORS

Demo: DNG/Jazz demo.

Lab B3: Properties and Profiles

Lab B4: Requirement tables and matrices

Lab C1: Modeling structure

Lab D3: Searching and Linking (ext)


Day 3 (Core)

White-box and architectural modeling

·         Understanding use of composite structure for hierarchical decomposition of systems, including ports, parts, and connectors.

·         Sequence diagram modeling for defining interfaces.

·         State-machine modeling and animated sequence diagrams.

·         Understanding state-chart syntax: Nested/Parallel states and patterns for usage.

·         Understanding difference between port types, pros and cons.

Practical Labs:

Lab C2: Interaction modeling

Lab C3: State machine modeling

Lab C4: Ports and Interfaces

Lab D1: Elaboration Use Cases

Lab D2: Executing System Behavior

Day 4 (C++ Case Study)

Code generation workshop in C++

·         Understanding model-driven development with code generation by building up a working example in C++.

·         Using Rhapsody Model Manager / DOORS NG.

·         Appreciation of dynamic-model code associativity.

·         Appreciation of requirements capture and traceability.

·         Appreciation of Object Execution Framework and state-charts.

Practical Labs:

Lab S1-17: Building a model

Day 5 (C++ Case Study)

Test Conductor

·         Workshop using TestConductor with a model.

Catch-up/overflow topics:

·         An of how projects can reference other projects.

·         An appreciation of how project units work in conjunction with Model Manager, role of Rhapsody DiffMerge etc.

·         An appreciation for options for document generation and html output.

Practical Labs:

Labs S18-S20: Test Conductor workshop

Lab U1: Navigating Rhapsody Units

Lab U3: Referencing External Units

Lab U4: Handling Unresolved References

Lab U5: Rhapsody DiffMerge


No comments:

Post a Comment

Note: only a member of this blog may post a comment.