I thought of finally taking it to my blog to explain the ideas about certain terms in simplest possible language after getting introduced to drastically different explanations about the same terms in recent times.
A team that has the required functional skills and/or technical expertise to drive the development of the product in order to achieve a common goal.
A typical cross functional team may have specialized roles such as Business Analysts, Developers, testers, Architects etc however during an iteration all the team members should work together to achieve the common goal i.e. a potentially shippable product increment.
- Everyone should be a master of everything.
- Everyone in the team should know the system and its details as good as Person X who is working in the system since N number of years.
A fun game played by the agile teams to arrive at a consensus based estimate for a particular user story.
Consensus based estimates are used when we are planning for a release or grooming the backlog, this is done to take into consideration the relative size (or effort ) of the story from the entire teams viewpoint.
Planning Poker to be used for estimating tasks in hours during the 2nd half of the sprint planning.