Benefits & Pitfalls of using Scrum software development methodology

Categories: Agile | Hours burndown chart | New product development | Project Management in Software Development | Scrum |

Introduction

The more popular technique to get things done on agile methodology is Scrum.  Scrum is not just a methodology, it is a framework that has to be molded as required by the actual project where it is being used.  Below is more information on Scrum extracted from various sources:

Definition

Scrum is an agile framework for completing innovative projects. Scrum originally was formalized for software development projects, but works well for any complex, innovative or new product development scope of work. The possibilities are endless. The Scrum framework is deceptively simple.

The Scrum Software Development Methodology / Framework

A product owner creates a prioritized wish list called a product backlog.

  • During sprint planning, the team pulls a small chunk from the top of that wish list, a sprint backlog, and decides how to implement those pieces.
  • The team has a certain amount of time, a sprint, to complete its work – usually two to four weeks – but meets each day to assess its progress (daily scrum).
  • Along the way, the Scrum Master keeps the team focused on its goal.
  • At the end of the sprint, the work should be potentially shippable, as in ready to hand to a customer, put on a store shelf, or show to a stakeholder.
  • The sprint ends with a sprint review and retrospective.
  • As the next sprint begins, the team chooses another chunk of the product backlog and begins working again.

benefits-pitfalls-of-using-scrum-software-development-methodology

The cycle repeats until enough items in the product backlog have been completed, the budget is depleted, or a deadline arrives. Which of these milestones marks the end of the work is entirely specific to the project. No matter which impetus stops work, Scrum ensures that the most valuable work has been completed when the project ends.

Advantages of Agile SCRUM

Agile scrum helps the company in saving time and money.

  • Scrum methodology enables project’s where the business requirements documentation is hard to quantify to be successfully developed.
  • Fast moving, cutting edge developments can be quickly coded and tested using this method, as a mistake can be easily rectified.
  • It is a lightly controlled method which insists on frequent updating of the progress in work through regular meetings. Thus there is clear visibility of the project development.
  • Like any other agile methodology, this is also iterative in nature. It requires continuous feedback from the user.
  • Due to short sprints and constant feedback, it becomes easier to cope with the changes.
  • Daily meetings make it possible to measure individual productivity. This leads to the improvement in the productivity of each of the team members.
  • Issues are identified well in advance through the daily meetings and hence can be resolved in speedily
  • It is easier to deliver a quality product in a scheduled time.
  • Agile Scrum can work with any technology/ programming language but is particularly useful for fast moving web 2.0 or new media projects.
  • The overhead cost in terms of process and management is minimal thus leading to a quicker, cheaper result.

Disadvantages of Agile SCRUM

  • Agile Scrum is one of the leading causes of scope creep because unless there is a definite end date, the project management stakeholders will be tempted to keep demanding that new functionality be delivered.
  • If a task is not well defined, estimating project costs and time will not be accurate. In such a case, the task can be spread over several sprints.
  • If the team members are not committed, the project will either never complete or fail.
  • It is good for small, fast moving projects as it works well only with small team.
  • This methodology needs experienced team members only. If the team consists of people who are novices, the project cannot be completed in time.
  • Scrum works well for project management when the Scrum Master trusts the team they are managing. If they practice too strict control over the team members, it can be extremely frustrating for them, leading to demoralization and the failure of the project.
  • If any of the team members leave during a development it can have a huge inverse effect on the project development
  • Project quality manager is hard to implement and quantify unless the test team are able to conduct regression testing after each sprint.

Summary

Scrum will change the way you do business. It helps to keep everybody informed about the progress on the daily meeting, the team focused on the tasks and the stake holders with a well knowledge of the progress that it helps to manage expectations (link to my manage expectations post) in order they can estimate if the project is in the track, it is delayed, the causes of delay and take actions in that case.

More reading

http://blog.crisp.se/2012/10/25/henrikkniberg/agile-product-ownership-in-a-nutshell

http://www.my-project-management-expert.com/the-advantages-and-disadvantages-of-agile-software-development.html

http://www.scrumalliance.org/pages/who_uses_scrum

http://www.scrumalliance.org/pages/what_is_scrum

100% of Belatrix Software is agile trained with expertise in Scrum.  More than 20% of Belatrix’s engineers are Certified Scrum Masters.  The firm invests more than any other South American firm in providing frequent and advanced training in Scrum.  

Leave a comment