This chapter explains how natural language processing (NLP) and participatory design can aid in identifying system requirements. It argues that getting a complete list of requirements is often an iterative process in which some requirements are elicited only when users react to the system’s design. Costs of iterative requirements identification can be reduced by discovering new requirements during the design process, before implementation begins. This is facilitated when users participate in design, reacting to features as they are proposed. As users evaluate proposals, they often mention requirements not previously documented. Transcripts of participatory design sessions thus provide a rich source of new requirements for developers. The chapter explains how semantic grammars can be used to simplify the extraction of requirements from such transcripts. The authors hope that an understanding of the value of participatory design and NLP will aid in the creation of better tools for support of software development.