Database develop. life cycle - Gathering User Requirements

1. Purpose

  • To understand what end-users need from the database.

  • Ensures the system is designed around real-world tasks, not just technical assumptions.

  • Prevents costly redesigns later by clarifying needs upfront.


2. Who to Involve

  • Primary Users: People who directly interact with the database (clerks, students, sales staff).

  • Secondary Users: Managers and analysts who use reports.

  • Technical Staff: DBAs, IT support who maintain the system.

  • Decision Makers: Executives who need high-level insights.


3. Techniques for Gathering Requirements

  1. Interviews

    • One-on-one or group discussions.

    • Ask open-ended questions:

      • “What reports do you need regularly?”

      • “What’s most frustrating about the current system?”

  2. Questionnaires/Surveys

    • Useful when there are many users.

    • Can collect both qualitative and quantitative data.

  3. Observation (Job Shadowing)

    • Watch users perform tasks.

    • Helps uncover needs they may not articulate.

  4. Document Analysis

    • Review existing records, spreadsheets, forms, and reports.

    • Shows what data is already collected and what’s missing.

  5. Workshops / Focus Groups

    • Bring multiple stakeholders together.

    • Helps resolve conflicting requirements.

  6. Prototyping

    • Show a mockup or simple interface.

    • Gather feedback and refine requirements.


4. Steps in the Process

  1. Prepare: Identify user groups, choose techniques, design interview/survey questions.

  2. Collect Requirements: Use multiple techniques to avoid blind spots.

  3. Analyze: Look for patterns, contradictions, and priorities.

  4. Document: Write clear, structured requirements (business, user, data, functional, non-functional).

  5. Validate: Review with users to confirm accuracy and completeness.


5. Example

For a Hospital Patient Database:

  • From doctors: “We need quick access to patient history during emergencies.”

  • From nurses: “We need a simple way to record daily observations.”

  • From administrators: “We need billing and insurance records linked with patient visits.”

  • From patients: “We want online access to lab results.”


6. Why It Matters

  • Ensures the database is useful and user-friendly.

  • Aligns the system with real business processes.

  • Reduces misunderstandings between developers and users.