Requirement engineering involves several key tasks: inception to establish project scope, elicitation to determine user needs, elaboration to refine requirements, negotiation to resolve conflicts, validation to verify requirements, and management of changing requirements. Effective elicitation uses techniques like interviews, scenarios, and ethnography to understand stakeholders and identify general, expected, and unexpected requirements while addressing problems of scope, understanding, volatility, and communication barriers. Requirements are further developed through analysis, modeling, prioritization, and specification documentation. Regular reviews validate that requirements define the desired system.