With agile methods and a multi-disciplinary team ("good coders" is an unfortunate catchall phrase I used to mean people who can gather requirements, write user stories, validate, iterate, manage a burndown list, etc.), five years would be absolutely more than enough time to do all of the steps you mention and more... like change management and getting iterations into stakeholder hands early... and on and on. I am neither a youngster nor naive about the software development life cycle (both waterfall which is what it sounds like you're used to, and agile).