Best Practices for managing Software Project Timelines