Grooming sessions or requirements refinement

When you are working with agile methodologies either Scrum, Kanban or other one, you may come across something called grooming or requirements refinement, if not, let me tell you my point of view about them. This, for me, is one of the most important ceremonies in agile and I personally like it a lot, it is the meeting where the team gets to know the requirements to work on, what's coming in the project and possible risks and challenges on functionality not yet estimated.

Call it what whatever you want, grooming, refinement, etc, but this meeting is really important, if you ask me, for small and medium projects, all team members should be in that meeting, all points of view are valid and everyone may have different perspectives about some functionality or requirement, I have had the chance to see how mid level or junior members have some input that architects or senior members of the team didn't take into account when doing a grooming session, that's why I say all members should be involved. I know this may be hard because time invested in meetings is time that is not invested on project work, but this meeting has a lot of importance and its impact has a lot of value. For large teams or really big projects the thing changes, you need different teams focused on different stuff or pages or you need to have the leads for each area (design, frontend, backend, QA, etc) refining requirements and estimating them.

The purpose of this meeting is to see the requirements of the project and check if there are missing scenarios, acceptance criteria or edge cases that were not taken into account by the PO or the person doing requirements, the idea is to leave the story as clear as possible and don't have any loose ends. Grooming takes a lot of time (mostly more than one hour) and the time invested must be valuable time, I have seen grooming sessions where the team is actually creating user stories, acceptance criteria or requirements and not refining the already created requirements or user stories, this is not correct and from my perspective the grooming should be rescheduled until stories are created. Of course discussion is a key point of this meeting and they may be a lot of time invested in discussing stuff between the team, if this happens a new session should be scheduled and the grooming should end with all stories for an specific sprint or phase groomed and estimated, please note that technical discussions about how to do it must not be part of this meeting, the meeting is focused on the what the project will do, not how it will do it, the how is internal, so try not to stay in deep technical discussions or the time will consume the grooming. 

Another part of the grooming is the estimation of the stories that are ready to start, estimation can be done in a lot of ways, the most common way I have used is by story points using Fibonacci numbers (1, 2, 3, 5, 8, 13, etc), the greater the number, the more complex the story and in here experience starts playing a key role on this estimation, there may be people that has already done a similar story in the past and they may think the estimation is not as big as it seems, however this can be a double-edged sword and can impact the points and deliveries, for instance an 8 point story estimated as 3 or 5 may not be delivered at the end of the sprint because it was not estimated correctly. Finally, I have seen some people that only estimate the work they think they will invest (only back end or only front end), but not the work of all disciplines, here's where QA comes in handy, QA thinks about the whole stuff, all areas, integrations, effort on front end, etc, I've seen stories that are estimated with few effort but developers don't take into account the time QA needs to test a lot of scenarios in different browsers, mobile devices and operative systems, that's why QA needs to see the whole picture when estimating.

It is important to have a QA on all grooming or requirements refinement sessions because since he/she is the one that will test the functionality and will act as final user before the client, a lot of missing stuff may come and QA may have a different point of view focused on user experience, usability and functionality rather than technical stuff, this may change the original estimate for a single story. I know a lot of people don't like groomings, I personally like them a lot and I give them the importance they deserve, so if you are invited to this meetings, actively participate on it and be really aware of every single subject discussed in the meeting, don't forget each opinion is important.

@LuchoAgileQA


Comentarios

Entradas populares de este blog

La forma correcta de reportar fallos o bugs

¿Qué es un líder de QA ?

Pruebas de regresión