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