Banner

Introduction to Scrum and Agile Principals


Scrum is a process framework.  Scrum is a part of Agile Software process model. Scrum consists of series of sprints each sprint is 2 to 4 week long.  It’s not a process or methodology.

Scrum is lightweight that make it easy to understand but hard to master. Scrum is flexible and allow other agile practices like XP and lean to Plug-in.

Scrum is based in empiricism. All scrum artifacts should be transparent to all stakeholders. All scrum roles are empowered to do their job right. All scrum meeting allowed collaborations and opportunities for inspection and adaptation.

In scrum the process is constantly adjusted (if needed) based on the short and continuous feedback loops. Scrum best suited for problems that fall into “simple” and “complicated” problem domains.





The scrum team 

The scrum team consists of :

  • Product owner 
  • The development team and 
  • A scrum master 

Scrum teams


Scrum teams are self-organizing and cross functional. Self-organizing teams choose how best to accomplish their work rather than being directed by others outside the team. Cross functional teams have all competencies needed to accomplish the work without depending on others not part of the team.

The team model in scrum is designed to optimize flexibility creativity and productivity. Scrum teams deliver products iteratively and incrementally maximizing opportunities for feedback. Incremental deliveries of done product ensure a potentially useful version of working product is always available.


Where scrum is effective 


  • Projects where scope changes rapidly 
  • Work delivered is incremental 
  • Requirements are not clearly defined 
  • Fast feedback and burning visibility 



Where scrum is not effective 


  • Big size team greater than 8 or 10 
  • When budget or schedule is fixed 
  • Lack of customer involvement 
  • Performance measure on delivery target and budget 
  • It’s not effective for small projects 



There are different tools available in market which can help to manage and track scrum process effectively like TFS, JIRA etc.


What are advantages of scrum? 

Scrum process allows product to be always ready and ship enabled in the market even though complete project is in full swing. This incremental delivery approach help to bring ready product available in market which increases revenue.

Reviewing each sprint timely help to get customer feedback timely and any requirement change or scope change can be accommodated easily at any point of time during project development. Even deadline and project budget is fixed requirements are not fixed. That help stakeholders and other participants to anticipate the changes along the way.


What are dis-advantages of scrum?

Due to its incremental approach it's become difficult for scrum master to plan, organize and structure a project that lacks clear definition. Further daily scrum meeting and frequent sprint reviews require substantial resources.

In addition frequent changes and uncertainty about project make intense project to everyone involved. Successful project depends on maturity and experience of each team member. It also depend on how much they are aware of agile and scrum process.


Agile Principals

Intro:
In 2001 Agile Manifesto is surfaced. The manifesto has 4 Central themes. The Agile Manifesto goes like this.
We are uncovering better ways of developing software by doing it and helping others do it.

  • Through this work we have come to value individual and interactions over process 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, value the item on the left more.

Source: www.Agilemanifesto.org


Below are 12 agile principles :


  • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 
  • Welcome changing requirements even late in development agile processes harness change for the customer's competitive advantage. 
  • Deliver working software frequently, from a couple of weeks to a couple of months, with preference to the shorter Time Scale. 
  • Business people and Developers must work together daily throughout the project. 
  • Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 
  • The most efficient and effective method of conveying information to and within a development team is face to face conversation. 
  • Working software is a primary measure of progress. 
  • Agile processes promote sustainable development. The sponsors developers and users should be able to maintain a constant pace indefinitely. 
  • Continuous attention to technical excellence and good design enhances agility. 
  • Simplicity-- the art of maximizing the amount of work not done is essential. 
  • The best architectures, and Designs emerge from self-organizing team. 
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjust its behavior accordingly.

If you are planning to go for Scrum Master certification then check out post Comparison : Which Scrum Certification you should go for in India ? which list explain various Scrum Master Certification available in India and their cost, Pros and cons.


Happy reading..!


Post a Comment

0 Comments