To keep large programs well structured, you either need superhuman will power, or proper language support for interfaces.
The focus on external interfaces is inevitable in a method that asks "What will the system do for the end user?" s the key question: the answer will tend to emphasize the most external aspects.
Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) by Bertrand Meyer
ISBN: 0136291554 This book is available from
Putting the power of Windows Presentation Framework into the hands of developers who are unschooled in the art of user interface design is like giving liquor and Corvette keys to teenage boys. It's fun for them, temporarily, but the end results aren't pretty.