This practical guide describes the methods used for determining computer system requirements. Designed to enable readers to navigate the maze of techniques utilized at different stages of software development--from requirements determination to implementation and maintenance.