Tuesday, September 14, 2004

Real Time Process Improvement with SCRUM



Tonight, I am giving a presentation on SCRUM at the Boston Software Process Improvement Network monthly meeting at MITRE Corp. in Bedford, MA. It is a variant of the SCRUM Theory and Practice portion of the OTUG workshop I did in Minneapolis last year.

Sutherland, Jeff. Scrum: Theory and Practice. Object Technology User Group Distinguished Lecture: Agile Software Development with SCRUM with Application to Healthcare Mobile Platform Development. University of St Thomas, St Paul, MN, March 18, 2003.

A core piece of this presentation is a review of iterative and incremental development, a basic strategy for all agile processes. It is important to note that leading experts in the field felt strongly even in 1957 that the waterfall method did not describe what actually happened in software development. Yet the waterfall method has become a lingering urban myth, despite causing hundreds of billions of dollars of project failures. It is essential to constantly remind people that the waterfall method is fundamentally flawed in concept and has doomed to failure many of the most well funded software projects.

Larman and Basili's paper on this topic is required reading for those interested in this topic. Send me a note if you can't get your hands on a copy.

Larman, Craig and Basili, VictorIterative and Incremental Development: A Brief History. IEEE Computer 36:6:47-56, June 2003.

"We were doing incremental development as early as 1957, in Los Angeles, under the direction of Bernie Dimsdale [at IBM's Service Bureau Corporation]. He was a colleague of John von Neumann, so perhaps he learned it there, or assumed it as totally natural. I do remember Herb Jacobs (primarily, though we all participated) developing a large simulation for Motorola, where the technique used was, as far as I can tell, indistinguishable from XP.

"When much of the same team was reassembled in Washington, DC in 1958 to develop Project Mercury, we had our own machine and the new Share Operating System, whose symbolic modification and assembly allowed us to build the system incrementally, which we did, with great success. Project Mercury was the seed bed out of which grew the IBM Federal Systems Division. Thus, that division started with a history and tradition of incremental development.

"All of us, as far as I can remember, thought waterfalling of a huge project was rather stupid, or at least ignorant of the realities. I think what the waterfall description did for us was make us realize that we were doing something else, something unnamed except for "software development." Gerald Weinberg

No comments: