IN4MATX 43 Lecture Notes - Lecture 4: Use Case, User Interface, Precondition
IN4MATX – 36900 – Intro to Software Engineering
Week 2 – Lecture 4 – Use Cases
Use Case
• A textual description of a set of actions defining interactions between an actor
and the system to achieve a goal
• What does this include?
o Basic functionality/goal
o Any precondition
o Flow of events
o Any post condition
o Any error condition and/or alternative flow
• Use cases go hand-in-hand with requirements
Flows
• What is flow?
o The steps that describe the relationship/interaction between a ‘user’ and a
‘system’
o A set of flows is described by a use case, and together, they both
accomplish a specific user ‘goal’
• What are the types of flows?
o Basic flow
▪ ‘happy day’ scenario
o Alternative flow
▪ The goal is achieved, but in a different way
o Exception flow
▪ The goal is not achieved
Why Use Cases?
• Other Requirements Engineering Methods
• Use Cases
Why NOT Use Cases?
• Use cases are not good for specifying
o User interfaces
o Data formats
o Business rules
o Non-functional requirements
Actors
• They are a representation of external concepts that interact with the system
o Human
find more resources at oneclass.com
find more resources at oneclass.com
Document Summary
In4matx 36900 intro to software engineering. Week 2 lecture 4 use cases. Happy day" scenario: alternative flow, the goal is achieved, but in a different way, exception flow, the goal is not achieved. Why use cases: other requirements engineering methods, use cases. Why not use cases: use cases are not good for specifying, user interfaces, data formats, business rules, non-functional requirements. Include: how the use case starts and ends, the interactions (in sequence) between use case and actors, what data is needed by /exchanged during the use case, basic flow, alternative/exception flows (if applicable) How to build a use case: name use case, describe basic flow, add variations, if applicable, alternative flows, exception flows. Use case template: name/title, description, revision history, actors, system mscope, goal, level, assumptions, relationships. Use case diagrams: graphical view of actors, use cases, and their interactions. Reminder: fundamental principles: rigor and formality, separation of concerns, modularity, abstraction, anticipation of change, generality.