Software requirements : pactical techniques for gathering and managing requirements throughout the product development cycle - Wiegers, Karl Eugene 1953- (Microsoft, 2003)