📘 Interaction Diagrams (OOAD)
🔹 1. Definition
Interaction Diagrams are UML diagrams that show how objects communicate with each other by sending messages to perform a task.
👉 Simple idea:
They describe how the system behaves (dynamic view) — who talks to whom and in what order.
🔹 2. Purpose of Interaction Diagrams
- Show object collaboration
- Describe flow of messages
- Help understand system behavior
- Validate system design
🔹 3. Types of Interaction Diagrams ⭐
There are mainly two important types:
🔸 3.1 Sequence Diagram
✅ Definition:
A Sequence Diagram shows how objects interact in a time sequence (step-by-step order).
🔹 Key Elements:
| Element |
Description |
| Object |
Participant in interaction |
| Lifeline |
Vertical dashed line showing object life |
| Message |
Communication between objects |
| Activation |
Time an object is active |
🔹 Diagram Description:
- Objects are placed horizontally
- Time flows top to bottom
- Arrows show messages
User → Login System → Database
🔹 Example: ATM System
- User inserts card
- System asks for PIN
- User enters PIN
- System verifies
- Cash is dispensed
🔹 Types of Messages:
- Synchronous (wait for response)
- Asynchronous (no wait)
- Return message
🔸 3.2 Communication Diagram (Collaboration Diagram)
✅ Definition:
A Communication Diagram shows interaction between objects focusing on relationships rather than time.
🔹 Key Elements:
| Element |
Description |
| Objects |
Connected with links |
| Messages |
Labeled arrows |
| Sequence Numbers |
Show order of messages |
🔹 Diagram Description:
- Objects are connected like a network
- Messages are numbered (1, 2, 3…)
1: request()
2: process()
3: response()
🔹 4. Sequence vs Communication Diagram
| Feature |
Sequence Diagram |
Communication Diagram |
| Focus |
Time sequence |
Object relationships |
| Layout |
Vertical |
Network-like |
| Message Order |
Top → Bottom |
Numbered |
🔹 5. Steps to Create Interaction Diagrams
🔹 Step 1: Identify Scenario
🔹 Step 2: Identify Objects
- List participating objects
🔹 Step 3: Determine Messages
- Define communication steps
🔹 Step 4: Arrange Order
- Show sequence or numbering
🔹 Step 5: Draw Diagram
🔹 6. Example (Library System)
🔹 Scenario: Borrow Book
🔹 Sequence Diagram:
Member → Librarian → Book
Steps:
- Member requests book
- Librarian checks availability
- Book is issued
🔹 Communication Diagram:
1: requestBook()
2: checkAvailability()
3: issueBook()
🔹 7. Advantages of Interaction Diagrams
- Clear understanding of system flow
- Helps in debugging design
- Improves communication
- Shows real-time interactions
🔹 8. Important Rules / Guidelines
- Keep diagrams simple and clear
- Use meaningful object names
- Show correct message order
- Avoid unnecessary complexity
🔹 9. Likely Exam Questions
- Define interaction diagram.
- Explain sequence diagram with example.
- What is a communication diagram?
- Difference between sequence and communication diagrams.
- Explain elements of sequence diagram.
- Describe types of messages.
- Steps to create interaction diagrams.
- Draw sequence diagram for ATM system.
- Advantages of interaction diagrams.
- Role of interaction diagrams in OOAD.
🔹 10. Quick Revision Summary 🧠
👉 Key Points:
- Objects send messages
- Show dynamic behavior
👉 Trick to Remember:
"SC → Sequence & Communication"