View
22
Download
4
Embed Size (px)
Mtodos geis: FDD
Desenvolvimento de software uma cadeia com diversos elos Kent Beck Criador do eXtreme Programing (XP)
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
Andr VidalFundador e Scio Diretor da Agile Think, com 20 anos de experincia na
rea de Tecnologia. Atualmente trabalha como Gerente de Projetos e
Agile Coach. pesquisador, ministra cursos tcnicos e de
especializao nas reas de Tecnologia da Informao. Articulista das
revistas Engenharia de Software e Java Magazine da Devmedia.
ESCRITOR
Autor do livro Agile
Think Canvas,
Editora Brasport
AGILE COACH
Agile Coach e Gerente
de Projetos pela
empresa Abu
Consultoria
CONSULTOR
Gesto de Projetos,
Governana,
Processos, Negcios e
Quality Assurance
CERTIFICAES: MBA Gesto de Projetos,
PMI-ACP, CSM - Scrum Alliance, EXIN-ASF e
SAFe
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
O que Desenvolvimento Lean
LEAN a aplicao em desenvolvimento de software do modelo lean manufacturing, cujos
princpios e prticas para o desenvolvimento de domnio de software foram adaptados do
Sistema Toyota de Produo (http://en.wikipedia.org/wiki/Lean_software_development)
O Lean uma subcultura da
comunidade gil, com foco na
criao e sustentao de sistemas
de produo de software.
Princpios Lean
1. Eliminar o desperdcio no
desenvolvimento de sistemas
2. Amplificar aprendizagem dos envolvidos
no processo
3. Decidir o mais tarde possvel!
4. Entregar o mais rpido possvel!
5. Capacitar a equipe
6. Construir integridade agregando valores
pessoais e ativos de conhecimento
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
O que Agile?AGILEAgile realmente uma cultura que gera processos e no
apenas um processo. Isso deve afetar diretamente o nosso
modo de ensinar aos outros como adotar Agile.
Jeff Patton (http://www.agileproductdesign.com/)
O objetivo de uma metodologia gil minimizar riscos
inerentes ao desenvolvimento de software.
A Agile Alliance define os seguintes princpios em
seu Manifesto gil, o qual base para os demais
mtodos:
1. Gerar satisfao no cliente pelo atendimento rpido e contnuo no fornecimento de software
2. Entregar software com freqncia semanal, ao invs de longas esperas
3. O software a principal medida de progresso dos trabalhos
4. Mesmo que tardia, as mudanas nos requisitos so bem-vindas
5. Propiciar diariamente a cooperao entre desenvolvedores e clientes
6. Conversar face a face a melhor forma de comunicao
7. Os projetos so construdos em torno de pessoas motivadas, confiveis e que devem ter
ateno contnua, propiciando a excelncia tcnica e um bom design
8. Simplicidade
9. Auto-organizar equipes
10. Adaptar-se evoluo do negcio www.agilethink.com.br 2017
Agile Think - Todos os direitos reservados
Benefcios e Desafios
Desafios
Existe dificuldade ao
atendimento do que
solicitado, at que o time
e gerncia tenham
absorvido o conhecimento
necessrio para resolver
o paradigma. Inicialmente
a performance da
ferramenta pode ter
resultados que
desapontam os
investidores.
Benefcios
Os requisitos iniciais de
produtividade e qualidade
so definidos para os time
boxes, propiciando o
entendimento das
necessidades do negcio,
fornecendo mais
visibilidade ao Lder de
Projeto e Time de
desenvolvimento.
Caractersticas do Uso de Lean, Agile, SCRUM e FDDCurto Prazo
Baseado no artigo:
FREDDY BALLE & MICHAEL BALLE, "Lean or Six Sigma," www.lean.org/library/leanorsigma.pdf.
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
http://www.lean.org/library/leanorsigma.pdf
Desafios
O retorno de
investimento, at que
seja entendido, deve
passar por algumas
barreiras, que so
Implementar uma
mudana de programa
Vencer o cinismo de
empregados mais
experientes.
Benefcios
Time boxes
quantificveis ou
projetados por classes
de negcio, que
podem ser executadas
paralelamente (on the
side).
Benefcios e Desafios
Baseado no artigo:
FREDDY BALLE & MICHAEL BALLE, "Lean or Six Sigma," www.lean.org/library/leanorsigma.pdf.
Caractersticas do Uso de Lean, Agile, SCRUM e FDDCurto Mdio Prazo
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
http://www.lean.org/library/leanorsigma.pdf
Baseado no artigo:
FREDDY BALLE & MICHAEL BALLE, "Lean or Six Sigma," www.lean.org/library/leanorsigma.pdf.
Desafios
Requer investimento
intelectual e constante
comprometimento com
resultados com o alto
gerenciamento. Para ter
sucesso na mudana de
modelo da empresa, o
alto gerenciamento tem
que estar comprometido
de forma mais incisiva,
sendo muito mais do que
apenas dar uma beno
distante e assinar o
cheque
Benefcios
Mudana de perspectiva,
que leva a uma
transformao de como
se enxerga o negcio,
sendo a anlise uma
fonte fundamental de
vantagem competitiva.
Tambm aumenta as
barreiras para com os
concorrentes, pois o
modelo tem maior valor
agregado a ele.
Benefcios e Desafios
Caractersticas do Uso de Lean, Agile, SCRUM e FDDMdio Prazo
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
http://www.lean.org/library/leanorsigma.pdf
Desafios
Romper com a falta de
sinergia entre os focos
de ao e ao que levou
resultados
desapontadores.
Combater apatia e por
fim a falta de interesse
no programa.
Benefcios
Alguns benefcios de
longo prazo que levam
ao abandono do
programa anterior em
substituio por uma
verso mais
atualizada.
Benefcios e Desafios
Baseado no artigo:
FREDDY BALLE & MICHAEL BALLE, "Lean or Six Sigma," www.lean.org/library/leanorsigma.pdf.
Caractersticas do Uso de Lean, Agile, SCRUM e FDDLongo Prazo
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
http://www.lean.org/library/leanorsigma.pdf
O que FDD?Feature Driven Development um processo de engenharia de software que tem por foco principal a entrega
freqente de software funcional ao cliente.
A FDD no foca a programao ou a definio de um modelo bem
definido, mas faz uso de um planejamento iterativo, que tem por
objetivo abstrair e atender as principais necessidades do negcio, que
determinar a forma de atuao da equipe de desenvolvimento.
uma metodologia gil voltada ao
desenvolvimento de software.
A FDD favorece de maneira incisiva o
envolvimento de clientes (internos ou externos) ao
processo de planejamento e desenvolvimento do
software.
A FDD est baseada num processo de desenvolvimento de software iterativo
e incremental.
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
Como Funciona FDD
Desenvolver Modelo
Construir Lista
de
Funcionalidades
Planejar Por
Funcionalidade
Detalhar Por
Funcionalidade
Desenvolver
Por
Funcionalidade
Entendimento do
Negcio
Construo de
Modelo Conceitual
Dedicar 1/6 do tempo do Projeto Iterao de Duas Semanas
Construo da FBS
Definio das User
Histories
Atualizao do Kanban
Criao do Burndown
Diagrama de Classes
Diagrama de Seqncia
Cdigo
Plano de Teste Unitrio
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
Artefatos
Atividades
FBS: Feature Breakdown
Structure
Diagrama de Classes
Critrios de Aceitao
Reunio de entendimento do problema,
contando com os membros efetivos do
Time e Cliente.
Confeco das User Histories
Analista de Negcios
Arquiteto
Analista de Sistemas
Desenvolvedores
Tester
Time
Desenvolver Modelo
Construir Lista
de
Funcionalidades
Planejar Por
Funcionalidade
Detalhar Por
Funcionalidade
Desenvolver
Por
Funcionalidade
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
Artefatos
Atividades
FBS: Feature Breakdown Structure
Diagrama de Classes
User Histories (Negcios e Critrios de
Aceitao)
Definir os responsveis por cada um dos
modelos, agrupados por Features.
Construir a Lista de Funcionalidades
Analista de Negcios
Arquiteto
Analista de Sistemas
Desenvolvedores
Testes
Time
Desenvolver Modelo
Construir Lista
de
Funcionalidades
Planejar Por
Funcionalidade
Detalhar Por
Funcionalidade
Desenvolver Por
Funcionalidade
www.agilethink.com.br 2017 Agile Think - Todos os direitos reservados
Artefatos
Atividades