Blending Agile and Waterfall: The Keys to a Successful Implementation