This document discusses techniques for eliciting requirements for software projects. It describes stakeholder analysis, brainstorming, one-on-one interviews, group interviews, document analysis, focus groups, interface analysis, observation, prototyping, and requirements workshops as common techniques. Stakeholder analysis identifies all users and stakeholders to ensure all needs are considered. Brainstorming gathers many ideas from a group. One-on-one interviews provide an in-depth understanding of each stakeholder's perspective but can be time consuming. The document emphasizes that interviews of users and stakeholders are important for understanding expectations and creating satisfying software.