SlideShare uma empresa Scribd logo
DDD + BDD + TDD
Eduardo Bregaida
eduardo.bregaida@sciensa.com
& SCRUM
Brian, o dono de um importante Aeroclube da
cidade teve uma ideia em um momento de
inspiração.
Eu poderia fazer um sistema
para meu aeroclube e
otimizar meu tempo.
Mas como?
Vou chamar meu amigo
Bregaida para resolver isso
Seguinte Bregaida quero
um sistema que faça todo
gerenciamento do meu
Aeroclube
Quero todos os
Cadastros
Relatórios, Notas e Faltas
e valores pagos...
Pensando...
Pensando...
Classe Aluno
Pensando...
Classe Aluno
Aluno extends Pessoa
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Java com Spring...
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Java com Spring
Maven
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Java com Spring
Maven
JQuery
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Java com Spring
Maven
JQuery
Contas a Pagar e Receber
Pensando...
Classe Aluno
Aluno extends Pessoa
Relatorio em IReport
Java com Spring
Maven
JQuery
Contas a Pagar e Receber
Você já tem um Web Server ou um Web Container para sua
aplicação?
...
Mas que Bodega é essa
que você está falando?
Eu não estou
entendendo nada, eu
só queria um
sisteminha fácil...
Domain-Driven Design
-Driven DesignDomain
Negócio Complexo
Negócio Complexo Pessoas
Negócio Complexo
Pessoas
Problema Real
Negócio Complexo
Pessoas
Problema Real
Linguagem de Negócio
Negócio Complexo
Pessoas
Domain
Problema Real
Linguagem de Negócio
Conversa
Sobre o
Para criar um
domínio
sistema
Conversa
Sobre o
Para criar um
domínio
sistema
Precisamos falar a mesma língua!
UbíquaLínguagem
(Ubiquitous Language)
Tenho um curso onde cada
aluno é preparado para se
tornar um piloto em uma
determinada categoria.
Um Aluno tem Nome, CPF,
RG, Endereço, Telefone,
código ANAC que é a
identificação deste aluno
Ele terá uma Categoria que
pode ser:
Piloto Privado ou
Piloto Comercial
Poderei buscar o aluno por
nome ou por CPF ou ainda
pelo código ANAC
Com esse repositório
parece que ficou mais fácil,
dá para saber todos os
alunos da mesma
categoria?
Como implementar o repositório?
Nossa esqueci, quero
que liste todos alunos
de uma categoria.
-Driven Design
Voltado (driven) totalmente ao problema a ser resolvido (domain)
Ubiquitous Language
Funciona muito bem com Agile
Modelos ricos (não anêmicos)
Nomes importam!
Domain
Não importa a tecnologia.
O que importa é o domain.
BDD
O que é BDD?
O que é BDD?
• Foca no comportamento do sistema;
• Visando desenvolvimento voltado a testes;
• Usam uma linguagem comum como visto no DDD;
• Beneficia os desenvolvedores e os usuários de negócio;
• Comporta vários cenários;
• Não apenas o que uma determinada função deve fazer;
• Possui aspectos do DDD e conceitos fundamentais do TDD.
Como fazer?
• Narrativa/Estória: (Nome)
• Para ( Valor ao Negócio)
• Eu, como (Papel)
• Desejo poder realizar (Funcionalidade)
• Story: …
• In order to …
• As a …
• I want to …
Exemplo
• Narrativa/Estória: Cadastrar Alunos
• Para meu sistema de gerenciamento do Aeroclube
• Eu, como funcionário da secretaria
• Desejo poder realizar cadastros de novos alunos no sistema
O que mais?
• Cenários: (Nome)
• Dado que (Estado inicial do sistema)
• Quando (Ação a ser realizada)
• Então (O que deve fazer após a ação)
• Scenario: …
• Given a …
• And …
• When …
• Then …
Mais?
Exemplo
• Cenário I: Cadastro de Aluno
• Dado que um funcionário selecione a opção Cadastrar Aluno
• Quando clicar no menu
• Então deverá ser aberta a tela com os dados para efetuar o
cadastro do aluno e os botões Salvar e Cancelar.
O que é TDD ou Test Driven Development?
• É uma técnica de desenvolvimento de software baseada em um ciclo
curto de repetições;
• Escrevendo seus testes antes de escrever o código de produção;
• Ao escrever primeiro os testes:
• Garantimos uma boa qualidade no código (mínimo de sujeira e códigos
esquecidos que nunca serão utilizados);
• Garantimos o funcionamento do que está sendo implementado;
• Não precisamos saber tudo de uma vez, conforme eu desenvolvo um
teste, crio e implemento as classes que serão utilizadas.
TDD - Test Driven Development
• Escreva um teste que falhe;
• Faça-o passar da maneira mais simples possível;
• Refatore o código.
• É conhecido como Ciclo Vermelho-Verde-Refatora (Red-Green-
Refactor).
Mas é muito
fácil
It's Amazing
Mas como vou
saber o andamento
do meu sistema?
Com SCRUM
Mais Coisa???
Existem dois tipos de Processos:
• Processos Definidos
• Processos Empíricos
Processos Definidos
São aqueles que determinam o que deve ser feito, quando e como.
Quem já trabalhou com o “início e fim do projeto” sabe que a
utilização de um processo definido não garante o sucesso.
Processos Empíricos
São aqueles que não se conheçam todas as variáveis de entrada
para que possa estabelecer um processo repetível.
O Scrum, parte do princípio que nem todas as características do
produto são conhecidas na análise e que provavelmente os
requisitos mudarão com o passar do tempo.
Exemplo do dia a dia
É como dirigir um carro, nunca se traça um destino em que a
chegada é em linha reta, sempre há pequenas correções até seu
destino.
Conclusão
Processos empíricos baseados em inspeção e adaptação devem
ser utilizados sempre que os processos definidos não forem
adequados devido a complexidade do projeto.
O que é SCRUM?
Processo de desenvolvimento iterativo e incremental que pode ser
aplicado a qualquer produto ou no gerenciamento de qualquer
atividade complexa;
Criado por Jeff Sutherland e Ken Schwaber na década de 90;
O P.O. O Scrum Master O Time
Papéis no SCRUM
Product Owner (P.O.)
• Responsável por garantir o Retorno sobre o Investimento (ROI)
• Conhece as necessidades do que precisa ser feito
• Define os itens do Product Backlog
• Prioriza os itens na Sprint Planning Meeting
Scrum Master
• Garante o uso da Metodologia
• É um líder e um facilitador
• Precisa tirar da frente qualquer impedimento
Time
• Função do SCRUM Team é ser auto-gerenciado
• Define as metas dos Sprints
• Produz com qualidade e valor para o P.O.
Fases do Scrum
• Product Backlog
• Sprint Planning Meeting
• Planning Poker
• Daily Scrum
• Sprint Review Meeting
• Sprint Retrospective
Product Backlog
• Lista com as funcionalidades para o produto
• O conteúdo é definido pelo P. O.
• Não necessita estar completo
• Com o tempo o Product Backlog cresce ou
diminui dependendo do que o P.O. necessita;
Sprint Planning Meeting
• Reunião com o P.O., Scrum Master e Scrum Team
• P.O. descreve as funcionalidades
• A equipe questiona
• No final é gerado o Sprint Backlog
• Scrum Team e o P.O. definirão o objetivo
Planning Poker
• Estimar o esforço das funcionalidades
• Números menores mais simples
• Números maiores são mais complexos
• Coringas:
• Café - 15 minutos para uma pausa
• ? - Não foi entendido alguma funcionalidade falada
O Sprint
• Funcionalidades escolhidas na Sprint Planning Meeting na Coluna À Fazer
• É definido um prazo para o Sprint (2 ou 4 semanas)
• O prazo é mantido até o final do projeto
• Considera-se finalizado com Sucesso:
• Quando todas as tarefas estiverem na Coluna Finalizado
• Finalizado com falha:
• Quando o tempo estourar (2 semanas por exemplo) e/ou funcionalidades
mal implementadas e sem qualidade
Quadro KANBAN
• No quadro é colocado o andamento do Sprint
• Os Post its são importantes
• Se coloridos facilitam a visualização
• Também serve para saber o que está fazendo
• Evitem Softwares para o KANBAN
Daily Scrum
• Reunião em Pé de 15 minutos
• Deverá ser respondida apenas 3 perguntas:
• O que você fez ontem?
• O que você fará hoje?
• Há algum impedimento no seu caminho?
• É uma reunião focada
• Não é para resolver problemas
Burndown Chart
Sprint Retrospective
• Ocorre ao final do Sprint
• Utilizado para identificar o que funcionou bem
• Também é utilizado para verificar o que poderia ser melhorado
• E quais ações serão tomadas para melhorá-lo
Sprint Review Meeting
• No final de cada Sprint Retrospective é feito um Sprint Review Meeting
• É mostrado o que foi alcançado no Sprint
• Nesta reunião estará o P.O., Scrum Team e Scrum Master
• O mais importante é que o objetivo esteja realizado
WOWWWW
Então a cada 2
semanas terei um
pedaço do meu
sistema?
E eu ainda vou poder alterar
o escopo quando precisar
no meu Backlog
E depois que acabar uma
Sprint?
Depois começa tudo outra vez
até o término do projeto
É a solução PERFEITA para
meus problemas
Mais ou menos, temos que
tomar alguns cuidados
com os problemas mais
comuns
Síndrome do Gótico
Ou
Síndrome do Depressivo
Síndrome do Emo
Ou
Síndrome do Chorão
Síndrome do Melhor do Mundo
Contrato Errado
Pausa nos problemas para uma Estória
Bacon com Ovos
Chickens no Projeto
SCRUMbut
Tantos problemas...
Estou #chateado
Acalme-se Brian, há esperança
A equipe deve estar SEMPRE unida
Garanta PIGs no seu projeto
Livre-se das más influências no Projeto
Incentive o profissional a não
desistir
Nunca responda por ele
Faça o profissional vir com um
problema e uma solução
Force diálogos entre os membros
Seja Humilde
Ajude seus companheiros
Comemorem o sucesso do Sprint
TODOS ENVOLVIDOS DEVEM PARTICIPAR.
=== NÃO É OPCIONAL ===
Dúvidas?
Obrigado
Eduardo Bregaida
eduardo.bregaida@sciensa.com

Mais conteúdo relacionado

Mais procurados

Oxford phonics world_5_sb(1)
Oxford phonics world_5_sb(1)Oxford phonics world_5_sb(1)
Oxford phonics world_5_sb(1)
Tiwaporn Suwanchalearn
 
Android's Multimedia Framework
Android's Multimedia FrameworkAndroid's Multimedia Framework
Android's Multimedia Framework
Opersys inc.
 
Externalized Spring Boot App Configuration
Externalized  Spring Boot App ConfigurationExternalized  Spring Boot App Configuration
Externalized Spring Boot App Configuration
Haufe-Lexware GmbH & Co KG
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
WinWire Technologies Inc
 
What Is Helm
 What Is Helm What Is Helm
What Is Helm
AMELIAOLIVIA2
 
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...ejml
 
How to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container RegistryHow to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Edureka!
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modules
Yevgeniy Brikman
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a Git
Mario IC
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Syah Dwi Prihatmoko
 
Feedbacks - V1
Feedbacks - V1Feedbacks - V1
Feedbacks - V1
Eduardo Bregaida
 
Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署
Bo-Yi Wu
 
What Are Coroutines In Kotlin?
What Are Coroutines In Kotlin?What Are Coroutines In Kotlin?
What Are Coroutines In Kotlin?
Simplilearn
 
Arquitetura 6 exercícios
Arquitetura 6   exercíciosArquitetura 6   exercícios
Arquitetura 6 exercíciosPaulo Fonseca
 
Introduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-ManagerIntroduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-Managerwalkerchang
 
Configuration management II - Terraform
Configuration management II - TerraformConfiguration management II - Terraform
Configuration management II - Terraform
Xavier Serrat Bordas
 
Apostila Linguagens Formais e Autômatos (LFA)
Apostila Linguagens Formais e Autômatos (LFA)Apostila Linguagens Formais e Autômatos (LFA)
Apostila Linguagens Formais e Autômatos (LFA)
Ricardo Terra
 
llvm 소개
llvm 소개llvm 소개
llvm 소개
Minhyuk Kwon
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guide
Rohit Arora
 

Mais procurados (20)

Oxford phonics world_5_sb(1)
Oxford phonics world_5_sb(1)Oxford phonics world_5_sb(1)
Oxford phonics world_5_sb(1)
 
Android's Multimedia Framework
Android's Multimedia FrameworkAndroid's Multimedia Framework
Android's Multimedia Framework
 
Externalized Spring Boot App Configuration
Externalized  Spring Boot App ConfigurationExternalized  Spring Boot App Configuration
Externalized Spring Boot App Configuration
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
 
What Is Helm
 What Is Helm What Is Helm
What Is Helm
 
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...
Atividades de Programação de Jogos com o software Scratch no 1º Ciclo do Ensi...
 
How to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container RegistryHow to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container Registry
 
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modules
 
Taller breve de introduccion a Git
Taller breve de introduccion a GitTaller breve de introduccion a Git
Taller breve de introduccion a Git
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
 
Feedbacks - V1
Feedbacks - V1Feedbacks - V1
Feedbacks - V1
 
Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署Drone CI/CD 自動化測試及部署
Drone CI/CD 自動化測試及部署
 
What Are Coroutines In Kotlin?
What Are Coroutines In Kotlin?What Are Coroutines In Kotlin?
What Are Coroutines In Kotlin?
 
Arquitetura 6 exercícios
Arquitetura 6   exercíciosArquitetura 6   exercícios
Arquitetura 6 exercícios
 
Introduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-ManagerIntroduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-Manager
 
Configuration management II - Terraform
Configuration management II - TerraformConfiguration management II - Terraform
Configuration management II - Terraform
 
Apostila Linguagens Formais e Autômatos (LFA)
Apostila Linguagens Formais e Autômatos (LFA)Apostila Linguagens Formais e Autômatos (LFA)
Apostila Linguagens Formais e Autômatos (LFA)
 
llvm 소개
llvm 소개llvm 소개
llvm 소개
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guide
 

Destaque

DDD + BDD + TDD - RF 2015
DDD + BDD + TDD - RF 2015 DDD + BDD + TDD - RF 2015
DDD + BDD + TDD - RF 2015
Eduardo Bregaida
 
Spring MVC - QConSP
Spring MVC - QConSPSpring MVC - QConSP
Spring MVC - QConSP
Eduardo Bregaida
 
DDD - Linguagem Ubíqua
DDD - Linguagem UbíquaDDD - Linguagem Ubíqua
DDD - Linguagem Ubíqua
Eduardo Bregaida
 
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Yan Justino
 
Java acsp
Java acspJava acsp
Java acsp
Eduardo Bregaida
 
Java+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso TotalJava+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso Total
Eduardo Bregaida
 
Cultura da empresa - um problema na adoção ágil
Cultura da empresa - um problema na adoção ágilCultura da empresa - um problema na adoção ágil
Cultura da empresa - um problema na adoção ágil
Eduardo Bregaida
 
Java Generics - Quiz Questions
Java Generics - Quiz QuestionsJava Generics - Quiz Questions
Java Generics - Quiz Questions
Ganesh Samarthyam
 
Software Architecture - Quiz Questions
Software Architecture - Quiz QuestionsSoftware Architecture - Quiz Questions
Software Architecture - Quiz Questions
Ganesh Samarthyam
 
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDOARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
Yan Justino
 
Get into Functional Programming with Clojure
Get into Functional Programming with ClojureGet into Functional Programming with Clojure
Get into Functional Programming with Clojure
John Stevenson
 
Introdução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide WebIntrodução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide Web
Cícero Quarto
 
Scrum - IMES 2013 (Remodelada)
Scrum - IMES 2013 (Remodelada)Scrum - IMES 2013 (Remodelada)
Scrum - IMES 2013 (Remodelada)
Eduardo Bregaida
 
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Caelum
 
Aula 15 minutos
Aula 15 minutosAula 15 minutos
Aula 15 minutos
Eduardo Bregaida
 
Sailing with Java 8 Streams
Sailing with Java 8 StreamsSailing with Java 8 Streams
Sailing with Java 8 Streams
Ganesh Samarthyam
 
Java 8 Date and Time API
Java 8 Date and Time APIJava 8 Date and Time API
Java 8 Date and Time APISualeh Fatehi
 

Destaque (17)

DDD + BDD + TDD - RF 2015
DDD + BDD + TDD - RF 2015 DDD + BDD + TDD - RF 2015
DDD + BDD + TDD - RF 2015
 
Spring MVC - QConSP
Spring MVC - QConSPSpring MVC - QConSP
Spring MVC - QConSP
 
DDD - Linguagem Ubíqua
DDD - Linguagem UbíquaDDD - Linguagem Ubíqua
DDD - Linguagem Ubíqua
 
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
 
Java acsp
Java acspJava acsp
Java acsp
 
Java+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso TotalJava+DDD+BDD+TDD=Sucesso Total
Java+DDD+BDD+TDD=Sucesso Total
 
Cultura da empresa - um problema na adoção ágil
Cultura da empresa - um problema na adoção ágilCultura da empresa - um problema na adoção ágil
Cultura da empresa - um problema na adoção ágil
 
Java Generics - Quiz Questions
Java Generics - Quiz QuestionsJava Generics - Quiz Questions
Java Generics - Quiz Questions
 
Software Architecture - Quiz Questions
Software Architecture - Quiz QuestionsSoftware Architecture - Quiz Questions
Software Architecture - Quiz Questions
 
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDOARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
 
Get into Functional Programming with Clojure
Get into Functional Programming with ClojureGet into Functional Programming with Clojure
Get into Functional Programming with Clojure
 
Introdução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide WebIntrodução aos computadores e à World Wide Web
Introdução aos computadores e à World Wide Web
 
Scrum - IMES 2013 (Remodelada)
Scrum - IMES 2013 (Remodelada)Scrum - IMES 2013 (Remodelada)
Scrum - IMES 2013 (Remodelada)
 
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
 
Aula 15 minutos
Aula 15 minutosAula 15 minutos
Aula 15 minutos
 
Sailing with Java 8 Streams
Sailing with Java 8 StreamsSailing with Java 8 Streams
Sailing with Java 8 Streams
 
Java 8 Date and Time API
Java 8 Date and Time APIJava 8 Date and Time API
Java 8 Date and Time API
 

Semelhante a DDD + BDD + TDD + Scrum

Treinamento Agile com scrum
Treinamento Agile com scrumTreinamento Agile com scrum
Treinamento Agile com scrum
Eduardo Bregaida
 
Treinamento Agile com Scrum - V2
Treinamento Agile com Scrum - V2Treinamento Agile com Scrum - V2
Treinamento Agile com Scrum - V2
Eduardo Bregaida
 
Introdução ao desenvolvimento ágil com Scrum
Introdução ao desenvolvimento ágil com ScrumIntrodução ao desenvolvimento ágil com Scrum
Introdução ao desenvolvimento ágil com Scrum
Inove
 
Apresentacao scrum
Apresentacao scrumApresentacao scrum
Apresentacao scrum
Uriel Valle
 
Scrum
ScrumScrum
Treinamento - Scrum.pptx
Treinamento - Scrum.pptxTreinamento - Scrum.pptx
Treinamento - Scrum.pptx
Fernando Barbieri
 
Scrum - Hands On
Scrum - Hands OnScrum - Hands On
Scrum - Hands On
Adriano Fialho
 
Workshop Hands-On de Scrum
Workshop Hands-On de ScrumWorkshop Hands-On de Scrum
Workshop Hands-On de Scrum
Rafael Fantini da Costa
 
Agile SCRUM
Agile SCRUMAgile SCRUM
Agile SCRUM
Eduardo Bregaida
 
Palestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPalestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPaulo Furtado
 
Scrum - passos e desafios - agile tour
Scrum - passos e desafios - agile tourScrum - passos e desafios - agile tour
Scrum - passos e desafios - agile tour
Eduardo Bregaida
 
Extreme Programming (XP) e Scrum
Extreme Programming (XP) e ScrumExtreme Programming (XP) e Scrum
Extreme Programming (XP) e Scrum
Rafael Souza
 
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
Ari Amaral
 
Aula 3 - Engenharia de Software
Aula 3 - Engenharia de SoftwareAula 3 - Engenharia de Software
Aula 3 - Engenharia de Software
Rudson Kiyoshi Souza Carvalho
 
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Cris Fidelix
 
Enter SCRUM
Enter SCRUMEnter SCRUM
Enter SCRUM
Breno Campos
 
Introdução às Metodologias Ágeis de Desenvolvimento
Introdução às Metodologias Ágeis de DesenvolvimentoIntrodução às Metodologias Ágeis de Desenvolvimento
Introdução às Metodologias Ágeis de Desenvolvimento
Jerry Medeiros
 
Netshoes metodologia
Netshoes metodologiaNetshoes metodologia
Netshoes metodologia
Ale Uehara
 

Semelhante a DDD + BDD + TDD + Scrum (20)

Treinamento Agile com scrum
Treinamento Agile com scrumTreinamento Agile com scrum
Treinamento Agile com scrum
 
Treinamento Agile com Scrum - V2
Treinamento Agile com Scrum - V2Treinamento Agile com Scrum - V2
Treinamento Agile com Scrum - V2
 
Introdução ao desenvolvimento ágil com Scrum
Introdução ao desenvolvimento ágil com ScrumIntrodução ao desenvolvimento ágil com Scrum
Introdução ao desenvolvimento ágil com Scrum
 
Scrum workshop
Scrum   workshopScrum   workshop
Scrum workshop
 
Apresentacao scrum
Apresentacao scrumApresentacao scrum
Apresentacao scrum
 
Scrum
ScrumScrum
Scrum
 
Treinamento - Scrum.pptx
Treinamento - Scrum.pptxTreinamento - Scrum.pptx
Treinamento - Scrum.pptx
 
Scrum - Hands On
Scrum - Hands OnScrum - Hands On
Scrum - Hands On
 
Workshop Hands-On de Scrum
Workshop Hands-On de ScrumWorkshop Hands-On de Scrum
Workshop Hands-On de Scrum
 
Agile SCRUM
Agile SCRUMAgile SCRUM
Agile SCRUM
 
Palestra de SCRUM em Juazeiro
Palestra de SCRUM em JuazeiroPalestra de SCRUM em Juazeiro
Palestra de SCRUM em Juazeiro
 
Scrum - passos e desafios - agile tour
Scrum - passos e desafios - agile tourScrum - passos e desafios - agile tour
Scrum - passos e desafios - agile tour
 
Extreme Programming (XP) e Scrum
Extreme Programming (XP) e ScrumExtreme Programming (XP) e Scrum
Extreme Programming (XP) e Scrum
 
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
Palestra : Scrum : A arte de fazer o dobro do trabalho na metade do tempo !
 
Aula 3 - Engenharia de Software
Aula 3 - Engenharia de SoftwareAula 3 - Engenharia de Software
Aula 3 - Engenharia de Software
 
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
 
Enter SCRUM
Enter SCRUMEnter SCRUM
Enter SCRUM
 
Introdução às Metodologias Ágeis de Desenvolvimento
Introdução às Metodologias Ágeis de DesenvolvimentoIntrodução às Metodologias Ágeis de Desenvolvimento
Introdução às Metodologias Ágeis de Desenvolvimento
 
Netshoes metodologia
Netshoes metodologiaNetshoes metodologia
Netshoes metodologia
 
Netshoes metodologia
Netshoes metodologiaNetshoes metodologia
Netshoes metodologia
 

Mais de Eduardo Bregaida

War Room - Bregaida - V1
War Room - Bregaida - V1War Room - Bregaida - V1
War Room - Bregaida - V1
Eduardo Bregaida
 
Aviação Civil LT sciensa
Aviação Civil  LT sciensaAviação Civil  LT sciensa
Aviação Civil LT sciensa
Eduardo Bregaida
 
Management 3.0 - V. Revisada
Management 3.0 - V. RevisadaManagement 3.0 - V. Revisada
Management 3.0 - V. Revisada
Eduardo Bregaida
 
Minha história
Minha históriaMinha história
Minha história
Eduardo Bregaida
 
Cultura da Empresa - um problema na Adoção Ágil - Conexão Java
Cultura da Empresa - um problema na Adoção Ágil - Conexão JavaCultura da Empresa - um problema na Adoção Ágil - Conexão Java
Cultura da Empresa - um problema na Adoção Ágil - Conexão Java
Eduardo Bregaida
 
Refatoração de código com Capitão Nascimento versão completa
Refatoração de código com Capitão Nascimento versão completaRefatoração de código com Capitão Nascimento versão completa
Refatoração de código com Capitão Nascimento versão completa
Eduardo Bregaida
 
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeisFalhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
Eduardo Bregaida
 
Virus em Hw
Virus em HwVirus em Hw
Virus em Hw
Eduardo Bregaida
 
JSF & REST
JSF & RESTJSF & REST
JSF & REST
Eduardo Bregaida
 
Cloud Computing Apresentacao Uscs Final
Cloud Computing Apresentacao Uscs FinalCloud Computing Apresentacao Uscs Final
Cloud Computing Apresentacao Uscs Final
Eduardo Bregaida
 
Metodologias Ágeis no Estilo Dr House
Metodologias Ágeis no Estilo Dr HouseMetodologias Ágeis no Estilo Dr House
Metodologias Ágeis no Estilo Dr House
Eduardo Bregaida
 
Java E O Mercado De Trabalho
Java E O Mercado De TrabalhoJava E O Mercado De Trabalho
Java E O Mercado De Trabalho
Eduardo Bregaida
 
ApresentaçãO De Java
ApresentaçãO De JavaApresentaçãO De Java
ApresentaçãO De Java
Eduardo Bregaida
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer Faces
Eduardo Bregaida
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em Desenvolvimento
Eduardo Bregaida
 
Profiling - IMES.java - Haroldo Macedo
Profiling - IMES.java - Haroldo MacedoProfiling - IMES.java - Haroldo Macedo
Profiling - IMES.java - Haroldo Macedo
Eduardo Bregaida
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 

Mais de Eduardo Bregaida (17)

War Room - Bregaida - V1
War Room - Bregaida - V1War Room - Bregaida - V1
War Room - Bregaida - V1
 
Aviação Civil LT sciensa
Aviação Civil  LT sciensaAviação Civil  LT sciensa
Aviação Civil LT sciensa
 
Management 3.0 - V. Revisada
Management 3.0 - V. RevisadaManagement 3.0 - V. Revisada
Management 3.0 - V. Revisada
 
Minha história
Minha históriaMinha história
Minha história
 
Cultura da Empresa - um problema na Adoção Ágil - Conexão Java
Cultura da Empresa - um problema na Adoção Ágil - Conexão JavaCultura da Empresa - um problema na Adoção Ágil - Conexão Java
Cultura da Empresa - um problema na Adoção Ágil - Conexão Java
 
Refatoração de código com Capitão Nascimento versão completa
Refatoração de código com Capitão Nascimento versão completaRefatoração de código com Capitão Nascimento versão completa
Refatoração de código com Capitão Nascimento versão completa
 
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeisFalhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
Falhas nos projetos é culpa da Cultura da Empresa e não das metodologias ágeis
 
Virus em Hw
Virus em HwVirus em Hw
Virus em Hw
 
JSF & REST
JSF & RESTJSF & REST
JSF & REST
 
Cloud Computing Apresentacao Uscs Final
Cloud Computing Apresentacao Uscs FinalCloud Computing Apresentacao Uscs Final
Cloud Computing Apresentacao Uscs Final
 
Metodologias Ágeis no Estilo Dr House
Metodologias Ágeis no Estilo Dr HouseMetodologias Ágeis no Estilo Dr House
Metodologias Ágeis no Estilo Dr House
 
Java E O Mercado De Trabalho
Java E O Mercado De TrabalhoJava E O Mercado De Trabalho
Java E O Mercado De Trabalho
 
ApresentaçãO De Java
ApresentaçãO De JavaApresentaçãO De Java
ApresentaçãO De Java
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer Faces
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em Desenvolvimento
 
Profiling - IMES.java - Haroldo Macedo
Profiling - IMES.java - Haroldo MacedoProfiling - IMES.java - Haroldo Macedo
Profiling - IMES.java - Haroldo Macedo
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 

DDD + BDD + TDD + Scrum