Agile methods for software practice transformation
by E. V. Woodward,
R. Bowers,
V. S. Thio,
K. Johnson,
M. Srihari,
and C. J. Bracht
In a large-scale distributed complex software engineering
environment, the ability to rapidly evaluate and improve software
engineering practices can be a key market differentiator. Practices
that shorten the development cycle, cost-effectively improve quality,
and align software with customer needs can have a direct impact on
the business value delivered by the enterprise. The IBM Quality
Software Engineering (QSE) organization motivates and enables
teams across IBM business units and geographies to adopt
recommended software engineering practices. QSE has historically
established communities and used well-known organizational change
management principles to help teams adopt and use recommended
practices. In 2008 and 2009, QSE discovered that blending
well-known organizational change management principles with agile
software development principles enables communities to more
consistently deliver significant value to their members. QSE
Communities use Scrum, which is an agile project management
framework, to prioritize their work on the basis of the communities’
needs, plan their work every two weeks and then deliver value at the
end of every two-week Sprint (iteration), demonstrate results, and
obtain feedback and continuously improve by reflecting and
identifying improvement actions at the end of each Sprint. Combining
Scrum with proven steps to organizational change management has
allowed QSE to rapidly motivate and enable software engineering
improvements across IBM.