Agile enthusiasts rightly praise the agile approach to software development. It puts a high value on humans, it encourages tight client collaboration, delivery of client value, and it makes sure that everyone (client & engineer alike) is working together toward a common goal. When framed in this way you may wonder why anyone would ever