Podcast
Questions and Answers
Which type of event is triggered by some action within the system?
Which type of event is triggered by some action within the system?
What type of event is initiated by an action outside of the system?
What type of event is initiated by an action outside of the system?
Which of the following is an example of a Temporal Event?
Which of the following is an example of a Temporal Event?
Which of these events are influenced by factors outside the system?
Which of these events are influenced by factors outside the system?
Signup and view all the answers
Which type of event occurs as a result of the system reaching a certain condition?
Which type of event occurs as a result of the system reaching a certain condition?
Signup and view all the answers
What is the main purpose of identifying duplicates with similar use cases?
What is the main purpose of identifying duplicates with similar use cases?
Signup and view all the answers
Which of the following is NOT a step involved in the event decomposition technique?
Which of the following is NOT a step involved in the event decomposition technique?
Signup and view all the answers
What is the primary purpose of identifying a list of specific goals for each user type?
What is the primary purpose of identifying a list of specific goals for each user type?
Signup and view all the answers
What is the definition of an event in the context of the Event Decomposition Technique?
What is the definition of an event in the context of the Event Decomposition Technique?
Signup and view all the answers
What is the main benefit of using the Event Decomposition Technique?
What is the main benefit of using the Event Decomposition Technique?
Signup and view all the answers
What is the key characteristic of an external event?
What is the key characteristic of an external event?
Signup and view all the answers
Which of the following scenarios would be considered an external event?
Which of the following scenarios would be considered an external event?
Signup and view all the answers
Which of the following is NOT an example of an external output needed at points in time?
Which of the following is NOT an example of an external output needed at points in time?
Signup and view all the answers
Which of these is an example of an external event that results in a transaction?
Which of these is an example of an external event that results in a transaction?
Signup and view all the answers
What is the main purpose of tracing a sequence of transactions?
What is the main purpose of tracing a sequence of transactions?
Signup and view all the answers
Which of the following situations would require a Temporal Event Checklist?
Which of the following situations would require a Temporal Event Checklist?
Signup and view all the answers
What is the difference between an external event and a temporal event?
What is the difference between an external event and a temporal event?
Signup and view all the answers
Why is it important to identify the actual event that affects a system?
Why is it important to identify the actual event that affects a system?
Signup and view all the answers
What is the primary focus of the Event Decomposition Technique?
What is the primary focus of the Event Decomposition Technique?
Signup and view all the answers
Why is it important to consider temporal events in the Event Decomposition Technique?
Why is it important to consider temporal events in the Event Decomposition Technique?
Signup and view all the answers
What is the role of the "perfect technology assumption" in the Event Decomposition Technique?
What is the role of the "perfect technology assumption" in the Event Decomposition Technique?
Signup and view all the answers
Why are system controls like login, logout, and password changes usually excluded from the initial event decomposition?
Why are system controls like login, logout, and password changes usually excluded from the initial event decomposition?
Signup and view all the answers
How does the Event Decomposition Technique differ from traditional system analysis methods?
How does the Event Decomposition Technique differ from traditional system analysis methods?
Signup and view all the answers
What is the main purpose of identifying state events in the Event Decomposition Technique?
What is the main purpose of identifying state events in the Event Decomposition Technique?
Signup and view all the answers
How does the Event Decomposition Technique contribute to the system design process?
How does the Event Decomposition Technique contribute to the system design process?
Signup and view all the answers
Which of these is NOT a step involved in the Event Decomposition Technique?
Which of these is NOT a step involved in the Event Decomposition Technique?
Signup and view all the answers
What is an advantage of the Event Decomposition Technique?
What is an advantage of the Event Decomposition Technique?
Signup and view all the answers
What is a key advantage of using the Event Decomposition Technique to analyze system requirements?
What is a key advantage of using the Event Decomposition Technique to analyze system requirements?
Signup and view all the answers
What does the term 'elementary business process' (EBP) refer to in the context of Event Decomposition?
What does the term 'elementary business process' (EBP) refer to in the context of Event Decomposition?
Signup and view all the answers
What is a potential drawback of using the Event Decomposition Technique?
What is a potential drawback of using the Event Decomposition Technique?
Signup and view all the answers
Which of the following is NOT a benefit of using the Event Decomposition Technique?
Which of the following is NOT a benefit of using the Event Decomposition Technique?
Signup and view all the answers
How does the Event Decomposition Technique help decompose system requirements at the right level of analysis?
How does the Event Decomposition Technique help decompose system requirements at the right level of analysis?
Signup and view all the answers
Why is it important for the system to be able to 'update vacancies'?
Why is it important for the system to be able to 'update vacancies'?
Signup and view all the answers
What is the primary function of the 'Count Applications' functionality?
What is the primary function of the 'Count Applications' functionality?
Signup and view all the answers
What is the main purpose of the 'Filter Applications' functionality?
What is the main purpose of the 'Filter Applications' functionality?
Signup and view all the answers
What is the key benefit of implementing the 'Forward Applications' functionality?
What is the key benefit of implementing the 'Forward Applications' functionality?
Signup and view all the answers
What is the primary purpose of using user stories in software development?
What is the primary purpose of using user stories in software development?
Signup and view all the answers
Identify the three essential elements of a user story.
Identify the three essential elements of a user story.
Signup and view all the answers
What is the purpose of 'Acceptance Criteria' in user stories?
What is the purpose of 'Acceptance Criteria' in user stories?
Signup and view all the answers
What is the correct template for a user story description?
What is the correct template for a user story description?
Signup and view all the answers
The phrase 'As a [User type], I want to [Functionality], so that [Value]' helps define the user story. What does the 'As a [User type]' specify?
The phrase 'As a [User type], I want to [Functionality], so that [Value]' helps define the user story. What does the 'As a [User type]' specify?
Signup and view all the answers
Which of the following statements accurately describes the 'Value' element in a user story?
Which of the following statements accurately describes the 'Value' element in a user story?
Signup and view all the answers
Why is it crucial to have specific acceptance criteria for a user story?
Why is it crucial to have specific acceptance criteria for a user story?
Signup and view all the answers
What is the significance of knowing 'who' the functionality is for in a user story?
What is the significance of knowing 'who' the functionality is for in a user story?
Signup and view all the answers
Flashcards
User Stories
User Stories
Descriptions of software features from an end-user’s perspective.
Acceptance Criteria
Acceptance Criteria
Features that must be present upon task completion.
Template for User Story
Template for User Story
A user story is structured as: As a [type of user], I want to [functionality] so that [value].
User Role in User Stories
User Role in User Stories
Signup and view all the flashcards
User Functionality
User Functionality
Signup and view all the flashcards
Value of Functionality
Value of Functionality
Signup and view all the flashcards
Event Decomposition
Event Decomposition
Signup and view all the flashcards
Use Cases
Use Cases
Signup and view all the flashcards
External Event
External Event
Signup and view all the flashcards
Temporal Event
Temporal Event
Signup and view all the flashcards
State Event
State Event
Signup and view all the flashcards
Event Types
Event Types
Signup and view all the flashcards
Trigger Process
Trigger Process
Signup and view all the flashcards
User Classification
User Classification
Signup and view all the flashcards
User Goals
User Goals
Signup and view all the flashcards
Stakeholder Review
Stakeholder Review
Signup and view all the flashcards
External Agent Transaction
External Agent Transaction
Signup and view all the flashcards
Information Request
Information Request
Signup and view all the flashcards
Data Update Requirement
Data Update Requirement
Signup and view all the flashcards
Management Information Needs
Management Information Needs
Signup and view all the flashcards
Internal Outputs
Internal Outputs
Signup and view all the flashcards
External Outputs
External Outputs
Signup and view all the flashcards
Transactional Sequence
Transactional Sequence
Signup and view all the flashcards
Event Identification
Event Identification
Signup and view all the flashcards
Event Decomposition Technique
Event Decomposition Technique
Signup and view all the flashcards
Use Case Identification
Use Case Identification
Signup and view all the flashcards
Perfect Technology Assumption
Perfect Technology Assumption
Signup and view all the flashcards
Response Checklist
Response Checklist
Signup and view all the flashcards
System Controls Exclusion
System Controls Exclusion
Signup and view all the flashcards
Job Applicant Events
Job Applicant Events
Signup and view all the flashcards
Functionalities of the System
Functionalities of the System
Signup and view all the flashcards
Record Applicant Profile
Record Applicant Profile
Signup and view all the flashcards
Count Applications
Count Applications
Signup and view all the flashcards
Filter Applications
Filter Applications
Signup and view all the flashcards
Forward Applications
Forward Applications
Signup and view all the flashcards
Produce Summary Report
Produce Summary Report
Signup and view all the flashcards
Elementary Business Process (EBP)
Elementary Business Process (EBP)
Signup and view all the flashcards
Study Notes
Course Information
- Course Title: Software Requirements Analysis and Design
- Course Code: ACS2913
- Instructor: David Tenjo
- Semester: Fall 2022
Chapter 3 Outline
- User Stories and Use Cases
- Use Cases and the User Goal Technique
- Use Cases and Event Decomposition
- Use Cases in the Ridgeline Mountain Outfitters Case
Overview
- Previous chapters covered system analysis, functional and non-functional requirements, and information gathering techniques.
- This chapter focuses on identifying and modeling the key aspect of functional requirements: use cases.
User Stories
- Tools used to describe software features from an end-user perspective.
- Describe the user type, their desired outcome, and reasoning.
- Help create simplified requirement descriptions.
- One-sentence descriptions of work-related user tasks to achieve a goal.
- Acceptance criteria define necessary features at task completion.
User Stories (Template)
- Template: As a
, I want to so that . - Elements are crucial: who the story is for, what functionality is needed, value derived, and priority decisions.
- Example acceptance criteria: Given the customer has one credit account and one savings account, When they have logged in successfully, Then the two accounts are listed in account number order (Account no, Name, Balance, Available Funds).
Sample User Story
- Example Story: As a shipping clerk, I want to ship an order accurately and as quickly as possible once the order details are available.
- Acceptance Criteria:
- Available order details pop up on the screen when available.
- Portable display/scan device speeds up.
- Items are sorted by bin location.
- Items not in stock are marked as backordered.
- Shipper recommendation based on weight, size, and location.
- Shipping label printed for selected shipper.
User Stories (Aspects)
- Three aspects documented in a user story:
- Who is the function for? E.g., As a
. (More specific, the better). - What should be created? E.g., I want to
. (User should drive the goal). - Why is it valuable to the user? E.g., So that
.
- Who is the function for? E.g., As a
- Understanding the Who, What, and Why is essential for proper story understanding. If these are unclear, do not proceed with development.
Use Cases
- A use case is an activity performed by the system, typically in response to a user request.
- Use cases define functional requirements.
- Analysts decompose the system into use cases (functional decomposition).
- Techniques for identifying use cases include user goal and event decomposition techniques.
- Use cases are named using verb-noun phrases.
Identifying Use Cases
- Use cases can begin with user stories or requirements.
- Follow either the user goal technique or the event decomposition technique.
User Goal Technique
- Most common industry technique; simple and effective.
- Identify all potential user categories.
- Interview users to understand their tasks and desired functionalities.
- This technique refines tasks into specific user goals.
- Example of a user goal: "I need to ship items, track a shipment, create a return."
User Goal Technique (Specific Steps)
- List all potential system users.
- Classify users by their roles.
- Categorize users further by organizational level (e.g., operational, management, executive).
- For each user type, list goals for using the system, considering new functionalities.
- Create a list of preliminary use cases, categorized and revised for inconsistencies.
- Determine where multiple user types need the same use cases.
- Review the finalized use cases with the corresponding user groups and key stakeholders.
Event Decomposition Technique
- More comprehensive and structured approach.
- Identify events triggering system responses.
- For each event, name a use case describing the system's action (verb-noun).
- Define Events as something happening at a specific time and place.
Events and Use Cases (Examples)
- "Customer pays bill," so the use case is "Record a payment."
- "Time to send late notices," so the use case is "Send late notices."
- "Customer changes address," so the use case is "Maintain customer data."
Types of Events
- External event: event outside the system, typically initiated by an external actor.
- Temporal event: event occurring as a result of reaching a point in time.
- State event: event within the system that triggers a process.
External Event Checklist
- External agent or actor wants something resulting from a transaction.
- External agent or actor requires information.
- External data changed and requires updating.
- Management needs information.
Temporal Event Checklist
- Internal outputs needed at specific times (e.g., management reports, operational reports).
- External outputs needed at specific times (e.g., statements, status reports, bills).
Finding the Actual Event
- Illustrations help visually identify the actual event causing a system change.
Tracing a Transaction Sequence
- Sequence of events leading to multiple transactions.
Event Decomposition Technique (Specific Steps)
- Consider external events requiring a system response.
- For each external event, define and name a use case.
- Consider temporal events needing a system response; define and name a use case.
- Define the steps, events, and use cases.
- Review for required use cases.
Event Decomposition Example (Recruitment System)
- Example: a job applicant triggers creation of a profile, searching for vacancies, and submitting an application. The system must handle recording applicant information, recording vacancies, and accepting applications as necessary use cases.
Event Decomposition Technique (Benefits)
- Events are broader than user goals.
- Capture temporal and state events.
- Breaks down to elementary business processes (EBPs).
- Fundamental business process steps for one person, action triggering use cases, system event.
Perfect Technology Assumption
- No need to anticipate limitations in technology; consider during design phase.
- Examples: user logging on, changing passwords, preference settings.
Summary
- Use cases define system functions for user requests.
- User goal and event decomposition are techniques used for this.
- The user goal technique identifies actors and their goals, while event decomposition analyzes system-triggering events.
- External, temporal, and state events are system-impacting factors.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Test your knowledge on the Event Decomposition Technique and its various types of events. This quiz covers definitions, characteristics, and the implications of different event categories within a system. Perfect for students and professionals looking to deepen their understanding of event-driven analysis.