4.1 Stakeholder Management and Gathering Requirements

4.1.1 Requirements

Before building anything, data engineers need to understand what they are building and why. Requirements follow a hierarchy of needs:

  1. Business Goals - growing revenue, market share, or user base
  2. Stakeholder Needs - individual employees need proper resources, tools, management, and robust data systems to do their work
  3. System Requirements
    1. Functional - specific functionality the system must provide
    2. Non-functional - characteristics and attributes of the system: latency, scalability, reliability, maintainability, cost, security
Requirements Hierarchy of Needs Requirements Hierarchy of Needs

4.1.2 Evaluating Tradeoffs

Every project is constrained by three forces: timeline, budget, and scope (features of the system). These form the Iron Triangle - increasing one dimension inevitably puts pressure on the others.

The Iron Triangle The Iron Triangle