A Michael Phelps approach to software development and design