In Section 22.5, we identified many of the class attributes needed to implement the ATM system and added them to the class diagram in Fig. 22.12. In this section, we show how these attributes represent an object’s state. We identify some key states that our objects may occupy and discuss how objects change state in response to various events occurring in the system. We also discuss the workflow, or activities, that objects perform in the ATM system. We present the activities of BalanceInquiry
and Withdrawal
transaction objects in this section, as they represent two of the key activities in the ATM system.