ATM

Objective

Automated Teller Machine can be seen as an archetype of basic functionalities for user entry points, namely:

  • Input and output devices for non symbolic flows (card reader and cash dispenser)
  • User interface for symbolic interaction.
  • Output device for documents (printer).
Actual objects meet symbolic surrogates (Maurizio Cattelan)

On a broader perspective it marks the point where actual objects meet their symbolic surrogate. Based on architecture driven system modeling principles, the objective is to build models from modules defined by architectural concerns.

Modeling Templates

The case is presented along basic technical and functional perspectives.

Use case is based upon a simple user and service configuration without real-time coupling. Dialog states are governed by an initial external event, and execution status on one hand, user actions on the other hand.

Template for Use Case & Behavior

Context is made of physical agents, entry points (clients) and servers, system functionalities include boundary management, control, and persistency.

Templates for Context & Functional Architecture

Context

The context perspective (aka deployment) combines physical and functional considerations:

  • ATM, operator entry point and bank server are defined as  blocs with symbolic processing capacity. Both communication channels and functional flows are explicitly asynchronous.
  • An ATM is a structured bloc made of four functional components.
  • Customers and operators appear as agents, i.e active physical entities with organizational responsibilities. Functional flows are explicitly defined, communication channels remain implicit.
Context perspective may combine technical and functional considerations

It must be reminded that concerns can be safely combined into the same model as illustrated by connectors between ATM and server whose simultaneous display help to review architectural consistency.

Symbolic Counterparts & Functionalities

Combining modeling concerns, relevant contexts can be mapped to their symbolic counterparts, persistent or transients:

  • Processing of physical flows: card reader, printer, cash dispenser.
  • Processing of interactions with users: customer, operator.
  • Representation of agents: customer, operator.
From Context to Symbolic Representations

That provides the subset of functional components needed to support interactions with context.

Use Cases & Functionalities

Those functional components can also be associated with functional requirements as defined by use cases.

Use Cases and Functionalities

Leave a Reply

%d bloggers like this: