Jim McHale has a degree in electrical engineering from the University of Pittsburgh and spent 20 years as a software developer, systems engineer, and project leader on industrial control systems such as steel mills, power plant control and monitoring, and driverless transportation. Since 1999, as a senior member of the technical staff at Carnegie Mellon University’s Software Engineering Institute, he occasionally teaches CMMI. However, most of his time is spent training and coaching development teams and their organizations in the Team Software Process (TSP), emphasizing quality in order to be equally more agile and more disciplined within their existing environments.
Thursday, November 8, 2012: 8:30 AM - 9:25 AM
In regard to software development methods, our industry continues to debate the relative merits of being lightweight, or “agile” against being more formal or heavyweight, often code for CMMI-oriented organizations. Both sides can point to the failings of the other, usually with thin evidence to back up their claims. But, in actual software development practice, there is a vast middle ground that uses a combination of practices that are both recognizably agile and CMMI.
Virtually all real-world projects today demand both the flexibility that characterizes agile methods and elements of the technical and managerial rigor that characterize CMMI. And this, of course, is what really happens most of the time. Instead of debating the relative merits of one approach or another, Jim will focus on ways that the best-performing development teams use the entire spectrum between agility and formality. Features such as planning, training, measurement, role definitions, coaching, design, and testing are crucial for most long-term definitions of “success.” So, let us acknowledge them as such, talk about how to incorporate the critical elements of each as appropriate, and move forward.
- Discover that agile and CMMI have a far more intimate historical relationship than most people realize.
- Learn how agile and CMMI co-exist quite happily in many organizations today.
- Understand that both agile and CMMI concepts must be embraced in order to meet the business and technology challenges of the future.