Tuesday, June 19, 2007

Principles of SCRUM

Today, I was reading the 'SCRUM Development Process' by Ken Schwaber. A lot of these principles could be related to any kind of development. In today's fast paced world where the requirements are constantly changing,customer's are constantly evolving,priorities keep changing,new scope keeps coming in,each project being unique in its own way - Agile and SCRUM could be the ideal fit(may be not the best!).

The word SCRUM is basically derived from the game RUGBY. Scrum is a group of 8 individuals in Rugby, who move together closely inorder to move the ball down the field. This close integration and interaction is the fundamental principle of SCRUM.

Teams work as a tight integarted units, with each team member performing his/her well defined role for that increment to achieve the goal of the team. The entire team must have a single focus and goal and everybody works towards this. This team focus is the platform for the success of SCRUM.

The primary difference between the defined (waterfall, spiral and iterative) and empirical SCRUM) approach is that the SCRUM approach assumes that the analysis, design, and development processes in the Sprint phase are unpredictable. A control mechanism is used to manage the unpredictability and control the risk. Flexibility, responsiveness, and reliability are the results.

Characteristics of SCRUM methodology are :

· The first and last phases (Planning and Closure) consist of defined processes, where all processes, inputs and outputs are well defined. The knowledge of how to do these processes is explicit. The flow is linear, with some iterations in the planning phase.
· The Sprint phase is an empirical process. Many of the processes in the sprint phase are unidentified or uncontrolled. It is treated as a black box that requires external controls. Accordingly, controls, including risk management, are put on each iteration of the Sprint phase to avoid chaos while maximizing flexibility.
· Sprints are nonlinear and flexible. Where available, explicit process knowledge is used; otherwise tacit knowledge and trial and error is used to build process
knowledge. Sprints are used to evolve the final product.
· The project is open to the environment until the Closure phase. The deliverable can be changed at any time during the Planning and Sprint phases of the project. The
project remains open to environmental complexity, including competitive, time,
quality, and financial pressures, throughout these phases.
· The deliverable is determined during the project based on the environment.

No comments: