Monday, September 7, 2015

Getting Started with Agile-Scrum Methodology - Planning, Monitoring : Part III

Welcome to another most important section of Agile-Scrum methodology.Planning is one of the pillar stones in project management practice.If you are now thinking of the other pillars  - there are all together 4 pillar stones which are Planning, Organizing, Monitoring and Controlling.All these are equally important though planning is significant and mostly important as it is the stepping stone of the project.

In Agile-Scrum Planning happens in 2 steps.

As explained in Part I prioritized product backlog items are considered for the sprint and during the sprint planning meeting which all the team members participate, they turn the backlog items in to several user stories.

Ex:
Backlog Item: User Authentication

User Stories :
1.As a system administrator users should be able to enter their details and register with the system so that the information can be used for other marketing activities.

2.As a user I should be able to enter my username and the password and login in to my account so that I have maintain my own wishlist.

3.As a system administrator the users should not be able to try the password more than three times so that I can guarantee the security level of the system to the existing customers.

These user story stories needs to be given story points based on their complexity, effort and doubt.

The user story then needs to be broken in to tasks which are more simpler units so that it is more easier and suitable for estimations.

Ex:
As a system administrator users should be able to enter their details and register with the system so that the information can be used for other marketing activities.

Tasks:
user registration form
registration form integration with the email and email generation
database entry
user interface

Then each task needs to be added an hourly estimation using the experience  and the skill level of the developer.

These hours can be used as the sprint estimation and at the end of the project the scrum master can create a graph using the estimated hours against the actual which will provide many information to the stake holders.

So this is simply the planning process of Agile-Scrum.

Please feel free to add your comments and correct me if you think anything needs to be corrected as it will help me as well as the readers of this blog to grow more and more.

Monitoring happens via the daily stand up meetings.This meeting needs to be held everyday for 15 minutes.Each team member needs to talk at the meeting on the tasks they attended, what they are planning to do and any issues faced.Daily stand up meeting keeps the team updated about the current  situation of the project and it creates the platform for the team to understand if they are on the plan or if they have deviated and get back to the original plan.

At the end of each scrum retrospective meeting needs to be hosted and the team with the scrum master, product owner and client if possible needs to attend to the meeting which will help the team to understand what went right and what went wrong.


Sunday, September 6, 2015

Getting Started with Agile-Scrum Methodology - Agile Scrum Team : Part II


SCRUM TEAM is the heat of Agile Scrum.Below are some of the qualities of a Scrum team.It is a self organized cross functional  and a focused team.They believe in each other as in every other team and they work together for a smooth sprint cycle.There is no 'I' but 'WE'.They help each other to solve the impediments which occur during the sprint and make sure to achieve the target or rather the selected user stories for the sprint.

The team communicate with each other during the sprint meeting and make sure that everyone is transparent to each other

Scrum master keeps the team together and drive them for a good and quality software delivery. He/she keeps the team together and drive them towards the end.Scrum master should be great at conflict resolution and bonding people together.

This is not just for Agile Scrum team though I logged it under this but for any team who works towards achieving an objective.

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.