From ad hoc to Agile
The problem is not transitioning from Waterfall to Agile. The real problem is transitioning from ad hoc to Agile.
This observation by Darren really resonates with me. Nowadays the preferred solution to various software engineering problems seems to be Agile. Latching to Agile, however, does not necessarily indicate that the software method in use has failed. Rather, it often indicates the lack of an appropriate software method/process.
Hence, my invariable counsel to folks who are about to embark on an Agile rollout: start by recording the state of affairs before the Agile rollout. For example, capture your productivity metrics for the period prior to training your teams in Agile. For better or worse, this is your true baseline.