• A process by which analysts gather information on what the system should do, from as many sources as possible.
  • All methods are effective but some are more efficient than others.
  • Different methods can be combined for more comprehensive fact-finding.

Characteristics of good Analysts

Impertinence ⇒ question everything, assume nothing Impartiality ⇒ find the best solution to the business problem Relax ⇒ constraints assume anything is possible but eliminate the infeasible Attention ⇒ to detail be precise, comprehensive, and consistent ReFraming ⇒ be creative and “think outside the box”

Stakeholders

  • Internal stakeholders — people within the organisation, e.g., employees, volunteers, ….
  • External stakeholders — people outside the organisation, e.g., suppliers or shipping companies.
  • Operational stakeholders — people who regularly interact with the system, e.g., accountants, factory supervisors, customers, ….
  • Executive stakeholders — people who don’t directly interact, but use the information or have a financial interest, e.g., senior managers, board of directors, regulatory authorities, ….

stakeholders diagram|300

Information Gathering

  • Existing Information
  • Interview and discussions
  • Observew and document business process
  • Prototypes
  • Questoinnaires
  • Vendor Solutions

Validation of Requirements

  • Make sure gathered information is correct.
  • Structured walk-through:
    • effective way to implement quality control early in project
    • verify and validate system requirements
    • review of findings from investigation
    • review of models based on findings
  • Project manager responsible for system quality.
  • Schedule review soon after document creation.
  • Review conducted by experienced analyst and stakeholders, presented by analyst.

Requirements in Agile Methodologies

  • Requirements should be decoupled:
    • must be as independent as possible
    • identify which requirements to implement not when to implement them
  • Every iteration includes a requirements collection and prioritisation activity:
    • important requirements are implemented next
    • less important requirements held to later iterations, or not implemented at all
    • scrum: product backlog
    • UP: inception & elaboration phases
    • xp: user stories

interviewing

participant-observation