02 - Functional Requirements Flashcards
(34 cards)
What is the role of use-case modeling
Capture the system behavior from the users point of view
How does the use-case modeling relates to the domain modeling
The use-case modeling in developed incrementally in cooperation with the domain model
How does the use-case modeling helps the software development process
Capturing data and functional requirements
Planning iterations of development
Validating the system
It captures all the required functionalities
What are actors in use-case modeling
An actor represents something outside the system that interacts directly with it
Can be a person or another system
Provides input to or receives output from the system
True or false
We can not derive use cases from actors
False
Actors are usually the source for discovering use cases
How do we identify actors in use case modeling?
We ask the following questions
- who or what uses the system?
- what roles do they play in the interaction?
- who gets and provides information to the system?
- what other systems interact with this system?
- who installs, starts and shuts dow, or maintains the system?
True or false
Input/output devices are never actors
True
What is a use case in the use-case modeling?
It is a specific way of using the system by performing some part of its functionality
It describes the interaction that takes place between an actor and the system and what the system must do. Considered from the actors viewpoint
What constitutes a use case in use-case modeling
A complete sequence of events/actions
It is always initiated by an actor
What is a scenario in use-case modeling
It is a concrete, focused, informal description of a single use of the system from the view point of a single actor
What are the viewpoints of use-case modeling?
Top-down: start with use cases and refine either scenarios
Bottom-up: start with scenarios and abstract to use cases
How do we identify use cases and scenarios?
By asking the following questions:
- what are the tasks that an actor wants the system to perform?
- what information does an actor access (create, store, change, remove or read) in the system?
- which external changes does an actor need to inform the system about?
- which events does an actor need to be informed about by the system?
- how will the system be supported and maintained?
What is a good use case?
A use case typically represents a major piece of functionality that is complete from beginning to end
It must deliver something of value to the actor
What is a precondition in use-case modeling
Is a statement about the state the system and/or the actor(s) must be in for the use case to be performed
When the is a precondition needed?
A precondition is only needed if a use case cannot be performed unless certain conditions are true
What is a post condition in use-case modeling
It is a statement about the state the system is in at the conclusion of a use case
When is a post condition needed?
A post condition is only needed if the system state when the use case ends is important to an actor of the use case
A post condition is needed when the completion of the use case leaves the system in a particular state that may need to be a precondition for another use case
What is the flow of events in use-case modeling
Is a precise, but easy to read, description of the sequence of actions needed to accomplish a use case
What the system and the actor should do to perform the use case
What are the paths represented in the flow of events
The basic flow, which represents the most common path
And alternative flows, which represents optional, variants or exceptional behaviors
What is an extension point in use-case modeling
Is a named place in the flow of events where additional behavior can be inserted
They are primarily used for defining alternative flows
What are the kinds of extensions in use-case modeling
A single location
A set of discrete locations
A region
What are alternative flows in use-case modeling
They describe optional, variant or exceptional behavior
They allow infrequently used functionality to be added incrementally to the basic flow
What are the types of alternative flow?
Specific alternative flow, which starts in a specific named point in another flow of events
Bounded alternative flow, which can occur between two extension points of the use case
General alternative flow, which can start at any given point within a use case
What is a sunflow in use-case modeling
Is a segment of behavior within a flow of events that has a clear purpose and is atomic
A subflow is not a separated use case, but a integral part of the use case