Tips towards Agile Epic Estimation

Step 1: Well written epic with Business stories

An epic is one big piece of product functionality. Usually, it is too big to be completed in one sprint and should be split up into smaller bodies of work. For instance, an epic may be “Grouping would enable users to merge people or organizations adding flexibility to their analysis

Epic should contain (Hypothesis statement)

NameA short name for the epic
DescriptionA value statement that describes the epic in a clear and concise way. For <customer> who <do something> the <solution> that <provides this value> unlike <current solution or application / screen / functionality> our solution <something better – the why>
Business OutcomesThe measurable benefits that the business can anticipate
Leading IndicatorThe early measures that will help predict the business outcome <MVP>
Nonfunctional requirementsAny nonfunctional requirement associate with the Epic

Step 2: During IP Sprint

Step 2: Refine the epic with Team / Leads  (If its done via program incremental (PI) session, that will be ideal to have all members – Future Goal). 

Step 2.1: Break down the epic into small (business) epics if its large during epic refinement

Step 2.2: Identify the enabler epics during epic refinement

Step 2.3: Create story card during epic refinement

Step 2.4: Identify all the stacks and its epic or story card

Step 2.5: Identify the dependency within each stack

Step 2.6: Identify the dependency from external teams

Step 2.6.1: Create stories for external teams

Step 2.7: Agree upon which epics priority, since by end of refinement there could have been n number of small business and enabler epics.

Step 3: High level design

With step 2:  consider 1 to 3 prioritized epics for design discussion

Tips: Make sure all stack members including external team tech member are available to start the designing session

         Try to plan for one session (1-3 hrs / 1 days) locked together to brainstorm with different stack to identify the challenges and risk

Step 3.1: Update or Create story card (1 or 2 sentence with high-level acceptance criteria’s)

Step 3.2: Prioritize the story card, lineup with dependency 

Tips: Don’t plan for stack and resource availability at this point, (eg) then Champ will be complete, even though there is high dependency on new API

Step 3.3: Provide High-level story points

Step 3:4: Group the story cards for Sprints (n, n+1, n+2..)

Step 3.5: Create all stories for n+1 and n+2 Sprints

Step 4: Sprint Refinement

Refine only well written stories (Business and Enabler) which are already group during Epic refinements of Design meetings

Tips: Make sure all Engineers (Dev & QA) including external team are actively participating during the sprint refinements.

         Avoid additional design session, its better to clarify all details within sprint refinement. If additional design needed by engineers – no hard rule but make sure to account the capacity during sprint planning day

Step 5: Sprint Planning

Completely refined stories are consider for planning day

Step 5.1: Engineer should have confident to do planning poker, for story pointing.