Although few software people question the benefit of an agile, organized software process or solid software engineering practices, many practitioners and managers do not know enough about either subject.3 As a consequence, inaccurate percep- tions of process and practice lead to inappropriate decisions when an SPI framework is introduced. It follows that a key element of any SPI strategy is education and train- ing for practitioners, technical managers and more senior managers who have direct contact with the software organization. Three types of education and training should be conducted:
Generic concepts and methods. Directed toward both managers and practitioners, this category stresses both process and practice. The intent is to provide professionals with the intellectual tools they need to apply the software process effectively and to make rational decisions about improve- ments to the process. Specific technology and tools. Directed primarily toward practitioners, this category stresses technologies and tools that have been adopted for local use. For example, if UML has been chosen for analysis and design modeling, a training curriculum for software engineering using UML would be established. Business communication and quality-related topics. Directed toward all stakeholders, this category focuses on “soft” topics that help enable better communication among stakeholders and foster a greater quality focus.
In a modern context, education and training can be delivered in a variety of dif- ferent ways. Everything from podcasts, to Internet-based training (e.g., [QAI08]), to DVDs, to classroom courses can be offered as part of an SPI strategy.