Wednesday, March 8, 2017

The Scrum Framework

Scrum is Agile framework for completing complex projects, used by Fortune 500 companies around the world. 
In Rugby sport, scrum means "restart the game." 
This requires high-performing, cross-functional teams (Dev, QA, Project Manager basically) to work and interact almost on 
daily basis at the begining of the day to assess progress. Scrum Teams are very different from traditional development groups. 

Sprint: In product development, a sprint is a set period of time during which specific work has to be completed and made ready 
    for review. The duration of a sprint is determined by the scrum master, the team's facilitator. Once the team reaches a 
    consensus for how many days a sprint should last, all future sprints should be the same. After a sprint begins, the product 
    owner must step back and let the team do their work. During the sprint, the team holds daily stand up meeting to discuss 
    progress and brainstorm solutions to challenges. Sprints are usually from 2 to 4 weeks period.

Scrum in Detail:
1) A Product owner creates a prioritized list of ideas (wish list) for the product called a Product Backlog. The product backlog helps 
    the team break the product into smaller, more manageable pieces and build it incrementally in a series of short time periods called 
    Sprints. Sprints typically last 2 to 4 weeks.
    Ex: If you want to develop facebook like product, then you will make a list of all the required items:
        Login
        Logout
        Registration Page
        Change password
        Profile Picture
        Profile Messages
        Photos Upload
        Photos Edit
        Profile Search 
        Friendship Requests etc (List of around 80-100 items).        
    
2) During sprint planning, the team pulls a small chunk from the top of that wish list (first set of basic items to be delivered to client) 
    called a sprint backlog, and decides how to implement those pieces. 
3) It also considers First 1-2 Weeks for the enviroment setup for starting product development.
4) The team has a certain amount of time (sprint) to complete its work, but it meets each day to assess its progress (daily Scrum).

5) Along the way, the ScrumMaster keeps the team focused on its goal. The ScrumMaster also removes impediments for the team, so everyone 
    can focus and move forward with their work.
6) At the end of the sprint, the work should be potentially shippable (Demo): ready to hand to a customer or show to a stakeholder.
7) The sprint ends with a sprint review and retrospective.
8) As the next sprint begins, the team chooses another chunk of the product backlog and begins working again.
9) This Sprint cycle repeats until enough items in the product backlog have been completed, the budget is depleted, or a deadline arrives.

No comments:

Post a Comment