
Welcome to Module 2, the engine room of our use-case-driven, Agile-focused UML course. Here we shift from foundational modeling concepts to the core driver of successful software development: capturing and specifying requirements from the user’s perspective using use cases. This module emphasizes that requirements aren’t abstract lists of features—they are stories of how real people (or external systems) achieve goals with your software. By making use cases the primary artifact, we ensure the team builds the right system, not just a system that works.
In Agile environments, use cases bridge the gap between business needs and technical implementation. They provide a structured yet flexible way to:
- Discover functional requirements collaboratively
- Define clear system boundaries
- Prioritize work based on user value
- Validate understanding with stakeholders early and often
- Support incremental delivery by slicing use cases into releasable parts
Unlike traditional “big requirements documents,” use-case-driven development aligns perfectly with Agile principles: user-focused, iterative, feedback-driven, and risk-reducing. Use cases help attack the biggest risk in any project—building the wrong thing—by putting the user’s goals front and center from day one.
Why Use Case Driven? Key Benefits in Agile Contexts
- User-Centric Focus — Requirements start with “As a [role], I want [goal] so that [benefit]” (sound familiar from user stories?), but use cases expand this into complete scenarios, including alternatives and exceptions.
- Improved Communication — Non-technical stakeholders easily understand use case diagrams and narratives—no deep UML knowledge required.
- Scope Management & Change Handling — Use cases make it visible what is in/out of scope; extensions and generalizations handle evolving requirements without chaos.
- Testable & Traceable — Flows of events become the basis for acceptance tests, ensuring “done” means “works as the user expects.”
- Incremental & Risk-Driven — Slice use cases into thin, vertical slices (happy path first, then alternatives) for early feedback and risk mitigation.
- Big-Picture Visibility — Use case diagrams show the full set of functionality at a glance, helping teams avoid missing critical goals.
Practical Examples of Use Case Driven Requirements in Real-World Projects
Here are many concrete examples showing how use case modeling drives successful outcomes across domains:
- E-commerce Platform (Online Shopping System) Actors: Customer, Guest, Admin, Payment Gateway. Key use cases: Browse Products, Search Products, Add to Cart, Proceed to Checkout, Make Payment, Track Order, Manage Returns. Relationships: «include» (Checkout includes Make Payment), «extend» (Apply Coupon extends Checkout). Benefit: Early use case diagram reveals missing “Guest Checkout” flow → added before sprint commitment, preventing cart abandonment issues in production.
- Mobile Banking App Actors: Account Holder, Bank Teller (for branch support), Fraud Detection Service. Use cases: Log In, View Balance, Transfer Funds, Pay Bills, Deposit Check via Camera, Reset Password. Practical impact: Documenting alternative flows (e.g., “invalid credentials → multi-factor fallback”) catches security gaps early → avoids costly post-launch patches and builds trust.
- Ride-Sharing Service (e.g., Uber-like App) Actors: Rider, Driver, Administrator. Use cases: Request Ride, Accept Ride Request, Track Ride in Real-Time, Rate Driver/Rider, Process Payment, Handle Complaints. Extensions: “Request Ride” extends to “Schedule Future Ride.” Outcome: Use case slices drive MVP (request + accept + pay), then iterations add ratings and complaints → fast value delivery with clear prioritization.
- Healthcare Appointment Scheduling Platform Actors: Patient, Doctor, Receptionist, Notification Service. Use cases: Book Appointment, Cancel/Reschedule Appointment, View Availability, Send Reminders, Confirm Attendance. Benefit: Stakeholder review of use case flows uncovers “no-show handling” requirement → automated rescheduling added, reducing missed appointments by 30% in pilot.
- Restaurant Management & Ordering System Actors: Customer, Waiter, Chef, Manager. Use cases: Place Order (table or online), Prepare Order, Process Payment, Manage Menu, Generate Daily Report. Include: “Process Payment” includes “Apply Discount.” Practical: Use cases help integrate online ordering with kitchen display → seamless omnichannel experience without duplicating logic.
- ATM Banking System Actors: Cardholder, Bank System. Use cases: Withdraw Cash, Check Balance, Transfer Funds, Change PIN. Alternatives: “Insufficient funds,” “Invalid PIN → lock card after 3 tries.” Classic example: Use case model ensures all edge cases (e.g., card retention on failure) are considered before hardware integration.
- Educational Quiz & Feedback System Actors: Student, Teacher. Use cases: Take Quiz, Submit Answers, Receive Instant Feedback, Review Past Performance, Create Quiz (Teacher). Benefit: Use case narrative becomes basis for automated tests → ensures instant feedback works reliably, improving student engagement.
- Airport Check-In & Security Screening Actors: Passenger, Check-In Agent, Security Officer. Business use cases: Individual Check-In, Group Check-In, Security Screening, Board Flight. Real-world: Modeling reveals bottlenecks → self-service kiosks prioritized, speeding up passenger flow.
- Library Management System Actors: Patron, Librarian. Use cases: Borrow Item, Return Item, Reserve Book, Renew Loan, Search Catalog, Pay Fine. Outcome: Use cases drive barcode/RFID integration decisions early → smoother operations.
- Supply Chain Management System Actors: Supplier, Manufacturer, Distributor, Retailer. Use cases: Place Order, Track Shipment, Manage Inventory, Process Returns. Practical: Use case-driven requirements help prioritize real-time tracking → reduces stockouts and overstock.
Practical 2 Preview: Hands-on Use Case Modeling in Visual Paradigm
In the practical sessions, you’ll:
- Use Visual Paradigm’s AI-assisted tools to generate diagram drafts
- Edit use case diagrams.
- Write detailed flow of events (main success scenario + alternatives + exceptions) for key use cases.
- Validate requirements by walking stakeholders through scenarios → catch misunderstandings early.
By the end of Module 2, you’ll master using use cases as the “driver” that steers the entire project: from initial envisioning through iterative delivery. This user-goal focus ensures every sprint delivers meaningful value, setting a strong foundation for structural and behavioral modeling in Modules 3 and 4.
