Sunday, September 6, 2015

Getting Started with Agile-Scrum Methodology- Introduction : Part I

Scrum is Agile methodology which is most widely and commonly used in the software industry.The methodology is a part of Iterating and Incremental methodology and is best suitable for projects with highly changing nature and rapidly emerging requirements.

There are many other project management methodologies though among all Agile -Scrum is now mostly popular among the software industry as it puts together a self organized team with max 7 +-2 members with no project manager to manage but a scrum manager to guide on the methodology for the team to get maximum benefits and a product manager who is available for the team all the times  for clarifications and requirement prioritization.I will explain the roles of Agile - scrum in the latter phase of this article.

SPRINT is one of the key terms used in Agile- Scrum methodology and it is simply a series of iterations.Sprint is usually 2 weeks to one months.BACKLOG is another like that and it is like a bucket where all the possible future amendable functionalities  brought out by the team while brainstorming or brought by the product owner after a business objective discussion with possible stake holders are kept in the backlog as then they are never forgotten or missed by anyone.

USER STORY is a simple and a understandable manner of writing the requirements.It contain 3 main sections.
As a <Actor> I want to <Action/Result> So that <Outcome>

Ex: As a project manager I want to generate the resource burn down chart so that I can plan my estimate for the next week.

Software development life cycle (SDLC) contains several steps and Agile-Scrum encapsulates almost all in it.'Requirement Analysis' is  happening without heavy documentations or complex use cases but user stories.In other project management methodologies requirement analysis itself costs so much for a business analyst and also for time he/she spends for documentation though in Agile - Sprint the development team  together with quality assurance team and Scrum Master brainstorm on the product backlog item which is prioritized by the Product Owner.Then they break the epic story  or the product backlog item in to user stories in manageable sizes to be addressed in a particular sprint.
The team cannot make the design in advance though the team will be designing the system in pieces and as the functionalities grow the design and the architecture of the system grow.Implementation do happen really well as the team is cross functional and contains developers, database engineers and technology experts.Testing plays a vital part and the Scrum team contain QA engineers for testing and test automation. 

STORY POINT is also a common term used in Agile-Scrum.Every user story is given a  Fibonacci number (Ex:0, 1, 1, 2, 3, 5, 8, 13, 21) based on its complexity.Highly complex user story will get 13/21 whilst a medium complected story gets 5/8 and low priority rather simple story gets 1/2/3.Team decides on the story point to be given for a user story and this story sometimes differ from QA members to the developers.The team then come to a agreement and decide one number which is accepted by everyone.

The total of the story points achieved within a sprint is called VELOCITY.The project team is normally measured by this number.

Communication is a key in Agile - Sprint just as every project management methodology and they use SPRINT STAND UP MEETING which happens everyday for not more than 15 minutes.During this meeting they discuss 

  • what is addressed yesterday
  • plan for today 
  • impediments/obstacles

Discussing the impediments is good though if the discussion  drags it is always good to arrange the discussion after the sprint meeting as it will not eat the valuable time of all the team members.

End of each and every sprint the team needs to integrate the new functionality to the core system and describe it to the product owner and the stake holders. Feedback should be always welcome though addressing again needs to be prioritized and if the feedback needs to be addressed as soon as possible go for it else put it to the product backlog which the team can always pull when time permits.

BURN DOWN CHART is a artifact of Agile- Scrum which displays what is left to be done.Burn down chart can be drawn using story point vs sprint or actual vs estimated for the sprints.

Sprint planning is a vast area which I will address at my next post.

Please feel free to post your comments on this article for me to grow and learn more and more so that I can bring many things in a nut shell.


No comments:

Post a Comment