Sunday, 15 September 2013

Is Scrum as useful as it sounds?

The selection of right software development lifecycle is very crucial for the success of a project in IT sector. This is even more relevant in outsourcing IT projects to India. In agile methodology especially scrum method is gaining popularity in the offshore IT companies and market, which replaces the traditional practices and methodologies.

As the world around us grows more complex, we strive to build more complex products. In parallel with the growth of complexity, there has been a need for increased safety, predictability, risk management, and control. At the same time, our need to be nimble, flexible, and adaptable has increased. As of now, more organizations are employing agile techniques and processes to develop and sustain complex products than those that continue to employ more traditional techniques. Of those using agile techniques, 84% of them employ an agile framework process, Scrum(Elizabeth Woodward, Steffen Surdek, and Matthew Ganis, 2010).

A survey was conducted four years back on software development methodologies used for the software development projects in India. (Cranky, 2008). The different software methodologies involved in the survey were Waterfall, Scrum and agile methodologies which were not scrum. In 2006, it was reported that a sizable majority of product development used a waterfall methodology (55%), with Scrum garnering a mere 7%.

Though Waterfall Model is logical, it requires complete requirement to be available while initiating the project. In real life, requirements never get frozen; for various reasons;

·         Customers do not know exactly what they want; they change their mind often
·        Market is volatile – priorities change overnight
·         Competition from rival companies
·         Humans cannot predict a long term product development cycle.
·      Release happens at the end – generally months after customer provide requirements. Often, they don’t get what they wanted. Now, they cannot change requirements as it is too late.

These are the major factors make Waterfall Model to fail often since project involves humans. This is the primary reason why Scrum gained its popularity.

The use of agile methodologies is gaining popularity in the market for offshore and outsourcing industry as a successful alternative for traditional practices and methodologies. Articles from electronic journals (Taft, 2010) show a recent survey taken by Forrester Research that states that the Agile Methodologies are already part of the prevalent group of methodologies in the world of IT system development. Another result of this research reveals that Scrum is, by a large margin, emerging as the main representative in the world of agile methodologies and frameworks(Krill, 2010).

The Agile Manifesto, created in 2001, is the starting point for the movement that has become known as Agile. The Manifesto summarizes the Agile values(Fowler & Highsmith, 2001).
“We are uncovering better ways of developing software by doing it and helping others to do it. Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.”
With the objective of making it easier to understand and put into practice the Agile values, twelve Agile principles were created(Fowler & Highsmith, 2001).


  1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
  3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  4. Business people and developers must work together daily throughout the project.
  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  7. Working software is the primary measure of progress.
  8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  9. Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity--the art of maximizing the amount of work not done--is essential.
  11. The best architectures, requirements, and designs emerge from self-organizing teams.
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
A survey was conducted for the methodology used for the product in present scenario (Cranky, 2008). The result of the survey gives the highest used methodology is Scrum model. 

Application development or software development in outsourcing companies in India or any other IT projects executed in India, Scrum has helped them to deliver projects in time and within budget without compromising quality.