As we enter a new decade, it's important to take a look back at where we've been. The past 10 years saw the introduction of the Ipad, Microsoft Azure, Uber, 4G networks, and Instagram. Some might look back and call this the era of cloud computing and artificial intelligence with increased connectivity and efficiency in technology like never before. But software development goals have remained largely the same: to reduce cost and time to market, increase quality and maintainability, and allocate resources more efficiently. I'm willing to bet those goals will not change in the coming decade. At QSM, we have always believed that the only way to combat the unknown is with practical measurement and metrics grounded in data from our past. As we look to 2020, let's take a look at our top 5 resources from 2019, featuring the most current insights from our industry experts on the state of software estimation and project management and development trends.
What better way to get a bird's eye view of software development's history than with a look at long-term trends? Leveraging QSM's industry database of over 13,000+ completed projects, Katie Costantini's "Long Term Trends from 40 Years of Completed Software Project Data" took a high-level look at changes to software schedules, effort/cost, productivity, size, and reliability metrics from 1980 to 2019. The study compared insights to similar studies QSM has completed at regular intervals over the past four decades and answered questions like, 'what is the "typical" project over time?' and 'why are projects "shrinking?"
As previously mentioned, a new decade brings many unknowns, but uncertainty is a theme project managers know all too well. Laura Zuber advised how to manage expectations and assess project goals early in the software project planning process in her PDU-approved webinar, "How to Identify Unrealistic Project Expectations and What to Do about Them." She gave best practices for developing viable estimates that balance risk and opportunity, enabling executives to commit to plans that meet the most important business goals.
Though certainly not new, agile development was a defining methodology in the past decade. In QSM's 2019 Software Almanac, we focused on agile development and the continued relevance and application of estimation and metrics. Featuring 18 articles from both public and private perspectives, this book showed that traditional metrics – even sizing metrics – can and should be applied to agile projects. Those involved in software development should take comfort in the fact that there is indeed a compelling need to apply the basic principles of software estimation to projects, regardless of the methodology used (because who knows what new methodologies the next decade will bring?).
QSM also addressed agile development in our webinar "Perspective and Predictability in Agile Release Planning." Whether you release on-demand or according to a regular schedule, this webinar allowed users to visualize how many sprints it would take so they could explore a range of schedule, scope, and staffing alternatives. Laura Zuber demonstrated how to leverage project data - size, cost, schedule, and team performance - giving IT planning and decision-making processes a massive upgrade.
We finished off the year with a webinar that addressed a timely question: Is Estimation Needed When Cost and Schedule Are Fixed? The short answer: yes. Even in agile and even non-agile development environments, where the budget, team size, and schedule are fixed based on an organization’s predetermined target, scope-level estimation tools are essential in evaluating if targets are reasonable and in determining how much functionality can be delivered. Keith Ciocco showed how this invaluable analysis helps set customer expectations and provides data-driven leverage for negotiations.
At QSM, our goal is to provide our customers with the intelligence they need to development better software projects. As we move into the year 2020, we hope these QSM resources provide you with insights you can use to navigate the changing landscape of software development.