← Software Engineering & SDLC learning pathSoftware Engineering & SDLC · Module 4 of 10
Requirements engineering
Gather and document what users really need.
📖 Key ideas
- Functional requirements: what the system does (login, generate invoice).
- Non-functional: how well (performance, security, usability).
- Elicitation: interviews, surveys, workshops, observation.
- Document in an SRS or user stories with acceptance criteria.
- Validate requirements with stakeholders and manage changes.
💡 Real-life example: Requirements are a tailor's measurements: wrong measurements, wrong suit, however good the stitching.
Functional requirementWhat the system does
Non-functional requirementQuality attribute
SRSSoftware Requirements Specification
ElicitationGathering requirements