Why are software projects often unreliable, late, and expensive? This paper examines the critical role of coordination in software development, addressing the persistent challenges that have plagued the industry for decades. The research highlights the common problems of calendar overruns, cost overruns, code requiring in-house modifications, and code that is difficult to modify, as identified in surveys of software contractors and government contract officers. By analyzing the dynamics of coordination in software development teams, the study seeks to understand the factors contributing to these recurring issues. Ultimately, this work aims to identify strategies and best practices for improving coordination within software development projects. This research has the potential to contribute to more efficient, reliable, and cost-effective software development processes, addressing a long-standing crisis in the software industry.
Published in Communications of the ACM, this paper aligns with the journal's focus on critical issues and advancements in computer science and software engineering. By exploring the challenges of coordination in software development, this study contributes to the journal's scope of promoting best practices and addressing key problems in the field.