1. Requirements engineering is concerned with identifying user needs and communicating the purpose and context of a software system.
2. There are different levels and types of requirements including business, user, and system requirements. Good requirements are unitary, complete, consistent, unambiguous, and verifiable.
3. The requirements engineering process includes elicitation, analysis, specification, verification and documentation according to standards. Effective requirements engineering is critical for project success.