Ken Schwaber was an originator of the popular Scrum framework for agile software development, along with Jeff Sutherland, and he was a signatory of 2001's Manifesto for Agile Software Development. These days, Schwaber is more interested evidence-based management, which is intended to base decisions on current, best evidence rather than on circumstantial evidence. He will be speaking on this topic at the ALM Forum conference in Seattle this week.
InfoWorld Editor at Large Paul Krill recently talked with Schwaber about the state of agile, where mobile and Web development fits in, and Scrum and evidence-based management.
InfoWorld: What brought about the need for Scrum and agile development methodologies?
Schwaber: OK, a slight distinction. Methodology tells you what to do very precisely. Scrum is a framework within which you can develop complex products, but you have to figure out how to do it yourself. The old-style methodologies were waterfalls, like from Coopers Lybrand and Ernst & Young, and they very precisely told you task by task by task what to do.
Jeff [Sutherland] and I had a lot of experience with them and found them very inappropriate because those people who had built those methodologies had never been in the same situations, serving the same customers, building the same requirements, using the same technologies that we did. We were both working at different companies in Boston. We built Scrum to build software to suit and serve more customers with, and we were both using fairly complex object-oriented technology to build the software. We were both serving pretty demanding customers, and we felt that we could rapidly handle changing requirements to work with some pretty unstable technology and get [product] to our customers very quickly.
Scrum is very much like a [book on the] game of chess. It simply describes how you would go about building software, but it wouldn't tell you move by move what to do. You have to figure that out for yourself.
InfoWorld: How does agile impact mobile and Web development?
Schwaber: The word "agile" was derived by a bunch of us who were building software for pretty new products and pretty new technologies like you just described. We have iOS, Android, those types of things, or for building software for things like cars or medical products. Almost all those people, none of them use waterfall. They all had these approaches, which required very short cycles of work to find out what was possible and then building on that. Again, think of the word "empirical."
All of those places use something that is like Scrum. They may use different words, they may use different approaches, but Scrum is based on what those people had to do and have to do to survive and compete.