Lecture_05 Flashcards
Journey Concepts Writing
What is a Customer Journey Map (CJM)?
A visual representation of a user’s experience with a system, showing touchpoints, emotions, and interactions over time.
How is a Customer Journey Map different from UML diagrams?
Unlike UML activity or sequence diagrams, CJMs focus on user emotions, interactions, and pain points rather than system behavior.
What are the key elements of a Customer Journey Map?
Personas (user characteristics)
Timeline (phases of interaction)
Emotions (frustration, happiness)
Touchpoints (actions and interactions)
Channels (where interaction happens, e.g., website, app, store)
Why are Customer Journey Maps useful in Requirements Engineering?
Identify pain points and improvement areas.
Help understand user expectations.
Improve usability and user experience (UX).
What is an example of a Customer Journey Map for an online shopping system?
Phases: Awareness → Consideration → Purchase → Delivery → Support.
Pain Points: Long checkout time, unclear return policy.
How would a Bike Rental System Journey Map look?
Phases: Bike selection → Payment → Confirmation → Ride → Return → Feedback.
Pain Points: Unavailable bikes, unclear rental terms, return process issues.
How does a Journey Map help identify usability issues?
By tracking user emotions at each step and pinpointing frustration areas (e.g., confusion during sign-up).
What are the four levels of requirements in IEEE Standard 29148 (2018)?
-Business Requirements (BRS): High-level goals (e.g., “Increase online sales by 20%”).
-Stakeholder Requirements (StRS): User needs (e.g., “Customers should view previous orders”).
-System Requirements (SyRS): Defines system constraints and scope.
-Software Requirements (SRS): Technical specifications for development.
How do user needs differ from stakeholder needs?
Users interact with the system, while stakeholders may fund, regulate, or be affected by it.
Give an example of a stakeholder requirement vs. a system requirement.
Stakeholder Requirement: “The system should allow quick bike rentals.”
System Requirement: “The rental process should be completed within 2 minutes 80% of the time.”
What is the difference between functional and non-functional requirements?
Functional Requirements (FRs): Define what the system must do (e.g., “The system shall allow users to rent bikes”).
Non-Functional Requirements (NFRs): Define how well the system does it (e.g., “The system should process payments within 3 seconds”).
Why are NFRs critical in system design?
Even if a system meets all functional requirements, poor performance, usability, or security can cause it to fail.
Give examples of common NFRs.
Usability: “80% of users should complete sign-up in < 1 min.”
Performance: “Process 500 transactions per second.”
Security: “Encrypt user data with AES-256.”
Availability: “99.99% uptime required.”
What is an NFR hierarchy, and why is it useful?
A tree structure organizing high-level qualities (e.g., security) into sub-characteristics (e.g., encryption, access control).
What is the difference between domain properties, requirements, and constraints?
Domain Properties: Facts that hold regardless of the system (e.g., “Bikes require maintenance”).
Requirements: Define what the system must achieve (e.g., “System should allow bike reservations”).
Constraints: External limitations on system design (e.g., “Must comply with GDPR”).
Give an example of a constraint affecting a bike rental system.
“Payment processing must follow PCI-DSS security standards.”
“Bikes must be accessible for disabled users.”
Why are writing requirements in natural language challenging?
-Ambiguity (words can have multiple meanings).
-Lack of precision (vague descriptions).
-Inconsistent interpretations (different stakeholders may understand the same sentence differently).
What are the advantages of using natural language for requirements?
Easily understood by all stakeholders.
No special training is needed (unlike UML or formal logic).
What is a user story in Agile development?
A simple, structured way to capture user needs. Format:
“As a [type of user], I want [goal], so that [reason].”
Give an example of a user story for a bike rental system.
“As a bike renter, I want to see bike availability in real-time, so that I don’t waste time looking for bikes.”
What are the three key elements of a user story?
Written description (brief goal).
Conversation (discuss details with team).
Acceptance criteria (how to confirm it’s done).
What is an epic in Agile?
A large user story that needs to be broken down into smaller, manageable stories.
Give an example of an epic vs. a user story.
Epic: “As a user, I want to search for a job.”
User Story 1: “As a user, I want to search jobs by location.”
User Story 2: “As a user, I want to filter jobs by salary range.”
What is acceptance criteria in Agile?
A high-level test that confirms whether a user story is complete.