Sunday, July 29, 2007

Agile Video Contest - post yours before Agile 2007


There is an Agile You Tube video contest going on sponsored by VersionOne, Google, and InfoQ. The best video will be selected (and rewarded) at the Agile 2007 conference in Washington, D.C. next month.

Check out current video submissions and submit your entry now!

Thursday, July 12, 2007

ScrumMaster Certification: Silicon Valley


1-2 August Sunnyvale, CA

Get certified by Jeff Sutherland, Co-Creator of Scrum and Gabrielle Benefield, Agile leader at Yahoo. Click here to sign up.


Jeff started the first Scrum at Easel Corporation in 1993 and worked with Ken Schwaber to emerge Scrum as a formal process at OOPSLA'95. Together, they extended and enhanced Scrum at many software companies and IT organizations and helped write the Agile Manifesto.

Participants will learn everything necessary for getting started with Scrum. There are very few rules to Scrum so it is important to learn its fundamental principles by experiencing them.

In this course, participants gain hands-on practice with the release backlog, sprint backlog, the daily Scrum meeting, tracking progress with a burndown chart, and more. Participants experience the Scrum process through a "59-minute Scrum" and the "XP Game" which simulate Scrum projects through a non-technical group exercises.

This course is equally suited for managers, programmers, testers, analysts, product managers, and others who are interested in working on or with a Scrum team. You will leave with solid knowledge of how and why Scrum works. Through practical, hands-on exercises and small-group discussion you will be prepared to plan your first sprint immediately after this class.

The course will run from 9am-5pm each day. A continental breakfast and lunch will be provided.

Following the course, each participant is enrolled as a Certified ScrumMaster, which includes a one-year membership in the Scrum Alliance, where additional ScrumMaster-only material and information are available.

Who Should Attend

Whether you're a manager, programmer, tester, analyst, product manager, or someone interested in working on or with a Scrum team, this course is suited for you. You will leave with solid knowledge of how and why Scrum works. Through practical, hands-on exercises and small-group discussion you will be prepared to plan your first sprint immediately after this class.

PMPs: You can receive 16 Professional Development Units (PDUs) for this course.

Course Material:

Click here for course syllabus.

Participants will receive course materials for review upon registration. The CSM course was formulated to train and certify ScrumMasters and is used worldwide for ScrumMaster training. The book, Agile Project Management with Scrum, by Ken Schwaber is required reading for the course and the course is based on the primary Scrum book, Agile Development with Scrum.

Of course, there will be updated material and training exercises in the course which you cannot get from books. The entire syllabus will be made available upon registering for the course so you can look it over and bring it with you to the sessions. You may get to see our Product Backlog presented by the PatientKeeper Chief Product Owner or attend our Daily Scrum of Scrums!

Thursday, July 05, 2007

Origins of Scrum

Scrum derives directly from the Takeuchi and Nonaka paper in the Harvard Business Review, "The New New Product Development Game." The best example in this paper is Honda and their style of product development. I gave this paper to Kent Beck at his request in 1995 when he was putting together eXtreme Programming.

The Scrum daily meeting derives directly from the Borland Quattro Pro paper by Jim Coplien.

Complex adaptive systems theory, particularly as implemented by iRobot using Prof. Rodney Brooks subsumption architecture, was used to implement simple rules to allow an average team to boot up into a hyperproductive state.

All of this occurred in 1993. The great results delivered by Scrum with new products in 1994 and 1995 got Mike Beedle and Ken Schwaber interested in the process. Ken clarified the process for global consumption beginning in 1995 and Mike Beedle led the effort to write the PLoP patterns paper on Scrum pointing out that it is an organizational pattern to allow teams to achieve a hyperproductive state.

The first Scrum team starting in 1993 rapidly achieved a hyperproductive state by implementing all of the engineering practices now known as XP, along with some that are not in XP. In particular, it used strategies for choosing Sprint backlog items that generated the most rapid appearance of new features. This forced not only test first development (and document first as well) but created a strategy similar to Toyota's concurrent engineering.

Few implementations of Scrum achieve the hyperproductive state for which Scrum was designed (5-10 times normal performance). Those that do all implement variations on XP engineering practices and many, like the CMMI Level 5 implementation of Scrum (which has not achieved the hyperproductive state yet) drive the whole implementation from a lean perspective.

Takeuchi and Nonaka are the godfathers of Scrum and gave it the name. Their latest Hitosubashi book clarifies and extends their work in the original Harvard Business Review paper and it useful for those trying to achieve a hyperproductive state. There is a lot of lean in there.

The first Scrum was influenced by concepts from Goldratt's constraint theory and focus on muri, mura, and mudah. Elimination of disruptions in flow was initiated after the first few Sprints to eliminate reset times between Sprints, now accepted as a best practice in Scrum. Mura, or avoidance of stress on an person, system, or process yielded hyperproductive states combined with zero attrition in several of the Scrum companies where I led engineering. This is now known as sustainable pace in Agile development. Finally, Mudah, or radical reduction in waste has always been a primary driver in all the companies where I implemented Scrum. You cannot achieve a hyperproductive state without it.

Jim Coplien has pointed out repeatedly over the years that there are down sides to constraint theory and some XP practices which should be avoided. I've done my best to sidestep the potholes he has pointed out.

Scrum was specifically designed to deal with:

Ziv's law - specifications will never be fully understood.
Humphrey's law - the user will never know what they want until after the system is in production (maybe not even then)
Wegner's lemma - an interactive system can never be fully specified nor can it ever be fully tested. This is the software analogy to Godel's theorem.
Langdon's lemma - software evolves more rapidly as it approaches chaotic regions (taking care not to spill over into chaos)

Thus any association of predictive or defined processes with Scrum is an exercise in futility.

That said, I am entirely in agreement with Ken Schwaber, that all of this should be driven by "inspect and adapt" and building a prioritized impediment list. Working off the impediment list in priority order will streamline flow, reduce stress, and eliminate waste in the correct sequence and failing to do so will, ironically, result in violation of lean principles.

"There is a spectrum of work in which Langdon is at one end and Brooks can be thought of at the other. At Langdon's end, the goal is to create virtual simulations (nothing physical) that exhibit characteristics such as evolutionary change and emergent complexity. Much of this work was done in conjunction with the Santa Fe Institute, and was big a decade ago. Much of the excitement around it has died down. At Brooks' end, roboticists use models from real organisms to organize their structure. Early works in this vein included an artificial cockroach, and it has been a feature of Brooks' MIT research for the last 15 years or so. Although both are biologically inspired, the goals and methods are quite different."
http://hci.stanford.edu/academics/cs378/wiki/Main/ArtificialLife