Software Requirements and Specifications: A Lexicon of Practice, Principles and Prejudices (ACM Press)