SlideShare uma empresa Scribd logo
1 de 34
Agenda
Cenário Atual
O que é o BDD
Composição do BDD
Projeto Real da Softplan
Papéis no BDD
Benefícios
Dificuldades
Ferramentas
Acompanhamento do projeto
Evolução do BDD na Softplan
Cenário Atual
Somente eu
posso fazer!
Documentação
Valida ai!
e no final...
Como é possível melhorar?
BDD
O que é o BDD
Behavior Driven Development – Desenvolvimento orientado ao
comportamento
É uma técnica de desenvolvimento ágil que estimula a
COLABORAÇÃO e COMUNICAÇÃO entre os participantes do
projeto: cliente, DEVs, gestores, QAs, pessoas não técnicas e de
negócios
Linguagem natural
Foco no COMPORTAMENTO do Sistema
Documentação única entre os participantes do projeto
Composição do BDD
Funcionalidades que serão desenvolvidas
Exemplo:
Cadastrar Usuário
Emitir Relatório
User Stories
Features
Critérios de Aceite
Cenários
Descrições simples de uma funcionalidade
Promover um diálogo, uma conversa
Resultado – É o que o ator espera que
aconteça ao realizar a ação. Também pode
ser visto como justificativa
Como um
<PAPEL>
eu
posso/gostaria/devo
<FUNÇÃO>
para/de
<RESULTADO para o
NEGÓCIO>
Papel – É o interessado na funcionalidade
Ação/Função – É o que o ator quer fazer.
Utilizando aquela ação ele espera alcançar um
objetivo dentro do sistema
User Stories
Critérios de Aceite
Exemplo:
Somente colaboradores que informaram o CPF podem ser cadastrados
Os Critérios de Aceite são representados por uma lista de itens de negócio
que expressam formas de usar a funcionalidade implementada em uma
US.
O objetivo dessa lista é validar se a Feature foi implementada de
acordo com o que o analista/cliente deseja.
Cenários
Os cenários descrevem as ações que serão aferidas e testadas. Eles devem conter passos
lógicos e simples de como obter um resultado específico a partir de uma sequência de
ações.
Dado que – São as pré-condições para executar o cenário
Quando – O que eu quero realizar, passos do cenário
Então – É o resultado esperado pela execução do cenário
GHERKIN
Mas isso funciona???
Projeto na Softplan
Projeto de aproximadamente 13 mil horas
Todo back-end foi desenvolvido apoiado pelo BDD
Primeiro projeto de BDD da Softplan
Projeto estratégico para a empresa
Projeto não tinha especificação de negócio
Equipe de 8 pessoas
2 Analistas de Negócio
4 DEVs
1 Testador
1 Arquiteto
Papéis no BDD Analista de Teste
Documentação do
comportamento
Validação do comportamento
Levantamento dos cenários de
teste
Validação de escrita/qualidade
Analista de Negócio
Levantamento das necessidades e
funcionalidades
Levantamento das regras de negócio
Escrita das User Stories
Escrita dos critérios de aceite
Documentação do comportamento
Validação do comportamento
Levantamento dos cenários de teste
Validação de escrita/qualidade
Desenvolvedor
Implementa as features do BDD
Levantamento dos cenários de teste
Validação do comportamento
Validação de escrita/qualidade
Resultados do Projeto
Nenhum erro de negócio
Dentro do Prazo
Dentro do Custo
Entrega com Qualidade – Somente 2 erros de Front-end
Desenvolvimento técnico e de negócio da Equipe
Maior engajamento da Equipe
Benefícios
Melhor entendimento da demanda, sem dúvidas do que deve ser feito
Pequenas reuniões (feature review) para validação das features
Melhora da comunicação entre todos participantes do projeto
Definição do comportamento do sistema, por meio de exemplos reais
Para o analista de negócio é uma VALIDAÇÃO de toda a análise, pois ajuda o
analista a verificar furos de negócio e furos na sua especificação
Medição do progresso do projeto através das features implementadas
Dificuldades
Produtividade
Curva de aprendizado (em média 2 semanas)
Falta/Dificuldade na padronização da escrita - Gera retrabalho
Difícil Rastreabilidade
Falta de ferramentas mais adequadas para escrita
ALTO custo para desenvolvimento, principalmente no front-end
FERRAMENTAS
Pickles
http://www.picklesdoc.com/
Acompanhamento
O BDD nos
permitiu este
final!!!
Evolução do BDD na Softplan
Comportamentos de APIs do sistema são desenvolvidos com apoio do BDD
Mantém a qualidade do código a cada geração de versão
User Stories e critérios de aceite descritos e planejados em ferramentas internas
Melhora da integração de novas pessoas ao negócio e ao sistema
Investimento em novas demandas
Utilizado como documentação junto com protótipos
SEJA UM
www.softplan.com.br
facebook.com/softplanonline
linkedin.com/softplan
@softplan
SOFTPLAYER!
Obrigado!
allan.rett@gmail.com
/in/allan-ferreira
Contatos:
allanrett

Mais conteúdo relacionado

Mais procurados

Lightning Talk- Requisitos em Metodologias Ágeis
Lightning Talk- Requisitos em Metodologias ÁgeisLightning Talk- Requisitos em Metodologias Ágeis
Lightning Talk- Requisitos em Metodologias ÁgeisFernanda Rabello
 
Boas Práticas na Abordagem de Requisitos em Metodologias Ágeis
Boas Práticas na Abordagem de Requisitos em Metodologias ÁgeisBoas Práticas na Abordagem de Requisitos em Metodologias Ágeis
Boas Práticas na Abordagem de Requisitos em Metodologias ÁgeisFernanda Rabello
 
Feature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralFeature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralRuan Carvalho
 
Fdd em uma casca de banana
Fdd em uma casca de bananaFdd em uma casca de banana
Fdd em uma casca de bananaejedelmal
 
Apresentação SCRUM
Apresentação SCRUMApresentação SCRUM
Apresentação SCRUMRafael Ivan
 
Feature Driven Development (FDD)
Feature Driven Development (FDD)Feature Driven Development (FDD)
Feature Driven Development (FDD)Vitor Pacheco
 
Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesFeature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesHiury Araújo
 
Workshop Agilizando Projetos com SCRUM
Workshop Agilizando Projetos com SCRUMWorkshop Agilizando Projetos com SCRUM
Workshop Agilizando Projetos com SCRUMElumini Outdoing IT
 
Fdd feature driven development (slide ) do trabalho
Fdd   feature driven development (slide ) do trabalhoFdd   feature driven development (slide ) do trabalho
Fdd feature driven development (slide ) do trabalhoLemon Lopes Leite
 
BDD - Integrando regras de negócio e programação
BDD - Integrando regras de negócio e programaçãoBDD - Integrando regras de negócio e programação
BDD - Integrando regras de negócio e programaçãoGleica Reinert
 
Feature Driven Development (FDD)
Feature Driven Development (FDD)Feature Driven Development (FDD)
Feature Driven Development (FDD)Bruno Garcia
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven developmentIzabel Rodrigues
 

Mais procurados (20)

Lightning Talk- Requisitos em Metodologias Ágeis
Lightning Talk- Requisitos em Metodologias ÁgeisLightning Talk- Requisitos em Metodologias Ágeis
Lightning Talk- Requisitos em Metodologias Ágeis
 
Boas Práticas na Abordagem de Requisitos em Metodologias Ágeis
Boas Práticas na Abordagem de Requisitos em Metodologias ÁgeisBoas Práticas na Abordagem de Requisitos em Metodologias Ágeis
Boas Práticas na Abordagem de Requisitos em Metodologias Ágeis
 
Feature-Driven Development - Visão Geral
Feature-Driven Development - Visão GeralFeature-Driven Development - Visão Geral
Feature-Driven Development - Visão Geral
 
Framework Scrum
Framework ScrumFramework Scrum
Framework Scrum
 
Produto ou projeto
Produto ou projeto Produto ou projeto
Produto ou projeto
 
Apresentação fdd
Apresentação fddApresentação fdd
Apresentação fdd
 
Fdd em uma casca de banana
Fdd em uma casca de bananaFdd em uma casca de banana
Fdd em uma casca de banana
 
Apresentação SCRUM
Apresentação SCRUMApresentação SCRUM
Apresentação SCRUM
 
FDD
FDDFDD
FDD
 
Cucumber com java
Cucumber com javaCucumber com java
Cucumber com java
 
Feature Driven Development (FDD)
Feature Driven Development (FDD)Feature Driven Development (FDD)
Feature Driven Development (FDD)
 
Feature Driven Development - FDD
Feature Driven Development - FDDFeature Driven Development - FDD
Feature Driven Development - FDD
 
Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesFeature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
 
Workshop Agilizando Projetos com SCRUM
Workshop Agilizando Projetos com SCRUMWorkshop Agilizando Projetos com SCRUM
Workshop Agilizando Projetos com SCRUM
 
FDD
FDDFDD
FDD
 
Fdd feature driven development (slide ) do trabalho
Fdd   feature driven development (slide ) do trabalhoFdd   feature driven development (slide ) do trabalho
Fdd feature driven development (slide ) do trabalho
 
Metodologias
MetodologiasMetodologias
Metodologias
 
BDD - Integrando regras de negócio e programação
BDD - Integrando regras de negócio e programaçãoBDD - Integrando regras de negócio e programação
BDD - Integrando regras de negócio e programação
 
Feature Driven Development (FDD)
Feature Driven Development (FDD)Feature Driven Development (FDD)
Feature Driven Development (FDD)
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven development
 

Semelhante a BDD na Softplan: Benefícios e Evolução

Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...
Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...
Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...Guilherme Azevedo Cardozo
 
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...tdc-globalcode
 
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...Andrelise Rafael Gonçalves
 
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...Allan Ferreira
 
Behavior driven development
Behavior driven developmentBehavior driven development
Behavior driven developmentThiago Ferreira
 
BDD e TDD na prática com SpecFlow e Visual Studio 2012
BDD e TDD na prática com SpecFlow e Visual Studio 2012BDD e TDD na prática com SpecFlow e Visual Studio 2012
BDD e TDD na prática com SpecFlow e Visual Studio 2012Igor Abade
 
Apresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumApresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumRafael Cruz, MCT, MBA
 
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilCriando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilVladson Freire
 
Impacto do DevOps nos negócios
Impacto do DevOps nos negóciosImpacto do DevOps nos negócios
Impacto do DevOps nos negóciosRamon Durães
 
Goal-Driven Software Process
Goal-Driven Software ProcessGoal-Driven Software Process
Goal-Driven Software ProcessAndré Agostinho
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoDextra
 
Gestão da qualidade e produtividade
Gestão da qualidade e produtividadeGestão da qualidade e produtividade
Gestão da qualidade e produtividadeBruno Teixeira
 
FDD para equipes não tão ágeis
FDD para equipes não tão ágeisFDD para equipes não tão ágeis
FDD para equipes não tão ágeisguilhermepinter
 
O analista de negócios e o gerente de projetos
O analista de negócios e o gerente de projetosO analista de negócios e o gerente de projetos
O analista de negócios e o gerente de projetosMarcelo Neves
 
TDC2016SP - Trilha Análise de Negócios
TDC2016SP - Trilha Análise de NegóciosTDC2016SP - Trilha Análise de Negócios
TDC2016SP - Trilha Análise de Negóciostdc-globalcode
 
Mitos do Desenvolvimento de Software
Mitos do Desenvolvimento de SoftwareMitos do Desenvolvimento de Software
Mitos do Desenvolvimento de Softwareguest2f8cba
 
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICO
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICOGEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICO
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICOWelynton Oliveira
 

Semelhante a BDD na Softplan: Benefícios e Evolução (20)

Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...
Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...
Agile trends GOV - Foco no Valor: Utilizando BDD para melhorar a comunicação ...
 
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...
TDC2017 | Florianópolis - Trilha Analise de Negocios Utilizando BDD para anal...
 
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...
[GDG Quality Fest 2017] BDD - Como quebrar as barreiras de negócio dentro do ...
 
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
 
Behavior driven development
Behavior driven developmentBehavior driven development
Behavior driven development
 
BDD e TDD na prática com SpecFlow e Visual Studio 2012
BDD e TDD na prática com SpecFlow e Visual Studio 2012BDD e TDD na prática com SpecFlow e Visual Studio 2012
BDD e TDD na prática com SpecFlow e Visual Studio 2012
 
Apresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e SeleniumApresentação de BDD com SpecFlow e Selenium
Apresentação de BDD com SpecFlow e Selenium
 
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágilCriando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
Criando o produto certo usando Impact Mapping e técnicas de guerrilha ágil
 
BDD
BDDBDD
BDD
 
Impacto do DevOps nos negócios
Impacto do DevOps nos negóciosImpacto do DevOps nos negócios
Impacto do DevOps nos negócios
 
Goal-Driven Software Process
Goal-Driven Software ProcessGoal-Driven Software Process
Goal-Driven Software Process
 
APSI2
APSI2APSI2
APSI2
 
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governoPalestra Geinfo 2011 - Desenvolvimento ágil no governo
Palestra Geinfo 2011 - Desenvolvimento ágil no governo
 
Gestão da qualidade e produtividade
Gestão da qualidade e produtividadeGestão da qualidade e produtividade
Gestão da qualidade e produtividade
 
FDD para equipes não tão ágeis
FDD para equipes não tão ágeisFDD para equipes não tão ágeis
FDD para equipes não tão ágeis
 
O analista de negócios e o gerente de projetos
O analista de negócios e o gerente de projetosO analista de negócios e o gerente de projetos
O analista de negócios e o gerente de projetos
 
TDC2016SP - Trilha Análise de Negócios
TDC2016SP - Trilha Análise de NegóciosTDC2016SP - Trilha Análise de Negócios
TDC2016SP - Trilha Análise de Negócios
 
Mitos do Desenvolvimento de Software
Mitos do Desenvolvimento de SoftwareMitos do Desenvolvimento de Software
Mitos do Desenvolvimento de Software
 
SA-Performance Manager
SA-Performance ManagerSA-Performance Manager
SA-Performance Manager
 
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICO
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICOGEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICO
GEHBOARD: UM DASHBOARD GENERAL-ERP PARA USUÁRIOS DE NIVEL ESTRATÉGICO
 

BDD na Softplan: Benefícios e Evolução

  • 1.
  • 2. Agenda Cenário Atual O que é o BDD Composição do BDD Projeto Real da Softplan Papéis no BDD Benefícios Dificuldades Ferramentas Acompanhamento do projeto Evolução do BDD na Softplan
  • 8. Como é possível melhorar? BDD
  • 9. O que é o BDD Behavior Driven Development – Desenvolvimento orientado ao comportamento É uma técnica de desenvolvimento ágil que estimula a COLABORAÇÃO e COMUNICAÇÃO entre os participantes do projeto: cliente, DEVs, gestores, QAs, pessoas não técnicas e de negócios Linguagem natural Foco no COMPORTAMENTO do Sistema Documentação única entre os participantes do projeto
  • 10. Composição do BDD Funcionalidades que serão desenvolvidas Exemplo: Cadastrar Usuário Emitir Relatório User Stories Features Critérios de Aceite Cenários
  • 11. Descrições simples de uma funcionalidade Promover um diálogo, uma conversa Resultado – É o que o ator espera que aconteça ao realizar a ação. Também pode ser visto como justificativa Como um <PAPEL> eu posso/gostaria/devo <FUNÇÃO> para/de <RESULTADO para o NEGÓCIO> Papel – É o interessado na funcionalidade Ação/Função – É o que o ator quer fazer. Utilizando aquela ação ele espera alcançar um objetivo dentro do sistema User Stories
  • 12. Critérios de Aceite Exemplo: Somente colaboradores que informaram o CPF podem ser cadastrados Os Critérios de Aceite são representados por uma lista de itens de negócio que expressam formas de usar a funcionalidade implementada em uma US. O objetivo dessa lista é validar se a Feature foi implementada de acordo com o que o analista/cliente deseja.
  • 13. Cenários Os cenários descrevem as ações que serão aferidas e testadas. Eles devem conter passos lógicos e simples de como obter um resultado específico a partir de uma sequência de ações. Dado que – São as pré-condições para executar o cenário Quando – O que eu quero realizar, passos do cenário Então – É o resultado esperado pela execução do cenário
  • 15.
  • 16.
  • 18. Projeto na Softplan Projeto de aproximadamente 13 mil horas Todo back-end foi desenvolvido apoiado pelo BDD Primeiro projeto de BDD da Softplan Projeto estratégico para a empresa Projeto não tinha especificação de negócio Equipe de 8 pessoas 2 Analistas de Negócio 4 DEVs 1 Testador 1 Arquiteto
  • 19. Papéis no BDD Analista de Teste Documentação do comportamento Validação do comportamento Levantamento dos cenários de teste Validação de escrita/qualidade Analista de Negócio Levantamento das necessidades e funcionalidades Levantamento das regras de negócio Escrita das User Stories Escrita dos critérios de aceite Documentação do comportamento Validação do comportamento Levantamento dos cenários de teste Validação de escrita/qualidade Desenvolvedor Implementa as features do BDD Levantamento dos cenários de teste Validação do comportamento Validação de escrita/qualidade
  • 20.
  • 21. Resultados do Projeto Nenhum erro de negócio Dentro do Prazo Dentro do Custo Entrega com Qualidade – Somente 2 erros de Front-end Desenvolvimento técnico e de negócio da Equipe Maior engajamento da Equipe
  • 22. Benefícios Melhor entendimento da demanda, sem dúvidas do que deve ser feito Pequenas reuniões (feature review) para validação das features Melhora da comunicação entre todos participantes do projeto Definição do comportamento do sistema, por meio de exemplos reais Para o analista de negócio é uma VALIDAÇÃO de toda a análise, pois ajuda o analista a verificar furos de negócio e furos na sua especificação Medição do progresso do projeto através das features implementadas
  • 23. Dificuldades Produtividade Curva de aprendizado (em média 2 semanas) Falta/Dificuldade na padronização da escrita - Gera retrabalho Difícil Rastreabilidade Falta de ferramentas mais adequadas para escrita ALTO custo para desenvolvimento, principalmente no front-end
  • 26.
  • 28. O BDD nos permitiu este final!!!
  • 29. Evolução do BDD na Softplan Comportamentos de APIs do sistema são desenvolvidos com apoio do BDD Mantém a qualidade do código a cada geração de versão User Stories e critérios de aceite descritos e planejados em ferramentas internas Melhora da integração de novas pessoas ao negócio e ao sistema Investimento em novas demandas Utilizado como documentação junto com protótipos
  • 30.
  • 31.
  • 32.