Current techniques in the development of system requirements include brainstorming, interviews, and prototyping. These techniques can be time consuming, and requirements gained from these techniques rarely meet the needs of users. Reworking requirements can be quite costly. Discrepancies in...