Requirement analysis involves understanding the application domain, required services, performance, and hardware limitations. There are functional requirements, specifying how the system should function, and non-functional requirements, which constrain the system's operation. Non-functional requirements include product requirements like performance, reliability, and security, as well as organizational and external requirements. Requirement analysis involves domain understanding, requirement collection, classification, conflict resolution, prioritization, and validation.