Lecture_03 Flashcards
Specification Context Use Case Modeling (20 cards)
What are the two key domains in RE?
Application Domain: The world, where people, organizations, and problems live.
Machine Domain: software and hardware solving some problems and meeting some needs.
What is the difference between a requirement and a specification?
Requirements: things in the application domain we want to make true by building the system
Specification: the behavior that a program needs in order to solve the problem.
What does the formula S, D ⊨ R mean in RE?
The specification, along with domain assumptions, entails (satisfies) Requirements.
What are domain properties in RE?
Things in the application domain that are true whether
or not we build the system
What is the key difference between requirements and design?
Requirements describe what the system must do.
Design describes how the system achieves it.
Why should requirements be technically neutral?
To avoid unnecessary constraints on developers and allow flexibility in design.
What is the purpose of requirements modeling?
Summarize requirements visually.
Help define system scope and interactions.
Identify missing requirements.
What are some common requirements modeling techniques?
Context diagrams.
Use case diagrams.
Goal models (iStar, GRL, KAOS).
Customer journey maps.
What is a context diagram?
A visual model that shows a system’s external actors and the flow of data between them.
What are the key components of a context diagram?
System actor (in the center).
External actors (interacting entities).
Inputs and outputs (data exchanges).
Why are context diagrams helpful for scoping?
They clarify system boundaries and external dependencies.
What should NOT be included in a context diagram?
Actions or workflows (only data flow should be shown).
What is a use case diagram?
A UML model that represents actors interacting with system functions (use cases).
What are the key elements in a use case diagram?
Actors (users or systems interacting with the system).
Use cases (functions the system provides).
Associations (relationships between actors and use cases).
System boundary (defines the scope).
What is the purpose of use case diagrams?
Capture system functionality.
Show how users interact with the system.
Identify key features and missing use cases.
What does “extends” mean in a use case diagram?
A use case extends another if it provides an optional additional behavior.
What does “includes” mean in a use case diagram?
A use case includes another if it always calls that use case as part of its execution.
Give an example of an “extends” relationship in a bike rental system.
Base use case: “Rent Bike”.
Extending use case: “Apply Discount” (only applies if the user has a discount code).
Give an example of an “includes” relationship in a bike rental system.
Base use case: “Pay for Bike Rental”.
Included use case: “Process Payment” (always executed).
What are some common tools for creating context and use case diagrams?
Miro
Draw.io
Powerpoint / word