|#51||Rational Rhapsody Tip #51 - SysML vs UML: The RepresentParts property (Intermediate)
The video covers a property called ObjectModelGe::Composition::RepresentParts used automatically by the SysML profile. SysML puts a strong emphasis on the hierarchical decomposition of systems using composition relations, whereas software modelers often use associations. The RepresentParts property switches Rhapsody behavior on BDDs so that composition relations = parts. This brings the bdd and ibd diagrams closer together, allowing bdds to be used to draw hierarchies of Blocks and Parts (which is why I often say that they dance in pairs). This short tips and tricks video illustrates the difference,
|#52||Rational Rhapsody Tip #52 - Making user-defined types appear in selection dialogs (Simple)
In a recent IBM Rational Rhapsody training, a user asked me how they could get data types they’ve added (or reverse engineered) to appear in the pull-down list when a user selects the type for an attribute or operation argument. Like many things in Rhapsody there’s a property to help, it’s called General::Model::CommonTypes, and can be set at either the model level or in a profile. The property specifies which types are listed as alternatives for attributes, variables, and arguments. On a related topic, if you want to remove the predefined types from the browser, there’s also a Browser property called ShowPredefinedPackage (Browser::Settings).
|#53||Rational Rhapsody Tip #53 - Linking Rhapsody to DOORS NG using a Lifecycle Project (Intermediate)
This 7 min video is the first of two looking at OSLC linking between Rhapsody projects and Rational DOORS Next Generation (DNG). It shows a trick I often use to set up a simple evaluation environment. The trick is to create the Rhapsody Model Manager (/am) and DOORS NG Requirements Management (/rm) project areas first (using the AMR system sample) and then use the Jazz Lifecycle Project Area wizard to create the associations. With an association created to an /rm project area, the Remote Artifacts Package category can then be populated to show the requirements in DNG directly in the Rhapsody browser.
|#54||Rational Rhapsody Tip #54 - Linking models to remote requirements in DOORS NG 6.0.6 (Intermediate)
This second 7 min video follows on from the previous one (#53) and shows what you can do once you've associated a Rhapsody /am project area with a DOORS NG /rm project area. This is really the core of what OSLC linking is all about. You can connect data to other lifecycle artefacts without leaving the tool that you're in. Rhapsody fully supports the well established mechanisms of an OMG SysML approach with requirements in the model and traceability captured both graphically and in diagrams. In the 6.0.6 (Rhapsody 8.3.1) implementation are the ability to navigate from the web-client to the Rhapsody rich client.
|#55||Rational Rhapsody Tip #55 - Getting to grips with the CSVImporter
The CSVImporter has been a feature in Rhapsody for a while. You can capture column values as either tags or built in fields such as the Description field. Importantly, don't forget that Rhapsody normally has restrictions to prevents elements that are Objects or Classes (or parts/Blocks) having spaces in their name. If so, it is best to relax the regular expression that is used to control this behavior in Rhapsody (interestingly Rhapsody allows the import to proceed). There are also a couple of cool features. For example, the ability to easily create a table view of the imported data, and the ability to export a table view as a CSV file.
|#56||Rational Rhapsody Tip #56 - Using Allocation relations In SysML
The following is a little demo I did recently on a training to illustrate the concept of allocation in SysML. Overall the concept is very simple; allocation is a cross-cutting construct that uses a UML dependency as its base type. This "create a model from scratch" video shows an example of creating two hierarchies, one structural and one behavioural, and then relating them using «allocate» dependencies, and visualising the relations in compartments. I illustrate this by creating a New Term «FunctionBlock» stereotype (a topic that comes up a lot, especially with my automotive customers).
|#57||Rational Rhapsody Tip #57 - Allocation tables and matrices, incl a context pattern (Intermediate)
This video follows on from Tip #56 and shows creation of tables and matrices in Rhapsody. Allocation is a SysML new term dependency type, hence the tricks really apply to any new term dependency, e.g., they'd work for requirement traceability relations. The video starts with simple matrix and relation tables views (you have to create the layouts first) and then goes on to show how to create a context pattern table view. The key thing is that you build the relation table you have to follow the structure of the model. The order of the columns, however, can be in any order. You can also collapse the first column to make it more succinct. Enjoy!
|#58||Rational Rhapsody Tip #58 - Another look at unresolved references (Advanced)
This video takes a look at what causes and how to fix unresolved references in an IBM Rational Rhapsody project. These can occur when Rhapsody needs to change an element to keep model consistent but the owning units (i.e. files) are read-only. A key tip is that the Advanced Search and Replace dialog allows you to search models for unresolved references and remove them. It's probably worth periodically checking models using this a housekeeping technique as their existence may point to usage problems.
|#59||Rational Rhapsody Tip #59 - Using a perspectives toolbar to simplify the UI (Advanced)
I did this video in response to a client in my Rhapsody training a week or so ago. They were complaining that the user interface of Rhapsody had the old type of SysML ports (standard and flow ports) still available as well as the new ones (proxy and full). The perspectives toolbar offers the potential to simplify the menus based on a pull-down list. Here's the catch, the standard SysML Perspectives toolbar isn't something I'd use. For me, the savvy user would create their own. In this video I show both the out-of-the-box perspectives toolbar and one I created myself. Like most things in Rhapsody, everything is customizable with Rhapsody properties.
|#60||Rational Rhapsody Tip #60 - Initializing your history connector (in state machines) (Intermediate)
This video came from a question someone asked in my Rhapsody training course this week about state-machines. It wasn't just a question about how to get a state-machine to remember a state and re-enter it when you transition back in, but more importantly how to draw them in Rhapsody so that they work as desired. The key to this is really to draw the default transition to the history connector and then draw a transition from the history connector to the state you want the default to be. The video hopefully explains, even if I get my terminology mixed up a little bit at the end.
|#61||Rational Rhapsody Tip #61 - Checking RTC Eclipse is set-up for IBM Rational Rhapsody use (Simple)
One of the questions I had recently in training related to how to check whether your RTC Eclipse client is correctly set-up for use with Rhapsody. The RTC Client is used in concert with Rhapsody for both the Rational Model Manager (RMM) and Rational Team Concert (RTC) integration. If you have incorrectly set up the client then this may cause significant issues, particularly if it tries to use a textual merge, rather than the Rhapsody DiffMerge tool. This video which shows Rhapsody v8.3.1 with Jazz/am 6.0.6 covers 4 checks that you can do.
|#62||Rational Rhapsody Tip #62 - Orthogonal regions in state machines (Intermediate)
This 4 min silent video explores some of the executable semantics around the use of orthogonal regions in state machines. Most of these semantics come from work done by Dr David Harel and his colleagues in the 1980/90's on statecharts, which were subsequently subsumed into the Unified Modeling Language, and inherited by SysML. Essentially orthogonal regions in a state machine are regions that execute concurrently as part of an owning state. Each region becomes active when its owning state is entered. In Rhapsody we can create any number of these using an And Line. It's possible for orthogonal regions to influence each other. These video explores 3 ways.
|#63||Rational Rhapsody Tip #63 - Snippet-based auto-generated html reports (new in 8.4) (Simple)
|#64||Rational Rhapsody Tip #64 - Customizing Rhapsody's C/C++ code generator using a simplifier plugin (Advanced)
I've been doing more web-based training lately with the IBM Rational Rhapsody Developer Edition. This has promoted me to show a few videos on the fundamentals of C/C++ code generation. This video gives an "under the hood" look at the two stage process that underlies the built-in C/C++ code generation technology. Based on a modified version of the UsersSimplifiers.rpy project in the Rhapsody samples folder, it shows how we can use plugin customisation to make a single change to the generated code for many files. The first stage is called Simplification, the second called Writing.
|#65||Rational Rhapsody Tip #65 - Linking to Jazz/qm test cases using Rhapsody Model Manager (6.0.6) (Simple)
"Can I link to Jazz/qm test cases directly from Rhapsody?" came up recently in one of my IBM Rational Rhapsody software training's. Here's a short video that shows how. The video illustrates Rhapsody 8.3.1 with the Jazz/am 6.0.6 web application. The IBM product name that includes this server-side application is Rhapsody Model Manager (RMM) and is over 4 releases in now. It uses Rational Team Concert as it's foundation and adds the ability to view Rhapsody models via a web browser. It is this web server capability that services the OSLC linking to test cases in the Jazz/qm application (test case authoring is licensed via Rational Quality Manager licenses).
|#66||Rational Rhapsody Tip #66 - What are .hep files used for? (Advanced)
.hep files are IBM Rational Rhapsody helper files. They are used to extend Rhapsody's menus and usually associated with profiles. Many of Rhapsody's standard profiles use .hep files to add additional menus when the profile is present. This video illustrates a couple that are part of Rhapsody's factory SysML profile. Hep files can either invoke Java plugin that runs in process, or can be used to invoke an external Java application. Naming the .hep file the same as the profile will cause it to be loaded. It's also possible to set a number of properties to load a helper file, such as General::Model::HelpersFile and General::Model::AdditionalHelperFiles.
|#67||Rational Rhapsody Tip #67 - What are implicit classes? (Intermediate)
In this video I give an overview of how objects in Rhapsody can be used for modeling software or systems architectures without using classes. I then compare this with the benefits of using classes. The key thing is that if you create an object in Rhapsody that is not typed, then it can support all the concepts that a class can. It does this by creating an implicit class under-the-hood, but just showing the object in the browser. The key reason you expose classes is where you need to enable re-use, or a separation of concern between the definition of an element and its usage.
|#68||Rational Rhapsody Tip #68 - Installing the Rhapsody integration for RTC plugin (Intermediate)
The IBM Rational Rhapsody integration for Rational Team Concert plugin is installed into the RTC Eclipse client to enable a direct and supported integration between RTC or Rhapsody Model Manager project and IBM Rational Rhapsody. This short tips and tricks video shows you how to install it.
|#69||Rational Rhapsody Tip #69 - Timing diagrams in Rational Rhapsody (Simple)
This 8 min video covers both compact and elaborated Timing Diagrams. I use Rhapsody 8.4 here (2019). The compact form of the diagram was first added to Rhapsody in 8.0.5 (2013). The diagram is much like a sequence diagram on its side. Lifelines represent classifiers like classes/objects, actors or use cases. They show how the condition of the lifeline changes with respect to time. The sequence can be annotated to show both the messages or events that cause the conditions of the classifier to change over time, and observations or constraints about the time or duration in the sequence.
Understand the art of the possible. My mission is to make executable Model-based Systems Engineering (MBSE) easy with the Object Management Group's Systems Modeling Language™ (SysML®) and UML® to make simple modeling easy to deploy to the masses. This site provides practical experience of tuning IBM® Rational® Rhapsody® - a precision engineering UML/SysML tool. Rhapsody tips and ideas will be posted with links to videos. You can follow by email (if google app is allowed).
Rhapsody Tips 'n Tricks Videos (51-)
Subscribe to: Posts (Atom)
Post a Comment
Note: only a member of this blog may post a comment.