Monday, August 11, 2014

Agile @ Home

Participating in various Agile-related activities in our office inspired me to think about implementing Agile approach in a rather unrelated field: our family.
The Agile philosophy contains some best practices, which, if adapted and customized slightly, can help us manage our personal lives in a more structured and productive manner.

Here is a write-up which outlines this approach.
Also available on SlideShare as a Microsoft PowerPoint presentation:
http://www.slideshare.net/gautamsoman/agile-at-home

Introduction

Agile is an incremental, iterative methodology used widely in software industry. Agile @ Home is a proposed approach to bring in the best practices of this methodology into our daily lives. The objective is not to make our family life a formal, mechanical process, but to bring in a structured approach to get things done without causing undue stress.

Stakeholders

Product Owner (PO)

In Agile @ Office, Product Owner creates the product backlog.
In Agile @ Home, Product Owners are primarily responsible for guidance and monitoring. They should ideally be the senior-most member of the family. They can also be someone from outside the immediate family; but someone whom the family trusts and respects; and looks up to for advice.They should help Scrum Master to resolve conflicts.

Scrum Master (SM)

Ideally a enior member of the family. Role can be rotated among two equally senior-members (husband /wife) after every few sprints. They would be responsible for tracking progress of all tasks.

Scrum Team (ST)

All members of the family unit (except infants!). The Scrum Team members should be coached by Scrum Master on Agile processes. This can be done during Sprint 0 (zero).
Preferably not more than 7 members should be under one Scrum Master. ‘Pair working’ concept can be used: two folks working on a big task.

Agile Ceremonies

Product Backlog

Just as in Agile at Office, this is the most important step. All the stakeholders (PO, SM and ST) sit together and brainstorm about everything that family wants to achieve, in the short-, medium- as well as long term.
This should be done periodically, at least once a year. Creating a solid, comprehesinve Product Backlog sets expectations clear, brings everyone on same page.

Sprint Planning & Sprint Deliverables

During Product Backlog, all stakeholders decide on time-boxed unit for a sprint. Recommended time-box is minimum one month and maximum three months. At start of every sprint, all stakeholders agree to select a chunk of product backlog.
Each family member:

  • Picks up the tasks at granular level. 
  • Commits himself/herself to the selected task.
  • Specifies exactly what they will deliver at the end of the sprint

Daily Scrum Meetings

DSMs are a crucial part of Agile @ Office.
For Agile @ Home, they can be held either at breakfast or dinner, when SM and ST are available. In case, it is not possible for SM and all ST to meet at a common time, SM must interact with each family member and keep track of progress.

Burndown Charts

Stakeholders can decide on a mechanism to track the progress.
Some approaches to track progress:


  • Verbal updates
  • Note pad/Diary
  • Sticky notes on refridgerator
  • Kanban boards 
  • Excel sheets… 

Sprint Deliverables

Agile @ Office focuses on ‘working software’ at end of each sprint.
Agile @ Home focuses on significant, measurable progress on each task. It can be:

  • A tangible, physical product 
  • A recommendation for a specific product/item
  • A ‘SMART’ plan for a long-term activity

Sprint Retrospective

All family members share their updates, preferably at a common meeting. Completed activities are discussed and agreed upon as DONE. Unfinished items are moved to the next sprint backlog.
Sprint Retrospective should preferably be clubbed together with next Sprint Planning.

Example Scenario

Stakeholders: 


  • Grandparents: Product Owner(s)
  • Wife: Scrum Master 
  • Husband, daughter and son:  Scrum Team 

SM and ST visit PO for product backlog:

  • Husband wants to plan a North India trip in December
  • Wife wants to start a jewellery shop
  • Daughter wants to go abroad for higher studies after her Masters degree
  • Son wants the long-promised gaming console

The stakeholders decide on the sprint duration: 2 months

Each team member picks up tasks at granular level:

  • Husband will identify holiday destinations and overall budget required
  • Wife to analyse feasibility of jewellery shop in the locality
  • Daughter to identify admission requirements and college names
  • Son to compare Sony PS3, Nintendo and Xbox and come up with final recommendation

All the stakeholders decide on priorities

  • Since admission dates are close by, daughter’s admission is top priority.
  • Wife’s shop is a potential source of future income, hence next on list. 
  • The gaming console was promised long ago, hence is included. 
  • Last is the vacation plan. 

Over the period of sprint, the SM and ST have discussions over dinner.

After 2 months (sprint exit), all stakeholders meet.

  • Daughter is ready with short-listed college names and admission details. The discussion is done and she will start with admission process in next sprint. 
  • Wife informs that her analysis indicates that jewellery shop is not feasible due to presence of big brands in local vicinity. Hence idea is dropped. But there is much scope for a boutique. This will be analysed further. 
  • Son specifies Xbox and provides reasons (many gaming titles, etc.)
  • Husband informs that finances are not sufficient to meet all above requirements and the vacation; hence the vacation plan is moved to general backlog with a provision for an abroad trip to visit the daughter.

Sprint planning is done for the next sprint… and the cycle repeats.