Question & Answer
Question
Is there a way to use same operation to act both as synchronous and asynchronous depending on the parameter that is passed to it in IBM Rhapsody?
Cause
In Rhapsody synchronous and asynchronous functions are represented as different message types:
- While creating new functions, Synchronous functions are created as operations, whereas asynchronous functions are created as Events.
- In modeling, synchronous functions are represented as Messages (Filled arrowheads), whereas asynchronous functions are represented as Events (Stick arrowheads)
Can the same operation act both as synchronous or asynchronous function based on parameters that are passed to it? Is it possible in rhapsody by any means?
Answer
No, they must be modeled separately. This is following the notation from UML standard.
Mixing synchronous and asynchronous messages within the same object is not recommended as it can block the message queue, which can lead to dropped asynchronous (events) messages. The recommended practice is to use Synchronous (triggered operations) messages to call other external objects, rather than within its own object.
Product Synonym
Rational Rhapsody
Was this topic helpful?
Document Information
Modified date:
27 May 2022
UID
swg21991453