SlideShare uma empresa Scribd logo
1 de 23
_ X
+
+
+
+
Facilitando a Vida do PO e
Dando Segurança para o Time
de Desenvolvimento com o
uso do BDD
+
+
+
+
G L E I C A R E I N E R T
R A F A E L T A R G I N O
SOBRE NÓS... _ X
+
R A F A E L T A R G I N O
G L E I C A R E I N E R T
+
Agile Coach
• Mestre em Engenharia da Computação - COPPE/UFRJ
• Professor de Pós na PUC-Rio
• Palestrante desde 2014 (TDC, SGRio, Agile Brazil)
• Organinzador do MeetUp Agile Beer
Scrum Master
• Bacharela em Ciências Contábeis - FURB
• MBA em Gestão Tributária – INPG
• Organizadora dos MeetUps Agile Beer e Mulheres
de Produto – Blumenau/SC
Falhas de Comunicação
Confusão entre o que foi
falado e o que foi
entendido
Bugs
Dificuldade do Time
em identificar erros
durante o
desenvolvimento
Estimativas erradas
O Time não tinha
segurança em estimar
Histórias Falhando
Sprints se passavam e
histórias se mantinham
Falta de Conhecimento
As regras de negócio
eram complexas e o
Time era novo
Desgaste
PO insatisfeito e todo o
Time sendo
influenciado
negativamente pelo
cenário
Apenas Analista de
Negócios testavam
Gargalo nas atividades,
pois apenas o Analista de
Negócios conseguia
testar de forma segura
Impactos
Correções apontadas
em regras refletiam
em outras de forma
indevida
PROBLEMAS
+
+
+
+
+
X_
E AGORA?
QUEM PODERÁ
NOS AJUDAR?
+
+B e h a v i o r D r i v e n
D e v e l o p m e n t
. . . o u . . .
D e s e n v o l v i m e n t o G u i a d o
p o r C o m p o r t a m e n t o
BDD
_ X
BDD
+
+
+
+
C O N C E I T O
“ B D D é s o b r e i m p l e m e n t a r
u m a a p l i c a ç ã o a t r a v é s d a
d e s c r i ç ã o d e s e u
c o m p o r t a m e n t o p e l a
p e r s p e c t i v a d e s e u s
s t a k e h o l d e r s ” .
( D a n N o r t h )
X_
É uma técnica de
desenvolvimento ágil
que visa integrar regras
de negócios com a
linguagem de
programação, focando
no comportamento do
software.
B D D
D e s e n v o l v i m e n t o G u i a d o
p o r C o m p o r t a m e n t o
O intuito é manter uma linguagem
estruturada onde todos os
membros do time possam
compreender a necessidade da
entrega. Para isso, é utilizado um
modelo de escrita, chamado
Gherkin.
GHERKIN
M O D E L O D E E S C R I T A
Linguagem criada
especialmente para
descrições de
comportamento, ela tem a
capacidade de remover
detalhes da lógica de
programação e focar no
comportamento que uma
funcionalidade deve ter.
Os cenários representam
exemplos concretos que
ilustram restrições de
negócio e são constituídos
de uma lista de passos.
Além de ser uma
especificação do negócio,
o cenário é também um
teste (comportamento).
E m r e s u m o : o s c e n á r i o s s ã o
e s p e c i f i c a ç õ e s e x e c u t á v e i s d o s i s t e m a .
+
+
+
+ _ X
GHERKIN
E S T R U T U R A
Os cenários são descritos em forma de pré-condições, eventos e resultados esperados
usando a sintaxe: Dado / Quando / Então, respectivamente.
Cenários simples
Título [...]
Dado que (Given) [...]
Quando (When) [...]
Então (Then) [...]
Cenários com mais condições
Título [...]
Dado contexto [...]
E [um pouco mais de contexto...]
Quando [eventos]
Então [resultado]
E [outro resultado ...]
_ XR E G R A S D E N E G Ó C I O x B D D
_ XR E G R A S D E N E G Ó C I O x B D D
Tratar as regras de
negócio em um
repositório a parte e
escrever os cenários
relacionados
Utilizar os cenários
como forma de
explicitar as regras de
negócio
X
_ X
+
+
+
+
NA PRÁTICA...
+
+
+
+
_ XR E G R A S D E N E G Ó C I O
C E N Á R I O I N I C I A L
+
+
+
+
+
X_
MUNDANÇA E APLICAÇÃO DO BDD
I N C E N T I V A D O R
P O
T I M E D E
D E S E N V O L V I M E N T O
S C R U M M A S T E R
_ XR E G R A S D E N E G Ó C I O
C E N Á R I O C O M B D D E L I N G U AG E M G H E R K I N
Título: C04 - Tomador Estabelecido Não Optante do
Simples Nacional - Sem Retenção
Dado que a empresa Tomadora é do tipo estabelecido não
optante pelo Simples Nacional
Quando solicitar uma nova declaração de nota de serviço
da modalidade Prestado
E não possuir imposto retido
Então o campo alíquota deverá ficar desabilitado
E o valor ser igual a 0
História:
Sendo um PRESTADOR ESTABELECIDO e OPTANTE DO
SIMPLES NACIONAL
Posso declarar um nota fiscal de SERVIÇOS PRESTADOS
Pois assim faço o registro do faturamento
X X X X
U S O D O B D D
BENEFÍCIOS
Facilmente
descobre-se a
falta de uma pré-
condição, ou o
esquecimento de
um resultado
esperado.
É uma forma de manter
uma documentação e
mapeamento do que
deve ser testado por
funcionalidade, mesmo
que quem execute a
atividade não tenha o
nível de conhecimento
de negócio exigido pelo
produto.
Documentação que
facilita a análise de
impactos, execução
do desenvolvimento
e testes.
Aumenta a
qualidade do
software como um
todo, uma vez que
serve para criar
testes e integrar
regras de negócios
com a linguagem
de programação.
+
+
+
+
+
Apresentação dos
Problemas
Como eram
executados os
testes Benefícios
AutomaçãoAplicação do BDD
BDD
_ X
+
V I S Ã O G E R A L
_ X
AUTOMAÇÃO
+
+
+
+
F E R R A M E N T A S
O o b j e t i v o d e t e r u m a
f e r r a m e n t a q u e e x e c u t e a
l i n g u a g e m d o B D D / G h e r k i n é
a f a c i l i d a d e d e a u t o m a t i z a r
o s c e n á r i o s c r i a d o s , p o i s
e s t a t a n t o i r á v a l i d a r o
s o f t w a r e q u a n t o f o r n e c e r
u m a d o c u m e n t a ç ã o
a t u a l i z a d a , t é c n i c a e
f u n c i o n a l .
X_
Existem várias
ferramentas e
frameworks que dão
suporte ao BDD, de
acordo com sua
linguagem de
programação.
F E R R A M E N T A S
E x e m p l o s
 SpecFlow
 Cucumber
 JBehave
 Selenium
_ XA U TO M A Ç Ã O
S P E C F LOW Título: C04 - Tomador Estabelecido Não Optante do Simples Nacional - Sem Retenção
Dado que a empresa Tomadora é do tipo estabelecido não optante pelo Simples Nacional
Quando solicitar uma nova declaração de nota de serviço da modalidade Prestado
E não possuir imposto retido
Então o campo alíquota deverá ficar desabilitado
E o valor ser igual a 0
+
+
+
+ _ X
+
CONCLUSÃO
Comunicação
Melhora na comunicação entre desenvolvimento,
testes e a própria área de negócios com uma
linguagem ubíqua.
• O uso do BDD trouxe uma série de vantagens para todo o Time e
qualidade do produto
Confiança entre o Time Scrum
Com as regras de negócios atendidas, o Analista
de Negócio e PO voltaram a confiar no Time.
Histórias “Done!”
As estimativas melhoraram, fazendo com que a
performance do time aumentasse.
Compartilhamento de Conhecimento
Com a comunicação eficiente, a troca de
conhecimento passou a ser mais efetiva.
Documentação
O BDD faz com que exista uma documentação
atualizada do sistema.
Testes
Qualquer membro do Time pode testar e é
possível utilizar a automação para garantir
análise de impactos.
_ X
REFERÊNCIAS
+
+
+
+
•S p e c F l o w ( h t t p s : / / s p e c f l o w . o r g / )
•" G h e r k i n " - C o m u n i c a ç ã o a t r a v é s d e
u m v o c a b u l á r i o p e q u e n o e c o m u m ,
d i m i n u i n d o a d i s t â n c i a e n t r e o
n e g ó c i o e a e q u i p e d e T I – M a r c u s
V . M . G o m e s .
•U t i l i z a n d o B D D p a r a a n á l i s e d e
n e g ó c i o e d e s e n v o l v i m e n t o d e
p r o j e t o s - A l l a n R e t t F e r r e i r a
•B D D - A t é c n i c a q u e f a c i l i t a
e n t r e g a r s o f t w a r e q u e R E A L M E N T E
a t e n d e o n e g ó c i o – M a r c e l o N e v e s
+
+
+
+
+
PERGUNTAS?
O B R I G A D O ( A ) !
www.linkedin.com/in/gleica www.linkedin.com/in/rafaeltargino/
Quer saber mais sobre agilidade?
http://mentoriascrum.com.br

Mais conteúdo relacionado

Semelhante a TDC SP 2019 Facilitando a Vida do PO e do Time com BDD

Minicurso • Empreendedorismo em TI
Minicurso • Empreendedorismo em TIMinicurso • Empreendedorismo em TI
Minicurso • Empreendedorismo em TIDhiego Bicudo
 
Requisitos Ágeis um novo mindset
Requisitos Ágeis um novo mindsetRequisitos Ágeis um novo mindset
Requisitos Ágeis um novo mindsetFábio Aguiar
 
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...Neue Labs
 
Lecom Tecnologia - Apresentação Institucional
Lecom Tecnologia - Apresentação InstitucionalLecom Tecnologia - Apresentação Institucional
Lecom Tecnologia - Apresentação InstitucionalLecom Tecnologia
 
Governaça Lean - LKU BR 2017- Lean Kanban BR
Governaça Lean - LKU BR 2017- Lean Kanban BRGovernaça Lean - LKU BR 2017- Lean Kanban BR
Governaça Lean - LKU BR 2017- Lean Kanban BRThiago Torricelly
 
The Big Book of Job Descriptions 2020.1 AIESEC in Brazil
The Big Book of Job Descriptions 2020.1 AIESEC in BrazilThe Big Book of Job Descriptions 2020.1 AIESEC in Brazil
The Big Book of Job Descriptions 2020.1 AIESEC in BrazilJosé Arthur Botelho
 
Estratégias de Marketing para Negócios - Professor Arthur Ciurilli
Estratégias de Marketing para Negócios - Professor Arthur CiurilliEstratégias de Marketing para Negócios - Professor Arthur Ciurilli
Estratégias de Marketing para Negócios - Professor Arthur CiurilliArthur Ciurilli
 
3 - Oferecimento - Capacitação Atendente (1).pptx
3 - Oferecimento - Capacitação Atendente (1).pptx3 - Oferecimento - Capacitação Atendente (1).pptx
3 - Oferecimento - Capacitação Atendente (1).pptxSilasOliveira55
 
Trabalho de - Gestão da Qualidade e Sistemas Normalizados
Trabalho de - Gestão da Qualidade e Sistemas NormalizadosTrabalho de - Gestão da Qualidade e Sistemas Normalizados
Trabalho de - Gestão da Qualidade e Sistemas NormalizadosWilson Rodrigues
 
Product Inception: aplicando Design Thinking em um framework Agile
Product Inception: aplicando Design Thinking em um framework AgileProduct Inception: aplicando Design Thinking em um framework Agile
Product Inception: aplicando Design Thinking em um framework AgileNatali Garcia
 
Fap Formação Analista de Processos
Fap   Formação Analista de ProcessosFap   Formação Analista de Processos
Fap Formação Analista de ProcessosCompanyWeb
 
Modelagem dos Processos de Negócio para a Definição de Requisitos de Sistemas
Modelagem dos Processos de Negócio para a Definição de Requisitos de SistemasModelagem dos Processos de Negócio para a Definição de Requisitos de Sistemas
Modelagem dos Processos de Negócio para a Definição de Requisitos de SistemasImpacta Eventos
 

Semelhante a TDC SP 2019 Facilitando a Vida do PO e do Time com BDD (20)

Minicurso • Empreendedorismo em TI
Minicurso • Empreendedorismo em TIMinicurso • Empreendedorismo em TI
Minicurso • Empreendedorismo em TI
 
Requisitos Ágeis um novo mindset
Requisitos Ágeis um novo mindsetRequisitos Ágeis um novo mindset
Requisitos Ágeis um novo mindset
 
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...
Pensando a Experiência do Usuário em Projetos Plone - Plone Symposium South A...
 
Apresentação Geral Mastermind
Apresentação Geral MastermindApresentação Geral Mastermind
Apresentação Geral Mastermind
 
Diversas Ferramentas de dados
Diversas Ferramentas de dadosDiversas Ferramentas de dados
Diversas Ferramentas de dados
 
Lecom Tecnologia - Apresentação Institucional
Lecom Tecnologia - Apresentação InstitucionalLecom Tecnologia - Apresentação Institucional
Lecom Tecnologia - Apresentação Institucional
 
Empregabilidade
EmpregabilidadeEmpregabilidade
Empregabilidade
 
Governaça Lean - LKU BR 2017- Lean Kanban BR
Governaça Lean - LKU BR 2017- Lean Kanban BRGovernaça Lean - LKU BR 2017- Lean Kanban BR
Governaça Lean - LKU BR 2017- Lean Kanban BR
 
The Big Book of Job Descriptions 2020.1 AIESEC in Brazil
The Big Book of Job Descriptions 2020.1 AIESEC in BrazilThe Big Book of Job Descriptions 2020.1 AIESEC in Brazil
The Big Book of Job Descriptions 2020.1 AIESEC in Brazil
 
Estratégias de Marketing para Negócios - Professor Arthur Ciurilli
Estratégias de Marketing para Negócios - Professor Arthur CiurilliEstratégias de Marketing para Negócios - Professor Arthur Ciurilli
Estratégias de Marketing para Negócios - Professor Arthur Ciurilli
 
3 - Oferecimento - Capacitação Atendente (1).pptx
3 - Oferecimento - Capacitação Atendente (1).pptx3 - Oferecimento - Capacitação Atendente (1).pptx
3 - Oferecimento - Capacitação Atendente (1).pptx
 
Pdf bpm para-todos-_julho_2013
Pdf bpm para-todos-_julho_2013Pdf bpm para-todos-_julho_2013
Pdf bpm para-todos-_julho_2013
 
Trabalho de - Gestão da Qualidade e Sistemas Normalizados
Trabalho de - Gestão da Qualidade e Sistemas NormalizadosTrabalho de - Gestão da Qualidade e Sistemas Normalizados
Trabalho de - Gestão da Qualidade e Sistemas Normalizados
 
Product Inception: aplicando Design Thinking em um framework Agile
Product Inception: aplicando Design Thinking em um framework AgileProduct Inception: aplicando Design Thinking em um framework Agile
Product Inception: aplicando Design Thinking em um framework Agile
 
Fap Formação Analista de Processos
Fap   Formação Analista de ProcessosFap   Formação Analista de Processos
Fap Formação Analista de Processos
 
Moebius
MoebiusMoebius
Moebius
 
Moebius
MoebiusMoebius
Moebius
 
Metodologia Moebius
Metodologia MoebiusMetodologia Moebius
Metodologia Moebius
 
Modelagem dos Processos de Negócio para a Definição de Requisitos de Sistemas
Modelagem dos Processos de Negócio para a Definição de Requisitos de SistemasModelagem dos Processos de Negócio para a Definição de Requisitos de Sistemas
Modelagem dos Processos de Negócio para a Definição de Requisitos de Sistemas
 
Orientação a Dados
Orientação a DadosOrientação a Dados
Orientação a Dados
 

Mais de Rafael Targino

Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para Mudancas
Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para MudancasJornada Colaborativa RJ 2019 - Uma Abordagem Lean para Mudancas
Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para MudancasRafael Targino
 
Gov In Play 2019 Como Amplificar o Papel do Gestor Público
Gov In Play 2019   Como Amplificar o Papel do Gestor PúblicoGov In Play 2019   Como Amplificar o Papel do Gestor Público
Gov In Play 2019 Como Amplificar o Papel do Gestor PúblicoRafael Targino
 
TDC SP 2019 - Management 3.0 sob a Ótica das 5 Disfunções
TDC SP 2019 - Management 3.0 sob a Ótica das 5 DisfunçõesTDC SP 2019 - Management 3.0 sob a Ótica das 5 Disfunções
TDC SP 2019 - Management 3.0 sob a Ótica das 5 DisfunçõesRafael Targino
 
SGRio 2019 - Uma Abordagem Lean para Mudanças
SGRio 2019 - Uma Abordagem Lean para MudançasSGRio 2019 - Uma Abordagem Lean para Mudanças
SGRio 2019 - Uma Abordagem Lean para MudançasRafael Targino
 
Icatu Ágil 2019 - Desconstruindo a Filosofia Ágil
Icatu Ágil 2019 - Desconstruindo a Filosofia ÁgilIcatu Ágil 2019 - Desconstruindo a Filosofia Ágil
Icatu Ágil 2019 - Desconstruindo a Filosofia ÁgilRafael Targino
 
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...Rafael Targino
 
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 Disfuncoes
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 DisfuncoesTDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 Disfuncoes
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 DisfuncoesRafael Targino
 
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-las
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-lasTDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-las
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-lasRafael Targino
 
TDC POA 2018 - Analytics de Produtos B2B
TDC POA 2018 - Analytics de Produtos B2BTDC POA 2018 - Analytics de Produtos B2B
TDC POA 2018 - Analytics de Produtos B2BRafael Targino
 
TDC POA 2018 - Gestão Ágil e a Estratégia Digital
TDC POA 2018 - Gestão Ágil e a Estratégia DigitalTDC POA 2018 - Gestão Ágil e a Estratégia Digital
TDC POA 2018 - Gestão Ágil e a Estratégia DigitalRafael Targino
 
SEMINCO FURB 2018 Analise de Dados em Plataformas Digitais
SEMINCO FURB 2018   Analise de Dados em Plataformas DigitaisSEMINCO FURB 2018   Analise de Dados em Plataformas Digitais
SEMINCO FURB 2018 Analise de Dados em Plataformas DigitaisRafael Targino
 
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0Rafael Targino
 
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-las
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-lasSGRio 2018 - As 5 Disfunções de um Time e como Evitá-las
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-lasRafael Targino
 
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2B
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2BTDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2B
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2BRafael Targino
 
Agile Beer - Uma História de Transformação Ágil
Agile Beer - Uma História de Transformação ÁgilAgile Beer - Uma História de Transformação Ágil
Agile Beer - Uma História de Transformação ÁgilRafael Targino
 
Palestra Gestão Ágil de Projetos - PUC-Rio
Palestra Gestão Ágil de Projetos - PUC-RioPalestra Gestão Ágil de Projetos - PUC-Rio
Palestra Gestão Ágil de Projetos - PUC-RioRafael Targino
 
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...Rafael Targino
 
GDG Rio 2017 - Keep Talking and Nobody Explodes
GDG Rio 2017 - Keep Talking and Nobody ExplodesGDG Rio 2017 - Keep Talking and Nobody Explodes
GDG Rio 2017 - Keep Talking and Nobody ExplodesRafael Targino
 
TDC POA 2017 Transformação Ágil: Convencendo Pessoas, Times e a Organização
TDC POA 2017   Transformação Ágil: Convencendo Pessoas, Times e a OrganizaçãoTDC POA 2017   Transformação Ágil: Convencendo Pessoas, Times e a Organização
TDC POA 2017 Transformação Ágil: Convencendo Pessoas, Times e a OrganizaçãoRafael Targino
 
OKTA 2017 - Descontruindo a Filosofia Ágil
OKTA 2017 - Descontruindo a Filosofia ÁgilOKTA 2017 - Descontruindo a Filosofia Ágil
OKTA 2017 - Descontruindo a Filosofia ÁgilRafael Targino
 

Mais de Rafael Targino (20)

Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para Mudancas
Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para MudancasJornada Colaborativa RJ 2019 - Uma Abordagem Lean para Mudancas
Jornada Colaborativa RJ 2019 - Uma Abordagem Lean para Mudancas
 
Gov In Play 2019 Como Amplificar o Papel do Gestor Público
Gov In Play 2019   Como Amplificar o Papel do Gestor PúblicoGov In Play 2019   Como Amplificar o Papel do Gestor Público
Gov In Play 2019 Como Amplificar o Papel do Gestor Público
 
TDC SP 2019 - Management 3.0 sob a Ótica das 5 Disfunções
TDC SP 2019 - Management 3.0 sob a Ótica das 5 DisfunçõesTDC SP 2019 - Management 3.0 sob a Ótica das 5 Disfunções
TDC SP 2019 - Management 3.0 sob a Ótica das 5 Disfunções
 
SGRio 2019 - Uma Abordagem Lean para Mudanças
SGRio 2019 - Uma Abordagem Lean para MudançasSGRio 2019 - Uma Abordagem Lean para Mudanças
SGRio 2019 - Uma Abordagem Lean para Mudanças
 
Icatu Ágil 2019 - Desconstruindo a Filosofia Ágil
Icatu Ágil 2019 - Desconstruindo a Filosofia ÁgilIcatu Ágil 2019 - Desconstruindo a Filosofia Ágil
Icatu Ágil 2019 - Desconstruindo a Filosofia Ágil
 
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...
TDC BH 2019 - Praticando o Management 3.0 sob a ótica das 5 Disfunções dos Ti...
 
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 Disfuncoes
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 DisfuncoesTDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 Disfuncoes
TDC Floripa 2019 - Praticando Management 3.0 sob a otica das 5 Disfuncoes
 
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-las
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-lasTDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-las
TDC Floripa 2019 - As 5 Disfunções de um Time e como Evitá-las
 
TDC POA 2018 - Analytics de Produtos B2B
TDC POA 2018 - Analytics de Produtos B2BTDC POA 2018 - Analytics de Produtos B2B
TDC POA 2018 - Analytics de Produtos B2B
 
TDC POA 2018 - Gestão Ágil e a Estratégia Digital
TDC POA 2018 - Gestão Ágil e a Estratégia DigitalTDC POA 2018 - Gestão Ágil e a Estratégia Digital
TDC POA 2018 - Gestão Ágil e a Estratégia Digital
 
SEMINCO FURB 2018 Analise de Dados em Plataformas Digitais
SEMINCO FURB 2018   Analise de Dados em Plataformas DigitaisSEMINCO FURB 2018   Analise de Dados em Plataformas Digitais
SEMINCO FURB 2018 Analise de Dados em Plataformas Digitais
 
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0
Agile Brazil 2018 - Duelo: Sonho Grande x Gestão 3.0
 
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-las
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-lasSGRio 2018 - As 5 Disfunções de um Time e como Evitá-las
SGRio 2018 - As 5 Disfunções de um Time e como Evitá-las
 
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2B
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2BTDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2B
TDC SP 2018 - Métricas e Analytics de Produtos em Sistemas B2B
 
Agile Beer - Uma História de Transformação Ágil
Agile Beer - Uma História de Transformação ÁgilAgile Beer - Uma História de Transformação Ágil
Agile Beer - Uma História de Transformação Ágil
 
Palestra Gestão Ágil de Projetos - PUC-Rio
Palestra Gestão Ágil de Projetos - PUC-RioPalestra Gestão Ágil de Projetos - PUC-Rio
Palestra Gestão Ágil de Projetos - PUC-Rio
 
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...
TDC Floripa 2018 - Modelos de Gestão, Uberização e a Estratégia Digital: o qu...
 
GDG Rio 2017 - Keep Talking and Nobody Explodes
GDG Rio 2017 - Keep Talking and Nobody ExplodesGDG Rio 2017 - Keep Talking and Nobody Explodes
GDG Rio 2017 - Keep Talking and Nobody Explodes
 
TDC POA 2017 Transformação Ágil: Convencendo Pessoas, Times e a Organização
TDC POA 2017   Transformação Ágil: Convencendo Pessoas, Times e a OrganizaçãoTDC POA 2017   Transformação Ágil: Convencendo Pessoas, Times e a Organização
TDC POA 2017 Transformação Ágil: Convencendo Pessoas, Times e a Organização
 
OKTA 2017 - Descontruindo a Filosofia Ágil
OKTA 2017 - Descontruindo a Filosofia ÁgilOKTA 2017 - Descontruindo a Filosofia Ágil
OKTA 2017 - Descontruindo a Filosofia Ágil
 

TDC SP 2019 Facilitando a Vida do PO e do Time com BDD

  • 1. _ X + + + + Facilitando a Vida do PO e Dando Segurança para o Time de Desenvolvimento com o uso do BDD + + + + G L E I C A R E I N E R T R A F A E L T A R G I N O
  • 2. SOBRE NÓS... _ X + R A F A E L T A R G I N O G L E I C A R E I N E R T + Agile Coach • Mestre em Engenharia da Computação - COPPE/UFRJ • Professor de Pós na PUC-Rio • Palestrante desde 2014 (TDC, SGRio, Agile Brazil) • Organinzador do MeetUp Agile Beer Scrum Master • Bacharela em Ciências Contábeis - FURB • MBA em Gestão Tributária – INPG • Organizadora dos MeetUps Agile Beer e Mulheres de Produto – Blumenau/SC
  • 3. Falhas de Comunicação Confusão entre o que foi falado e o que foi entendido Bugs Dificuldade do Time em identificar erros durante o desenvolvimento Estimativas erradas O Time não tinha segurança em estimar Histórias Falhando Sprints se passavam e histórias se mantinham Falta de Conhecimento As regras de negócio eram complexas e o Time era novo Desgaste PO insatisfeito e todo o Time sendo influenciado negativamente pelo cenário Apenas Analista de Negócios testavam Gargalo nas atividades, pois apenas o Analista de Negócios conseguia testar de forma segura Impactos Correções apontadas em regras refletiam em outras de forma indevida PROBLEMAS
  • 5. + +B e h a v i o r D r i v e n D e v e l o p m e n t . . . o u . . . D e s e n v o l v i m e n t o G u i a d o p o r C o m p o r t a m e n t o BDD
  • 6. _ X BDD + + + + C O N C E I T O “ B D D é s o b r e i m p l e m e n t a r u m a a p l i c a ç ã o a t r a v é s d a d e s c r i ç ã o d e s e u c o m p o r t a m e n t o p e l a p e r s p e c t i v a d e s e u s s t a k e h o l d e r s ” . ( D a n N o r t h )
  • 7. X_ É uma técnica de desenvolvimento ágil que visa integrar regras de negócios com a linguagem de programação, focando no comportamento do software. B D D D e s e n v o l v i m e n t o G u i a d o p o r C o m p o r t a m e n t o O intuito é manter uma linguagem estruturada onde todos os membros do time possam compreender a necessidade da entrega. Para isso, é utilizado um modelo de escrita, chamado Gherkin.
  • 8. GHERKIN M O D E L O D E E S C R I T A Linguagem criada especialmente para descrições de comportamento, ela tem a capacidade de remover detalhes da lógica de programação e focar no comportamento que uma funcionalidade deve ter. Os cenários representam exemplos concretos que ilustram restrições de negócio e são constituídos de uma lista de passos. Além de ser uma especificação do negócio, o cenário é também um teste (comportamento). E m r e s u m o : o s c e n á r i o s s ã o e s p e c i f i c a ç õ e s e x e c u t á v e i s d o s i s t e m a .
  • 9. + + + + _ X GHERKIN E S T R U T U R A Os cenários são descritos em forma de pré-condições, eventos e resultados esperados usando a sintaxe: Dado / Quando / Então, respectivamente. Cenários simples Título [...] Dado que (Given) [...] Quando (When) [...] Então (Then) [...] Cenários com mais condições Título [...] Dado contexto [...] E [um pouco mais de contexto...] Quando [eventos] Então [resultado] E [outro resultado ...]
  • 10. _ XR E G R A S D E N E G Ó C I O x B D D
  • 11. _ XR E G R A S D E N E G Ó C I O x B D D Tratar as regras de negócio em um repositório a parte e escrever os cenários relacionados Utilizar os cenários como forma de explicitar as regras de negócio X
  • 13. _ XR E G R A S D E N E G Ó C I O C E N Á R I O I N I C I A L
  • 14. + + + + + X_ MUNDANÇA E APLICAÇÃO DO BDD I N C E N T I V A D O R P O T I M E D E D E S E N V O L V I M E N T O S C R U M M A S T E R
  • 15. _ XR E G R A S D E N E G Ó C I O C E N Á R I O C O M B D D E L I N G U AG E M G H E R K I N Título: C04 - Tomador Estabelecido Não Optante do Simples Nacional - Sem Retenção Dado que a empresa Tomadora é do tipo estabelecido não optante pelo Simples Nacional Quando solicitar uma nova declaração de nota de serviço da modalidade Prestado E não possuir imposto retido Então o campo alíquota deverá ficar desabilitado E o valor ser igual a 0 História: Sendo um PRESTADOR ESTABELECIDO e OPTANTE DO SIMPLES NACIONAL Posso declarar um nota fiscal de SERVIÇOS PRESTADOS Pois assim faço o registro do faturamento
  • 16. X X X X U S O D O B D D BENEFÍCIOS Facilmente descobre-se a falta de uma pré- condição, ou o esquecimento de um resultado esperado. É uma forma de manter uma documentação e mapeamento do que deve ser testado por funcionalidade, mesmo que quem execute a atividade não tenha o nível de conhecimento de negócio exigido pelo produto. Documentação que facilita a análise de impactos, execução do desenvolvimento e testes. Aumenta a qualidade do software como um todo, uma vez que serve para criar testes e integrar regras de negócios com a linguagem de programação. +
  • 17. + + + + Apresentação dos Problemas Como eram executados os testes Benefícios AutomaçãoAplicação do BDD BDD _ X + V I S Ã O G E R A L
  • 18. _ X AUTOMAÇÃO + + + + F E R R A M E N T A S O o b j e t i v o d e t e r u m a f e r r a m e n t a q u e e x e c u t e a l i n g u a g e m d o B D D / G h e r k i n é a f a c i l i d a d e d e a u t o m a t i z a r o s c e n á r i o s c r i a d o s , p o i s e s t a t a n t o i r á v a l i d a r o s o f t w a r e q u a n t o f o r n e c e r u m a d o c u m e n t a ç ã o a t u a l i z a d a , t é c n i c a e f u n c i o n a l .
  • 19. X_ Existem várias ferramentas e frameworks que dão suporte ao BDD, de acordo com sua linguagem de programação. F E R R A M E N T A S E x e m p l o s  SpecFlow  Cucumber  JBehave  Selenium
  • 20. _ XA U TO M A Ç Ã O S P E C F LOW Título: C04 - Tomador Estabelecido Não Optante do Simples Nacional - Sem Retenção Dado que a empresa Tomadora é do tipo estabelecido não optante pelo Simples Nacional Quando solicitar uma nova declaração de nota de serviço da modalidade Prestado E não possuir imposto retido Então o campo alíquota deverá ficar desabilitado E o valor ser igual a 0
  • 21. + + + + _ X + CONCLUSÃO Comunicação Melhora na comunicação entre desenvolvimento, testes e a própria área de negócios com uma linguagem ubíqua. • O uso do BDD trouxe uma série de vantagens para todo o Time e qualidade do produto Confiança entre o Time Scrum Com as regras de negócios atendidas, o Analista de Negócio e PO voltaram a confiar no Time. Histórias “Done!” As estimativas melhoraram, fazendo com que a performance do time aumentasse. Compartilhamento de Conhecimento Com a comunicação eficiente, a troca de conhecimento passou a ser mais efetiva. Documentação O BDD faz com que exista uma documentação atualizada do sistema. Testes Qualquer membro do Time pode testar e é possível utilizar a automação para garantir análise de impactos.
  • 22. _ X REFERÊNCIAS + + + + •S p e c F l o w ( h t t p s : / / s p e c f l o w . o r g / ) •" G h e r k i n " - C o m u n i c a ç ã o a t r a v é s d e u m v o c a b u l á r i o p e q u e n o e c o m u m , d i m i n u i n d o a d i s t â n c i a e n t r e o n e g ó c i o e a e q u i p e d e T I – M a r c u s V . M . G o m e s . •U t i l i z a n d o B D D p a r a a n á l i s e d e n e g ó c i o e d e s e n v o l v i m e n t o d e p r o j e t o s - A l l a n R e t t F e r r e i r a •B D D - A t é c n i c a q u e f a c i l i t a e n t r e g a r s o f t w a r e q u e R E A L M E N T E a t e n d e o n e g ó c i o – M a r c e l o N e v e s
  • 23. + + + + + PERGUNTAS? O B R I G A D O ( A ) ! www.linkedin.com/in/gleica www.linkedin.com/in/rafaeltargino/ Quer saber mais sobre agilidade? http://mentoriascrum.com.br

Notas do Editor

  1. A ideia principal dessa apresentação é demonstrar o cenário e os problemas que estávamos tendo com um determinado time dentro da GovernançaBrasil. Dessa forma, listamos aqui alguns dos problemas que vínhamos tendo neste time... (falar um pouco do contexto do time a partir desses problemas)
  2. Comentar que a ideia partiu de um dos membros do próprio time de desenvolvimento... Que utilizava o BDD em projetos pessoais.
  3. Dan North criou o BDD em 2003.
  4. O PO e o analista de negócio tinham esta planilha que era composta por centenas de regras de negócios que deveriam ser validadas, porém o Time tinha dificuldade em cobrir todo este cenário. Isso envolvia várias pré-condições, regras, clientes específicos, etc.
  5. O PO e o analista de negócio tinham esta planilha que era composta por centenas de regras de negócios que deveriam ser validadas, porém o Time tinha dificuldade em cobrir todo este cenário. Isso envolvia várias pré-condições, regras, clientes específicos, etc.
  6. O PO e o analista de negócio tinham esta planilha que era composta por centenas de regras de negócios que deveriam ser validadas, porém o Time tinha dificuldade em cobrir todo este cenário. Isso envolvia várias pré-condições, regras, clientes específicos, etc.
  7. O membro do time de desenvolvimento “incentivador” que já havia trabalhado com BDD expôs a prática para o PO e os demais membros do time e juntos começaram a escrever as regras de negócio utilizando a linguagem Gherkin, transcrevendo a planilha anterior. Esse compartilhamento de informações e prática fez com que a comunicação ficasse ubíqua.
  8. A partir dessa fase, os cenários começaram a ser criados assim, dentro da estrutura proposta.
  9. Isso trouxe uma série de benefícios para todo o time:
  10. Apresentar tudo o que foi demonstrado até o momento e falar sobre a automação que é a “cereja do bolo”. A partir da estrutura criada para os cenários com uso do BDD e Gherkin, seria possível automatizar os cenários já descritos, mantendo uma documentação “viva” das funcionalidades.
  11. Direcionar o foco para a automação com SpecFlow. No time em questão a linguagem de programação é C# então ficaria mais simples de trabalhar com o SpecFlow, já que este é um NuGet que se integra com o Visual Studio.
  12. Utilizando o mesmo exemplo anterior, ao incluir as pré condições “Dado que”, “quando” e “então” o specflow dá a opção de criar automaticamente a estrutura para automação pela função “Generate Step Definitions” e basta trazer as classes que devem ser chamadas para cada pré condição. Ao clicar sob a linha também é possível visualizar o código já indicado através da opção Go to Definition ou teclar F12. O SpecFlow fornece ligação direta com o Test Explorer do Visual Studio, o que facilita a execução dos testes.