Adaptive Project Management Using Scrum
Since time immemorial man has been undertaking great projects. The Pyramids, Stonehenge, Amazon.com just to name a few. All of these projects have had one thing in common; A lowly human with no superpowers was the one responsible for making sure that necessary tasks were accomplished in order to achieve the end goal. Whoever that person was, an Egyptian Pharaoh or a Celtic priest, that person was the project manager. The job existed long before it was given a name. Of course, as soon as society did name it we also insisted on implementing rules and regulations, guidelines and doctrine…a sort of project management dogma that must be followed. This process is often times pursued without question and with no consideration to its impact on the quality of the final deliverables.
The biggest problems with traditional project management are that it is bloated and complicated. The average person would have an easier time deciphering Egyptian hieroglyphics than a Gantt chart. Scrum development is a lightweight project management solution that offers increased flexibility, efficiency, and innovation. Scrum works best when used in conjunction with agile software development, but the methodology can be applied to any number of products or processes.
Roles in Scrum project management are defined in two distinct categories, pigs and chickens. The group names come from a joke told about a pig and a chicken opening a restaurant.
A pig and a chicken are walking down a road. The chicken looks at the pig and says, “Hey, why don’t we open a restaurant?” The pig looks back at the chicken and says, “Good idea, what do you want to call it?” The chicken thinks about it and says, “Why don’t we call it ‘Ham and Eggs’?” “I don’t think so,” says the pig, “I’d be committed, but you’d only be involved.”
Pigs are the ones with “their bacon on the line.” There are only three different types of pig roles. The Scrum Master (Project Manager) facilitates the process and removes obstacles or impediments that prevent team members from achieving their goal. The Product Owner represents the client and speaks with their voice. Everyone else is simply a team member. The team members are responsible for doing the actual work that makes the project a success (design, development, quality assurance, etc.). Chicken roles are represented by people that will eventually use the product or have some vested interest, but don’t do any of the work and are not part of the Scrum process. Chickens include project stakeholders and managers or executives that must give approval on the work.
Scrum breaks the total project workload into smaller prioritized segments called sprints. At the beginning of each sprint a “Sprint Planning Meeting” is held to select which features are to be included. The idea is that at the conclusion of a sprint the team will have a functioning product ready to ship. Once a feature set or “sprint backlog” has been agreed upon, including time commitments from team members, it cannot be changed. Any new features/functionality that are added after the start of a sprint must be folded into the next phase. This is helpful for the team members that don’t have to deal with drastic changes to scope mid-stream. More importantly, it allows for and even encourages changes to the overall feature set or “product backlog.” These changes are no longer viewed as extra work since they can easily be folded into the next sprint. At the end of a sprint the “Sprint Retrospective Meeting” is held. The purpose of the meeting is to answer two questions and two questions only:
- What went well during the sprint?
- What could be improved in the next sprint?
What Scrum development is most know for is its daily scrum or standup meetings. The daily scrum is notable for it’s frequency. It happens every day at the same time and in the same location. It starts precisely on time without exception and has a hard stop at 15 minutes. Participants are required to stand because this encourages them to keep their comments brief and adhere to the time limit. All members of the team including chickens are welcome, but only pigs are allowed to talk. At each meeting team members answer only three questions.
- What did you do yesterday?
- What are you planning to do today?
- What obstacles are preventing you from accomplishing your goal?
The daily scrum meeting serves to identify and address problems early in the process. It is the Scrum Master’s responsibility to resolve any impediments to a team member’s progress. This ensures that no team member sits idle while issues go unaddressed.
Adaptive project management using Scrum is a proven methodology, but it’s important to remember it is not a silver bullet. Despite its benefits, Scrum is not for everyone. Organizations committed to a traditional waterfall process will find it a dramatic shift in the way teams work. In order for it to be successful it requires a level of involvement from the client that is not always present. Also, each team member must understand and be committed to the process. However, when organizations are able to implement Scrum they are often rewarded with higher quality work in a shorter delivery window. Scrum teams are flexible and can easily adapt to evolving client needs. This is an essential skill in a marketplace where the only constant is change.