ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Object Oriented Analysis and Design
    COMP3150
    Progress0 / 17 topics
    Topics
    1. Principles of Object Technology2. OOP Review3. Principles of Modeling4. OOA&D Overview5. OO Development Process6. Requirements Engineering: Use Cases and Prototyping7. Class Models8. Interaction Diagrams9. Verification and Validation10. Architectural and Detailed Design11. Class Diagrams12. State Machines and Diagrams13. Implementation and Package Diagrams14. Activity Diagrams15. OO Patterns16. Object Diagram, Component Diagram, and Deployment Diagram17. Network Diagram
    COMP3150›Requirements Engineering: Use Cases and Prototyping
    Object Oriented Analysis and DesignTopic 6 of 17

    Requirements Engineering: Use Cases and Prototyping

    3 minread
    568words
    Beginnerlevel

    📘 Requirements Engineering: Use Cases & Prototyping (OOAD)


    🔹 1. Definition of Requirements Engineering

    Requirements Engineering (RE) is the process of collecting, analyzing, documenting, and validating what a software system should do.

    👉 Simple idea: It answers: “What does the user want?”


    🔹 2. Key Activities in Requirements Engineering

    1. Elicitation → Gathering requirements
    2. Analysis → Understanding and refining
    3. Specification → Documenting clearly
    4. Validation → Checking correctness

    ⭐ PART A: USE CASES


    🔹 3. What is a Use Case?

    A Use Case describes how a user (actor) interacts with a system to achieve a specific goal.

    👉 It shows functional requirements in a simple way.


    🔹 4. Components of a Use Case

    Component Description
    Actor User or external system
    Use Case Function (e.g., Login, Withdraw Cash)
    System The software being developed
    Scenario Step-by-step interaction

    🔹 5. Use Case Diagram (UML)

    Definition: A graphical representation of actors and their interactions with the system.

    Diagram Description:

    • Stick figures → Actors
    • Ovals → Use cases
    • Lines → Interaction

    🔹 6. Types of Actors

    • Primary Actor: Initiates interaction
    • Secondary Actor: Supports the system

    🔹 7. Relationships in Use Cases


    🔸 7.1 Include Relationship

    • One use case always includes another

    Example:

    Withdraw Money → includes → Authenticate User
    

    🔸 7.2 Extend Relationship

    • Optional behavior

    Example:

    Login → extends → Two-Factor Authentication
    

    🔸 7.3 Generalization

    • Inheritance among actors/use cases

    🔹 8. Use Case Scenario (Step-by-Step)

    👉 Example: ATM Withdraw Money

    1. User inserts card
    2. System asks for PIN
    3. User enters PIN
    4. System verifies
    5. User selects withdraw
    6. Cash is dispensed

    🔹 9. Advantages of Use Cases

    • Easy to understand
    • Focus on user perspective
    • Helps in communication
    • Identifies system functionality

    ⭐ PART B: PROTOTYPING


    🔹 10. What is Prototyping?

    Prototyping is the process of creating a working model (sample system) to understand and refine requirements.

    👉 Simple idea: Build a small version first, improve later.


    🔹 11. Types of Prototypes


    🔸 11.1 Throwaway (Rapid) Prototype

    • Built quickly and discarded
    • Used to understand requirements

    🔸 11.2 Evolutionary Prototype

    • Continuously refined into final system

    🔸 11.3 Incremental Prototype

    • Built in parts/modules

    🔹 12. Prototyping Process

    Identify Requirements → Build Prototype → User Evaluation → Refine → Final System
    

    🔹 13. Advantages of Prototyping

    • Early user feedback
    • Reduces misunderstanding
    • Improves system usability
    • Detects errors early

    🔹 14. Disadvantages of Prototyping

    • Can increase cost/time if misused
    • Users may expect final system too early
    • Poor design if rushed

    🔹 15. Use Cases vs Prototyping

    Feature Use Cases Prototyping
    Focus Functional behavior System appearance & interaction
    Form Text/Diagram Working model
    Purpose Understanding requirements Validating requirements

    🔹 16. Example (Library System)


    🔹 Use Case:

    • Actor: Member
    • Use Case: Borrow Book

    🔹 Prototype:

    • Simple UI showing:

      • Book search
      • Borrow button

    🔹 17. Important Rules / Tips

    • Use cases should be clear and simple
    • Focus on user goals
    • Prototype should be quick and flexible
    • Always get user feedback

    🔹 18. Likely Exam Questions

    1. Define Requirements Engineering.
    2. What is a Use Case? Explain with example.
    3. Draw and explain a Use Case Diagram.
    4. Explain include and extend relationships.
    5. What is prototyping?
    6. Types of prototypes in software development.
    7. Advantages and disadvantages of prototyping.
    8. Difference between use cases and prototyping.
    9. Explain ATM use case scenario.
    10. Describe the prototyping process.

    🔹 19. Quick Revision Summary 🧠

    • Requirements Engineering = Understanding user needs

    Use Cases:

    • Actor + Interaction
    • Show system functionality
    • Include, Extend relationships

    Prototyping:

    • Early working model

    • Types:

      • Throwaway
      • Evolutionary
      • Incremental

    👉 Trick to Remember: "UP" → Use Cases + Prototyping


    Previous topic 5
    OO Development Process
    Next topic 7
    Class Models

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time3 min
      Word count568
      Code examples0
      DifficultyBeginner