Epic, Feature, Functionality, User Story???

Já não é de hoje que sabemos que o Scrum é um framework. Ele diz o que fazer mas não diz como, então temos o empirismo como base. Afinal, como podemos entender e tratar os conceitos: Epic, Feature, Functionality, User Story???

Segundo o Scrum Guide:

“The Sprint Backlog is a forecast by the Development Team about what functionality will be in the next Increment. And the work needed to deliver that functionality into a “Done” Increment.”

Em suma, o Scrum guide não menciona Epic, Feature, Functionality, User Story. Enfim, o Scrum fala de itens do Backlog do produto. Assim como, fala da funcionalidade, que deve ser entregue como um Incremento de valor.

Origem de User Story:

Antes de mais nada, a idéia de usar histórias de usuários tem origem em Alistair Cockburn, um dos signatários do Manifesto Ágil, em 1998, como ele explica em seu site.

Bem como, em 2001, Ron Jeffries propôs uma fórmula “Three Cs” para a criação de histórias de usuários, que é o modelo frequentemente visto nas equipes Scrum hoje.

Vamos aos significados e diferenças dos termos Epic, Feature, Functionality, User Story:

Features são as “ferramentas” que você usa em um sistema para concluir as funções (funcionalidades).

Functionality é como esses recursos realmente funcionam para fornecer a você um resultado desejado.

No guide fala de funcionalidade. E costumamos usar a funcionalidade como uma User Storie, tanto é que normalmente escrevemos: “Eu como (usuário) quero (funcionalidade) para (gerar valor de negócio).”

Ferramentas de mercado:

Para projetos ágeis, temos o Jira por exemplo, e ele considera esse formato da figura abaixo. A ferramenta que você escolhe para gerenciar seu backlog pode ter condicionado sua visão.

Dito isso, e se essa User Story (funcionalidade) for grande para ser independente, estimável, pequena, testável…?

Dessa forma, concorda que se analisarmos o tamanho dessa funcionalidade, e ela for grande, vai ser quebrada em pedaços menores?

Esse conceito de Feature, fornece uma maneira conveniente, de indicar que um conjunto de histórias, tem algo em comum, como estar na mesma área funcional.

Em conclusão, tenha atenção, para que a sua Definição de Pronto de modo a definir um valor máximo para uma história entrar no sprint.

Se for muito grande, chamá-lo de Feature ou uma grande User Story, dá no mesmo: ele não passará se não for INVEST.

Tem diversas discussões sobre o tema, uns concordam, outros não.  E vc, o que acha?

Informações sobre a autora: Jacqueline Viana é Scrum Master e é apaixonada por agilidade.

https://www.linkedin.com/in/jacqueline-mba-e-pmp