69 UML Use Case Diagram Order Statemen t Withdraw Cash Check Balance BankMember

# 69 uml use case diagram order statemen t withdraw

This preview shows page 69 - 80 out of 210 pages.

69 UML Use Case Diagram Order Statemen t Withdraw Cash Check Balance BankMember Select Account «include» «include» «include» CardHolder Print Balance «extend»
70 UML Activity Diagram ATM Customer Select withdrawal Display menu Dispense cash Notify user Select amount ATM System [Insufficient funds] [Sufficient funds] Return card User takes card
71 UML Class Diagram CardHolder Debit Credit holds 1..3 * Account Transaction 1 * Simple ATM class diagram, showing static structure for banking domain
72 UML Collaboration Diagram Collaboration diagram  with interactions  realizing the Withdraw  Cash use case  :ATMCustomer 1:select withdrawal menu 2:select amount 3:withdraw sum 4:debit account :ATMUI :CashDispenser :CardHolder :Account :Debit 5:add debit 6:dispense sum
73 UML Sequence Diagram select withdrawal menu withdraw sum add debit debit account dispense sum select amount withdraw sum return card :ATMUI :CashDispenser :ATMControl :CardHolder :Account :Debit
74 UML State Diagram inDebit entry/balance -= pen inCredit withdraw(sum) [sum >balance] /balance -=sum deposit(sum) [sum >= balance] /balance += sum withdraw(sum) /balance -=sum deposit(sum) / balance+=sum withdraw(sum) /balance -=sum deposit(sum) / balance+=sum exit /balance = 0 close close
77 Summary UML is a an expressive and flexible visual modelling language Emerged in the mid 90s, Combines ideas from several notations Should distinguish between System, design, model and diagram UML supports modelling from different viewpoints: Functional view Static view Dynamic view
78 Lecture 6: Class Models and Diagrams Class models What makes a good class? Developing the class model Finding classes and associations (Part 1) Noun identification Basics of UML Class Diagrams Class notation Associations ATM Case Study: initial class model
79 What is a Class Model? Model of the static structure of a system What classes are there? How are these classes related? Allocation of class responsibilities : Management of data within the system Behavioural responsibilities of classes May not be immediately concerned with: functional requirements how classes interact to achieve behaviour
80 What Makes a Good Class Model? A good class model consists of classes that 1. can provide all of the required system behaviour 2. represent (as far as possible) enduring domain objects If 1 is self-evident, 2 is more like an act of faith: –. part of the object oriented design philosophy –. modelling the application domain can provide a good basis for developing the required software –. in practice, need to compromise between 1 and 2
81 Developing the Class Model Class model typically developed in stages: Analysis phase : Classes in problem domain of primary interest Basic relationships between classes Little detail about class responsibilities Design phase : Additional classes provided for implementation Class responsibilities (attributes, operations) refined Relationships between classes refined

#### You've reached the end of your free preview.

Want to read all 210 pages?