Download OMG-OCSMP-MU100 & 200 Exams 2025: Latest Questions and Answers for Software Modeling and more Exams Computer Science in PDF only on Docsity!
OMG-OCSMP-MU100 & 200 Exams 2025 latest Questions
& Answers 100% accuracy
What is the Purpose of an IBD? Display the structure of a single block and display usages of a block with part properties and reference properties. What does an IBD convey? The structure of a single block, services provided or required by parts, and types of matter data and energy that can flow across connections. 2 Diagrams that show complementary views of a block IBD and BDD Allowable Model Element for IBD block What is a connector? Used to show specific connections among the internal part properties and their connections to external reference properties. What is a part property? It is an internal structural element of a block. It is seen as a solid boundary rectangle with name : type [ ]. Multiplicity can either be in brackets or in the top right of the rectangle. What is a reference property? It is a structure that is external to a block. It is needed by the block to invoke a behavior or service. It is represented by a dashed boundary rectangle with name : type [multiplicity]. Multiplicity can be shown in brackets or the UR corner of rectangle. What is an Item Flow? It is used to display matter, data, or energy flowing between 2 connected flow ports. It is represented by a filled in arrowhead that is placed directly onto a connector. The type of the item flow is named in a label that floats near the arrowhead.
What is Dot Notation? It is a way to create nesting of a relationship. The block that types the property is NOT listed or the multiplicity. It conveys a structural hierarchy ownership of a property. What is the Purpose of a Use Case Diagram? It is a black-box view of the system. It conveys the visible external structures that a system performs. It displays the actors that participate and invoke the use cases in the diagram during execution. What is a system boundary? A system boundary is the subject of the diagram and NOT the namespace. It encapsulates use cases and actors in the diagram. It is represented as a large rectangle within the diagram frame. What is a Base Use Case? A base use case is directly invoked by an actor. It is the primary goal of the actor. When invoked it will invoke a use case with the include relationship. It has an association relationship. What is the <> relationship? It is a UC relationship where the included use case behavior is required. Source = tail end Target = arrowhead end The use case at the source end is the base use case and the arrowhead end is the target included use case. What is the <> relationship? It is a UC relationship where the extended use case is an OPTIONAL behavior that can be performed by the base use case. The source is the tail end Target is the arrowhead end The use case at the source end is the extended use case and the use case at the target arrowhead end is the base use case. 3 Types of Behaviors and the Diagrams that represent them:
4 Types of Actions:
- Call Behavior Action
- Send Signal Action
- Accept Event Action
- Wait Time Action Call Behavior Action Definition & Notation:
- Action that invokes another behavior when it becomes enabled.
- The behavior being called is the '"type" within the rectangle.
- Notation: round-angle rectangle with name : type/behavior name Rule for Call Behavior Actions and Pins When a call behavior action invokes a another activity, the pins of the call behavior action must MATCH the activity parameter's behavior type and multiplicity. Send Signal Action: A kind of action that ASYNCHRONOUSLY generates and sends a SIGNAL instance to a target when it becomes enabled. Notation: pentagon on it's side with the name of the associated signal inside. Accept Event Action A kind of action that generates ASYNCHRONOUSLY. It conveys that the activity must wait for an ASYNCHRONOUS event occurrence before it can continue it's execution.
- It waits for a single instance event or a time event. 7 Kinds of Control Nodes
- Initial Node 2.Decision Node 3.Merge Node
- Activity Final Node
- Flow Final Node
- Fork Node
- Join Node Initial Node Definition and Notation It marks the start of the flow of a CONTROL TOKEN! Filled in circle with one or more control flow edges coming out of it.
Decision Node Definition and Notation It marks the start of alternative paths through an activity. It is a hollow diamond with a single edge coming in and multiple edges coming out. Can have a Boolean guard on each edge to determine which path a token will take. Merge Node Definition and Notation: Marks the end of alternative sequences in an activity. It is a hollow diamond with 2+ edges coming in and only 1 edge going out. Useful for modeling a loop. Fork Node Definition and Notation: Line segment with 1 incoming edge and 2+ outgoing edges. Conveys the start of concurrency. When a token arrives on a fork node, it is duplicated onto each of the outgoing edges. Join Node Definition and Notation: Line segment with multiple incoming edges and 1 outgoing edge. Marks the end of concurrent behaviors. When a CONTROL TOKEN arrives on each incoming edge of a join node, only one is offered to the outgoing edge. Control Node Definition and Notation: Steer the execution of an activity along paths other than a simple sequence of actions. Can direct flow of control & object tokens within an activity. Activity Final Node Marks the end of an activity altogether. Notation is a circle with a smaller filled in circle inside of it. Flow Final Node Marks the end of a SINGLE flow of control and the token is destroyed. Notation: Circle with a X inside. Activity Partitions Conveys the structure that performs each action but NOT the ownership of each action. It can be a block or a part property that performs each action. If it is a block: it conveys that it can perform ALL contained actions. If it is a part property: it conveys that ONLY that 1 part property performs the actions.
It exist on a lifeline at the point where the arrowhead end touches the boundary of a lifeline's head (a message receive occurrence also exist here). Behavior Execution Start Occurrence Exist at the point where the lifeline receives a message. Behavior Execution Termination Occurrence IT occurs at the point where the reply message is sent on a lifeline is at the bottom of an execution specification. What are the 4 types of messages?
- Synchronous Message
- Asynchronous Message
- Reply Message
- Create Message What is an Asychronous Message and it's notation? An asynchronous message is a message that is sent and the sender does not wait for a reply from the receiving lifeline. It will continue executing down the lifeline. Notation is a solid like with an open arrowhead. Asynchronous message names correspond to the owning lifeline's reception name. What is a synchronous message and it's notation A synchronous message is a message that is sent by a lifeline and the lifeline then waits for a reply message to be sent back before it can continue it's execution. Notation is a solid line with a filled in arrowhead at touching the receiving/owning lifeline. Synchronous message names must match the name of an operation owned by the receiving/owning lifeline. What is a reply message and it's notation? A reply message represents a communication that marks the end of a synchronous invoked behavior. Notation is a dashed line with an open arrowhead. assignment target = messageName (arguments) : value specification/return type Destruction event Occurrence Rules:
- X at the bottom of a lifeline without any message attached = self terminating lifeline
- X connected to an arrowhead end of a message = destruction event occurrence as a result of
receiving a delete message
- A destruction occurrence is the last event that can appear on a lifeline. What is a constraint: A Boolean expression displayed between a pair of curly braces. What are the 3 types of constraints?
- Time Constraint
- Duration Constraint
- State Invariants What is a Time Constraint? The required time interval for a SINGLE event occurrence. Anchored to a single event occurrence. Only valid if the occurrence happens within the specified time. What is a duration constraint occurrence? Specifies a required time interval for a PAIR of event occurrences. Appears at behavior execution start termination event occurrence to left or right of lifeline in curly brackets. Can be with a message send & receive occurrence, and will be in curly bracket above or below the line. What are state invariants? A condition on a sequence diagram you apply to a lifeline immediately above an event occurrence. It MUST be true for that lifeline at the moment of the event occurrence in order to be valid. What are combined fragments? Combined fragments are a mechanism that allows you to add control logic (decisions & loops) to an interaction. Notation: rectangle placed over one or more lifelines and encapsulates messages. How to specify control logic with combined fragments? You use an interaction operand. You specify control logic by using a string that appears in a pentagon in the upper left corner of the combined fragment. What are interaction operands?
A loop operator has a min & max # of iterations specified in the header. It none is specified then the default is (0,*) The multiplicity is a constraint on the number of iterations that can occur. The guard is evaluated AFTER the loop has iterated the minimum number of times. What is the par operator? It represents 2 or more sets of event occurrences that can happen in PARALLEL with each other during execution. How many operands can a par operator have? It can have 2 or more operands or regions with concurrent sets of event occurrences. If 2 event occurrences appear in different operands they can happen in any order. If 2 event occurrences appear in the same operand then the order is from top to bottom. A guard is optional for a par operator. What is an interaction Use? An interaction use invokes low-level behaviors from high-level behaviors.
- Conveys that the interaction use is a REFERENCE to another interaction in the model. Notation: Rectangle on top of a lifeline with referenced interactions inside. What are interaction use messages? A message that enters or leaves an interaction use through an actual gate or a formal gate. A formal gate occurs on the frame of the diagram An actual gate occurs on the boundary of the interaction use rectangle. WHat is the purpose of a State Machine Diagram? It specifies the behavior with a focus on a set of STATES of a block and possible transitions between those states as a response to an event occurrence. What is classifier Behavior? The behavior that begins executing the moment a block is instantiated and finishes executing when the instance is destroyed on a state machine diagram. What model element can a state machine diagram represent state machine What is a simple state?
A simple state is a state with NO substates. Notation = round-cornered rectangle/round-angle.
- Must display a name compartment with a string that names the state.
- Can optionally have a second compartment that lists it's internal behavior and transitions. What are the 3 internal behaviors a state can perform? Entry, Exit, Do entry/opaqueExpression or Behavior Name exit/ " " do/ " " What is an opaque expression? It is a language specific statements of behaviors in Java, C+, etc. What is an entry behavior? If present it's the 1st behavior executed upon entering a state. It is an atomic/un-interruptible behavior. What is an exit behavior? If present, it is the last behavior executed before leaving that state. It is an atomic/un- interruptible behavior. What is a do behavior? If present, begins executing upon entering the state immediately following the state's entry behavior.
- it is a non-atomic/ INTERRUPTIBLE behavior.
- It will execute until either it is interrupted by an event occurrence (and the state transitions to a new state) or the do behavior terminates on it's own. What happens when a do behavior is interrupted? The do behavior is aborted and the exit behavior for that state is executed right before leaving that state. What can happen if a do behavior terminates on it's own?
- The state machine could continue to rest in the state while waiting for the next event occurrence, if all of the outgoing transitions require a trigger.
- The state machine could immediately transition to a new state if there is an outgoing transition that doesn't require a trigger.
- Entry Behavior of the target states
- do behavior will execute automatically if present after the entry behavior. External vs Internal Transitions: External transitions leave a state and transition to a new state executing exit, effect, entry behaviors. Internal transitions never leave a state, so only the effect behavior will execute. The behavior is uninterruptible. What are the 4 events types?
- Signal Events
- Call Events
- Time Events
- Change EVents What is an event? An event is an element of definition-
- an element that defines a type of occurrence that can trigger a behavior What is an Signal Event? A signal event represents the receipt of a signal instance by a target structure that is receptive to it.
- The target is the structure executing the state machine behavior. What must match if a state machine has a transition with a signal event trigger? The name of the state machine's signal event trigger and the reception. What is a reception? A reception is a behavioral feature that is owned by a block that is invoked upon the receipt of a signal instance. What is a call event? A call event represents the receipt of a request to invoke an operation in a target structure.
- A request is sent from the calling structure.
- The structure executing the state machine. What must match with a call event?
The state machine's transition with the event name and the name of the operation owned by the structure executing the state machine. What is an operation? An operation is a behavioral feature owned by a block that gets invoked by a SYNCHRONOUS call. What is a Time Event? A time event represents an instance in time.
- When the moment comes during system operation- a time event has occurred.
- Each occurrence can trigger transitions between states- even multiple times. What are the 2 types of Time Events?
- Relative Time Event
- Absolute Time Event What is a Relative Time Event? Begins with the work "after"
- Written as a duration in time.
- Once the relative time event's specified amount of time has elapsed, the occurrence can trigger a transition in the state machine. What is an Absolute Time Event? Begins with the word "at"
- Written as a specific point in time.
- At that time it will result in a new occurrence everytime that moment in time arrives. External vs Internal Self Transitions with Time Events: Relative Time Event counters reset for external self transitions every time it exits the state and re-enters. Internal self transitions never exit their state so the time counter never resets. What are Change Events? Begin with the word "when"
- when(booleanExpression)/effect
- Occurs everytime the specified Boolean expression toggles from false to true. What is a Pseudostate?
The relative Time Event starts only when the entry behavior stops and the Run-to-Completion step completes. What are the 2 purposes of a Parametric Diagram?
- It displays complementary views of internal structures of blocks.
- Displays usages of blocks and constraint blocks. focusing on value and constraint properties.
- Expresses how 1 or more constraints (equations/inequalities) are bound to the value properties of a system.
- Expresses a set of constraints that determines the values that are valid in an operational system. What is a Parametric Diagram? A kind of IBD that displays internal structures of a block but focuses on the bindings between the value properties and constraint parameters. What are constraint Properties? They are usages of constraint blocks. Notation: round-angle rectangle with name : type --Type must be the name of a constraint block. When appearing on a BDD or PAR the view must show the matching names, types, and constraint parameters. What is a Constraint Parameter? A constraint parameter is a variable that appears in a constraint expression. Notation: (2 options): It is displayed as a small square attached to the boundary on the inside of a constraint property OR it can be on the frame of a diagram that represents a constraint block! What are the 2 ways a Constraint Parameter can be shown on a PAR diagram?
- It can be displayed on a PAR as a small square attached to the inside boundary of a constraint property.
- Displayed attached to the frame of a diagram when the diagram represents a constraint block. Notation: name : type [] where type must be a value type What is a Value Property?
A value property is an element of usage of a Value Type in the context of an owning block. Or A Value Property is typed by a Value Type that you've defined somewhere in the model. What does a Value Property represent? A value property represents a quantitative characteristic of a block as well as a Boolean value or string. What does a Value Property do? It supplies values to a constraint parameter so you can evaluate constraint expressions. What are the notations of a value property? Rectangle with a solid boundary w/ : name : type [] = default value
- When owned by a block named in the header of the diagram, the value property floats inside the diagram frame.
- When owned by a part or reference property, you use dot notation to nest the value property and it will be inside of the part or reference property if dot notation is not used.
- It cannot be displayed on a PAR diagram that represents a Constraint Block. What is a Binding Connector?
- Only represented on PAR Diagrams.
- It represents an equality relationship between 2 elements attached at either end. ---- 1 Element must be a constraint parameter & 1 element must be a value property or constraint parameter for a different constraint expression.
- Notation: solid line attached to 2 bound elements. How are values assigned to constraint parameters? The constraint parameter at one end of the binding connector assumes the same value as a value assigned to a value property. When a Constraint Parameter are one end of a binding connector assumes the same value as a value assigned to a value property- what happens to the value? This value is assigned to a constraint property if:
- The constraint property evaluates to True or False if values are supplied to all parameters in
- Crosshair Notation: solid line with a circle & X inside on the end of the owning package.
- Nesting: large package with packages inside.
- Qualified Namestring: folder with the parent package on the left of the ::. What are the 2 types of Qualified Namestrings and their differences?
- Fully Qualified Namestring- starts with the model name and dbl colon to convey the hierarchy (the name of the first package will say model after it).
- Relative Qualified Namestring : starts with the highest shown package containment - doesn't include the model first. What are Package Dependencies? A change in the supplier at the arrowhead end MAY result in a change to the client at the tail end. Notation: dashed line with an open arrowhead. What is the package import relationship and the notation? A way to convey one package imports the contents to another package. Notation: 2 folders with dashed line and open arrowhead pointing to the package which reference elements are made from. Keyword <> over line. Explain the import relationship? The package at the tail end imports a NON-WRITABLE REFERENCE of the contents ELEMENTS within the package at the arrowhead end.
- READ-ONLY & NON-WRITABLE REFERENCE ELEMENTS! Notation for a Model Package It is a Top-Level Package that serves as the root of a containment hierarchy. Notation: Folder Symbol with <> inside or a triangle in upper-right corner of folders. What is a Model Library? It is a kind of package that contains a set of elements you intend to reuse in multiple models. Notation: folder symbol with keyword <> above the package name. What is a profile? A kind of package that contains a set of stereotypes.
- Defining a new modeling language that is an extension to an existing modeling language.
Profiles are applied to packages, models, and model libraries. <> Relationship The tail end element applies/contains new kinds of elements defined in the arrowhead end element. <> relationship A special kind of dependency drawn from a view to a viewpoint.
- It represents the view package is constructed according to the rules listed in the viewpoint it "conforms" to. What is a View? A package that imports other packages, elements, and diagrams in the model that represents an aspect of the model of interest. A view --- conforms ---> to a viewpoint What is a Viewpoint? A model element that contains 5 properties:
- Stakeholders
- Concerns
- Purposes 4.Languages 5.Methods What is the purpose of a Requirements Diagram? What types of model elements can appear on a requirements diagram header? Package Model modelLibrary View Requirement What are 2 types of containment in Requirements Diagrams? Crosshair Notation & Qualified Name String Notation What are the 7 kinds of requirements relationships?