Then, look at the diagram that uses choice pseudo state. Consequently, val related to the action ElseBranch is equal to 1. ![]() The diagram above (case of junction pseudo state) indicates that the action val=1 is invoked first, and then the action ElseBranch is invoked. And then actions are invoked along with the transition sequence. When Event1 occurs, guard conditions are evaluated prior to invoke the action corresponding to Event1. Look at the diagram that uses junction pseudo state. When Event1 occurs, guard conditions are evaluated after invoke the action corresponding to Event1. Each exit transition has a guard condition and if they all share a common argument A junction pseudostate has one or more entry transitions and will have one or more exit transitions (merge and static conditional branching) A junction pseudostate has one or more entry transitions and will have one or more exit transitions (merge and static conditional branching) UML offers notation to show decision points. UML uses state machines to model states and state dependent behaviours for objects and for interactions Previously known as statecharts Objects = various UML elements (systems, subsystems, interfaces, and ports) 6 6ħ State machine Pending Active Lapsed Transition between states archiveCampaign /unassignStaff unassignManager UML offers notation to show decision points. A relative-time trigger is caused by the passage of a designated period of time after a specified event (frequently the entry to the current state). A signal trigger occurs when an object receives a signal (an asynchronous communication). A call trigger occurs when an object receives a call for one of its operations either from another object or from itself. Conceptually, an object remains in a state for an interval of time.ĥ Types of Event A trigger is an event that can cause a state change and is relevant to objects (or the modelled element) A change trigger occurs when a condition becomes true. Objects of some classes have only one possible state. While in this state, a staff member has different employment rights and is not eligible for redundancy pay in the event that they are dismissed by the company. The StaffMember object is in the Probationary state for the first six months of employment. For example, in the Agate case study staffName and staffNo attributes of a StaffMember object have no impact upon its state, whereas the date that a staff member started his or her employment at Agate determines when the probationary period of employment ends (after six months, say). Some attributes and links of an object are significant for the determination of its state while others are not. Movement from one state to another is called a transition Initiated by a trigger When the triggering event occurs, a transition fires The current state of an object is a result of the events that have occurred to the object, and is determined by the current value of the object’s attributes and the links that it has with other objects. Conceptually, an object remains in a state for an interval of time. ![]() For some systems this can be complex as the response to events can vary depending on the passage of time and the events that have occurred already.Īn object’s state is defined as the totality of the current values of data within the object and its associations with other objects E.g., the class StaffMember has an attribute startDate which determines whether a StaffMember object is in the probationary state The current state of an object is a result of the events that have occurred to the object (think of a vending machine!) A state describes a particular condition that an object may occupy for a period of time while it awaits some event or trigger. 314-315īasic notation of state machines Section 11.3, pp Further notations Composite states (section, pp ) Concurrent states (section, pp ) Ensure consistency with other UML models Section 11.7, pp Specifying the control aspects of a system deals with how the system should respond to events. 289) In this lecture you will learn … 2 2ģ Today States and events section 11.2, pp. 262 – 276) Model Consistency Section 9.7 (p. ![]() 280 – 284) Sequence Diagrams Section 9.3 – (pp. 215 – 218) Communication Diagrams Section 7.4 (pp. 2 Recap Object Interaction and Collaboration CRC Cards
0 Comments
Leave a Reply. |