Skip to end of metadata
Go to start of metadata

Nesta pagina

Detalhes sobre o tipo Epic.

CONTEUDO

1. Definição

O tipo Epic é:

Um objeto com ciclo de vida.

Um épico é um processo de negócio, contendo o ciclo de vida e regras completas de um objeto do sistema.

Em outras palavras, um épico também pode ser visto como uma funcionalidade, ou seja, um conjunto de funções (conjunto de features) que se interrelacionam fortemente, formando o ciclo de vida de um objeto.

Outra forma de pensar em épicos é pensar em um objeto e todas as coisas (verbos, ações) que você pode fazer com ele. Isso é um épico.

Por exemplo, uma reunião de pessoas; ela é um épico. Isso porque você pode (ações) solicitar a reunião, agendar a reunião, convidar participantes para reunião, confirmar a reunião, realizar a reunião, documentar a reunião, etc. A reunião então, é o épico, e as ações sobre ela serão suas features.

Fazendo uma analogia ao mundo do desenvolvimento Java EE, cada épico (ou processo de negócio) pode ser implementado por um EJB de Negócio. E, se estendendo essa definição, se percebe que isso está em concordância com a JSR 299. Isso porque (conforme a JSR), os WebBeans possuem um ciclo de vida: o ciclo de vida de um objeto, ou seja, o seu processo.

Falando em metodologias, os épicos (funcionalidades) possuem relação um-para-um com os épicos do Scrum ou as FeatureSets da FDD.

Em nível de gerenciamento de projeto, os épicos (funcionalidades) são pontos perfeitos para trabalharmos a questão do Earned Value do PMBOK para se fazer a gestão de custos e andamento de cronograma. Pense bem: de que adianta entregar ao cliente meio processo de negócio, ou seja, meia funcionalidade? Assim, ao se pensar em gerenciamento de entregáveis e controle de progresso, as funcionalidades (épicos) são o denominador comum e lógico para o gerenciamento de entregas. Mas claro, essas entregas são evolutivas, e assim, cada ciclo (sprint?!) você vai entregando mais e mais features (verbos) ao seu objeto (o épico).

Outra forma de visualizar um épico (funcionalidade) é pensar no conjunto de features operando em grupo. Por exemplo, o conjunto das features "incluir", "editar", "deletar", "pesquisar", "exportar" (...) de uma Nota Fiscal formam o épico "Manter Notas Fiscais". Bom, já falamos da "reunião", acima. Começa a fazer sentido para você?

Finalmente, fazendo uma analogia a um banco de dados, cada tabela no banco de dados pode ser representada como um épico, como Tabela "Cliente" → Épico "Manter Clientes".

Quer saber uma forma fácil de reconhecer um épico ? Use este algoritmo:

  1. Pense em um objeto do seu dia-a-dia (uma reunião, um fluxo de trabalho, um documento) ou parte de um sistema (uma tela, um relatório, etc.). Por exemplo: Relatório de Vendas Mensais.
  2. Esse objeto pode ser decomposto em outros? Se sim, para cada objeto dentro dele, volte ao passo #1, pois talvez ele seja então um Tema ou um Set. Agora, se ele for um objeto final, avance para #3.
  3. Agora, coloque um verbo genérico na frente, como "Manter". Por exemplo: Manter Relatório de Vendas Mensais.
  4. Pronto. você tem um épico. E nele, provavelmente você terá as features (descritas no padrão AARON* na seção 2.1.3, item "0 - Desejada" da página Features):
    1. Filtrar vendas de licença por dia do mês no Relatório de Vendas Mensais.
    2. Filtrar vendas de consultoria por dia da semana no Relatório de Vendas Mensais.
    3. Filtrar vendas de licença do tipo Atlassian por semana no Relatório de Vendas Mensais.
    4. Filtrar vendas de gestão compartilhada por intervalo de dias no Relatório de Vendas Mensais.
    5. Imprimir listagem de registros em PDF no Relatório de Vendas Mensais.
    6. Imprimir listagem de vendas em PDF no Relatório de Vendas Mensais.
    7. Exportar listagem de registros em CSV no Relatório de Vendas Mensais.
    8. Etc, etc, etc.

Para mais detalhes, vide o post https://goo.gl/nPyHW que carateriza toda a relação estrutural de temas, sets, épicos e features em um sistema.

* Nos exemplos do item #4 acima, optamos por suprimir o ator (o primeiro "A") e o objetivo de negócio ("N") a fim de torná-los de mais fácil leitura aqui. Assim, o item #4.a, no padrão AARON completo deveria ser: Vendedor filtrar vendas de licença por dia da semana no relatório de vendas para obter dados diários de vendas de licenciamento.


  • No labels