SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Arquitetura	
  Ágil,	
  	
  
uma	
  abordagem	
  disciplinada	
  
Adriano	
  Tavares	
  
adriano.tavares@gmail.com	
  
BH,	
  19	
  de	
  outubro,	
  2013	
  
Adriano	
  Tavares 	
  	
  
SoKware	
  Architect,	
  Agile	
  Coach	
  
adriano.tavares@gmail.com	
  
hGp://adrianotavares.com	
  
@adrianotavares	
  
hGp://br.linkedin.com/in/adrianotavares	
  
	
  

	
  
	
  

DAD	
  Black	
  Belt/CerCfied	
  Instructor	
  
hGp://DisciplinedAgileConsorCum.org	
  
MoCvação	
  
ü Apresentar	
  uma	
  abordagem	
  disciplinada	
  de	
  
como	
  o	
  responsável	
  pela	
  arquitetura	
  pode	
  
atuar	
  no	
  ciclo	
  de	
  vida	
  de	
  desenvolvimento	
  ágil.	
  	
  
Publico	
  alvo	
  

ü  Desenvolvedores,	
  líderes	
  técnicos	
  e	
  arquitetos	
  envolvidos	
  
em	
  aCvidades	
  de	
  design	
  de	
  soluções	
  técnicas	
  de	
  soKware	
  e	
  
miCgação	
  de	
  riscos	
  técnicos	
  ao	
  longo	
  de	
  um	
  projeto	
  ágil	
  
desde	
  seu	
  início	
  até	
  a	
  sua	
  colocação	
  em	
  produção.	
  
©	
  ScoG	
  Ambler	
  +	
  Associates	
  

5	
  
5	
  Mitos	
  comuns	
  que	
  cercam	
  a	
  
Arquitetura	
  Ágil	
  
1.  Agilistas	
  não	
  “fazem	
  arquitetura”	
  
2.  Agilistas	
  iniciam	
  direto	
  na	
  codificação	
  
3.  Agilistas	
  não	
  seguem	
  estratégias	
  de	
  
arquitetura	
  corporaCva	
  
4.  Agilistas	
  não	
  modelam	
  
5.  Agilistas	
  não	
  documentam	
  
5	
  Realidades	
  sobre	
  Arquitetura	
  Ágil	
  
1.  Arquitetura	
  é	
  tão	
  importante	
  que	
  agilistas	
  a	
  
endereçam	
  ao	
  longo	
  de	
  todo	
  o	
  ciclo	
  de	
  vida	
  
2.  Agilistas	
  disciplinados	
  investem	
  em	
  visualização	
  inicial	
  	
  
(Just	
  enough	
  up	
  front)	
  
3.  Agilistas	
  disciplinados	
  trabalham	
  em	
  estreita	
  
colaboração	
  com	
  profissionais	
  corporaCvos	
  
4.  Agilistas	
  disciplinados	
  modelam	
  explicitamente	
  	
  de	
  
uma	
  forma	
  leve	
  ao	
  longo	
  de	
  todo	
  o	
  ciclo	
  de	
  vida	
  
5.  Agilistas	
  disciplinados	
  documentam	
  entregáveis	
  
conCnuamente	
  
ACvidades	
  na	
  Iniciação	
  de	
  Projetos	
  
EsCmaCva	
  Inicial	
  
Modelagem	
  Inicial	
  dos	
  Requisitos	
  
Modelagem	
  Inicial	
  da	
  Arquitetura	
  
JusCficar	
  o	
  Projeto	
  
Cronograma	
  Alto-­‐nível	
  do	
  release	
  	
  
65%	
  

70%	
  

75%	
  

80%	
  

85%	
  

90%	
  

95%	
  

Source:	
  AmbysoK	
  2009	
  Agile	
  Project	
  IniCaCon	
  Survey	
  
Contextos	
  para	
  adaptação	
  da	
  agilidade	
  em	
  escala	
  
Agility	
  
at	
  
Scale	
  

Disciplined	
  
Agile	
  
Delivery	
  

Agile	
  

Disciplined	
  agile	
  delivery	
  com	
  um	
  ou	
  mais	
  fatores	
  de	
  complexidade:	
  
§  Times	
  grandes	
  (>30)	
  
§  Times	
  geograficamente	
  distribuídos	
  
§  Compliance	
  regulatórios	
  (PM,	
  EA,	
  SP)	
  
§  Complexidade	
  de	
  domínio	
  ou	
  técnica	
  
§  Questões	
  culturais/organizacionais	
  
§  Distribuição	
  organizacional	
  
• 
• 
• 
• 
• 

Foco	
  na	
  entrega	
  (Delivery)	
  
Ciclo	
  de	
  vida	
  dirigido	
  por	
  Risco-­‐Valor	
  
Auto-­‐organização	
  com	
  governança	
  apropriada	
  (>15<30)	
  
Dirigido	
  por	
  metas	
  
Aderência	
  CorporaCva	
  

• 
• 
• 
• 
• 

Foco	
  na	
  construção	
  
Ciclo	
  de	
  vida	
  dirigido	
  por	
  valor	
  
Times	
  alto-­‐organizados	
  (<15)	
  
PrescriCvo	
  (Scrum,	
  XP,	
  AM)	
  
Aderência	
  a	
  Times	
  de	
  projeto	
  

The Agile Scaling Model (ASM), é um framework conceitual desenvolvido pela IBM 	
  
Disciplined	
  Agile	
  Delivery	
  (DAD)	
  
Disciplined	
  Agile	
  Delivery	
  (DAD)	
  é	
  um	
  
framework	
  de	
  processo	
  de	
  decisão	
  

	
  
As	
  principais	
  caracterísCcas	
  de	
  DAD:	
  
ü Abordagem	
  ágil	
  hibrida;	
  
ü Pessoas-­‐primeiro;	
  
ü Ciclo	
  de	
  vida	
  de	
  entrega	
  completo;	
  
ü Dirigido	
  por	
  metas;	
  
ü Focado	
  em	
  soluções	
  de	
  TI;	
  
ü Ciclo	
  de	
  vida	
  Risco-­‐valor;	
  
ü Aderência	
  CorporaCva;	
  
ü Escalável.	
  
DAD	
  é	
  uma	
  abordagem	
  ágil	
  híbrida	
  
DevOps	
  
Outside	
  In	
  Dev.	
  
OpenUP	
  
Scrum	
  

Lean	
  
XP	
  

Agile	
  Data	
  
Agile	
  Modeling	
  

Kanban	
  

…	
  e	
  mais	
  

DAD	
  uCliza	
  estratégias	
  comprovadas	
  de	
  várias	
  fontes	
  
fornecendo	
  uma	
  estrutura	
  de	
  decisão	
  para	
  orientar	
  a	
  sua	
  adoção	
  e	
  	
  
customização	
  de	
  uma	
  maneira	
  dirigida	
  pelo	
  contexto.	
  
Pessoas-­‐primeiro:	
  Papéis	
  em	
  Cmes	
  DAD	
  
Ciclo	
  de	
  vida	
  DAD	
  básico	
  
Quem	
  é	
  o	
  responsável	
  pela	
  
arquitetura	
  em	
  Cmes	
  ágeis?	
  
O	
  Que	
  faz	
  o	
  Architecture	
  Owner?	
  
ü  Orienta	
  a	
  criação	
  e	
  evolução	
  da	
  arquitetura	
  da	
  solução;	
  
ü  Lidera	
  o	
  esforço	
  inicial	
  de	
  visualização	
  da	
  arquitetura;	
  
ü  Lidera	
  a	
  equipe	
  nas	
  questões	
  e	
  práCcas	
  de	
  arquitetura;	
  
ü  Entende	
  as	
  diretrizes	
  e	
  os	
  padrões	
  de	
  arquitetura	
  da	
  sua	
  
organização	
  e	
  garante	
  que	
  a	
  equipe	
  os	
  segue;	
  
ü  Garante	
  que	
  o	
  sistema	
  vai	
  funcionar,	
  incenCvando	
  o	
  
desenho	
  e	
  refatoração	
  apropriado;	
  
ü  Garante	
  que	
  o	
  sistema	
  seja	
  integrado	
  e	
  testado	
  
frequentemente;	
  
ü  Tem	
  a	
  palavra	
  final	
  sobre	
  as	
  decisões	
  técnicas,	
  mas	
  não	
  
as	
  dita.	
  
Times	
  pequenos	
  (<15)	
  

•  Architecture	
  Owner	
  geralmente	
  é	
  
assumido	
  pelo	
  Team	
  Lead.	
  
•  Não	
  há	
  necessidade	
  de	
  atribuir	
  o	
  
papel	
  formalmente.	
  
•  Baixa	
  necessidade	
  de	
  trabalhar	
  o	
  
escopo	
  e	
  a	
  arquitetura	
  na	
  iniciação.	
  
•  Baixa	
  necessidade	
  de	
  automação	
  de	
  
ferramentas.	
  
Times	
  Médios	
  (>15<30)	
  	
  

•  Necessidade	
  de	
  maior	
  
esforço	
  de	
  planejamento	
  
durante	
  a	
  iniciação.	
  
•  Reuniões	
  Diárias	
  com	
  cada	
  
Cme	
  e	
  reuniões	
  de	
  
coordenação	
  dos	
  Cmes.	
  
•  Necessidade	
  de	
  apoio.	
  
Times	
  Grandes	
  (>30)	
  
Sugestões	
  de	
  organização	
  
de	
  sub-­‐Cmes:	
  
	
  
•  Features	
  	
  
Time	
  que	
  trabalha	
  em	
  
uma	
  feature	
  fim-­‐a-­‐fim.	
  

Necessidade	
  de:	
  	
  
•  Coordenação	
  de	
  
gerenciamento	
  de	
  
projetos.	
  
•  Coordenação	
  de	
  
requisitos.	
  
•  Coordenação	
  da	
  
Arquitetura.	
  

•  Componentes:	
  	
  
Time	
  focado	
  em	
  
compoenentes	
  
específicos.	
  
•  Integração	
  	
  
Time	
  focado	
  na	
  
integração	
  das	
  features	
  
e	
  componentes.	
  
	
  
Arquitetura	
  Ágil	
  em	
  Times	
  Grandes	
  
• 
	
  
• 

• 

Times	
  grandes	
  são	
  sinônimo	
  de	
  maior	
  complexidade	
  de	
  domínio,	
  complexidade	
  
técnica	
  ou	
  desafios	
  culturais	
  
Iniciação:	
  
–  InvesCr	
  um	
  pouco	
  mais	
  de	
  tempo	
  nos	
  requisitos	
  iniciais;	
  
–  Abordagem	
  “API	
  First”	
  para	
  a	
  arquitetura	
  onde	
  você	
  define	
  a	
  interface	
  para	
  
componentes	
  no	
  início	
  do	
  projeto;	
  
–  É	
  provável	
  que	
  haja	
  um	
  pouco	
  mais	
  de	
  especificação	
  inicial.	
  
Construção:	
  
–  Product	
  Owners	
  terão	
  de	
  coordenar	
  as	
  dependências	
  de	
  requisitos;	
  
–  Architecture	
  Owners	
  terão	
  de	
  coordenar	
  as	
  dependências	
  técnicas;	
  
–  TDD	
  pode	
  precisar	
  ser	
  melhorado	
  com	
  testes	
  independentes	
  em	
  paralelo.	
  
DAD	
  é	
  dirigido	
  por	
  metas	
  
Agilistas	
  Disciplinados	
  adotam	
  uma	
  
abordagem	
  dirigida	
  por	
  metas	
  
Meta	
  

	
  
	
  
	
  
IdenCficar	
  a	
  
estratégia	
  técnica	
  
inicial	
  

*	
  

Questões	
  

Nível	
  de	
  detalhe	
  
Tipos	
  de	
  visões	
  
Estratégia	
  de	
  Modelagem	
  
Estratégia	
  de	
  Entrega	
  
	
  

*	
  

Opção	
  
Opção	
  Default	
  

Vantagens	
  
Desvantagens	
  
Considerações	
  

Informal	
  Modeling	
  Sessions	
  
Formal	
  Modeling	
  Sessions	
  
Single	
  Candidate	
  Architecture	
  
MulCple	
  Candidate	
  Architectures	
  
Meta:	
  IdenCficar	
  a	
  estratégia	
  técnica	
  
inicial	
  
Meta:	
  Provar	
  a	
  Arquitetura	
  o	
  mais	
  
cedo	
  possível	
  	
  
Arquitetura	
  ao	
  longo	
  da	
  construção	
  
Architecture	
  owner	
  facilita	
  as	
  
decisões	
  arquiteturais	
  	
  
ao	
  longo	
  da	
  construção	
  
Visão	
  Arquitetural	
  
guia	
  os	
  esforços	
  de	
  
desenvolvimento	
  

MiCgação	
  de	
  riscos	
  mais	
  
cedo	
  provando	
  que	
  a	
  	
  
arquitetura	
  funciona	
  

DAS	
  e	
  modelos	
  	
  
são	
  atualizados	
  
quando	
  necessário	
  
Architecture	
  spikes	
  
para	
  explorar	
  as	
  
questões	
  técnicas	
  
Conclusão	
  
ü Formalize	
  o	
  papel	
  de	
  Architecture	
  Owner	
  quando	
  seu	
  
Cme	
  crescer;	
  
ü Adote	
  uma	
  abordagem	
  de	
  arquitetura	
  colaboraCva;	
  
ü Adote	
  metas	
  para	
  guiar	
  o	
  trabalho	
  de	
  arquitetura;	
  
•  IdenCficar	
  a	
  estratégia	
  inicial	
  
•  Provar	
  a	
  arquitetura	
  o	
  mais	
  cedo	
  possível	
  

ü Emergent	
  Design	
  é	
  uma	
  abordagem	
  consistente	
  para	
  
Arquitetura	
  Ágil	
  Disciplinada.	
  
Disciplined	
  Agile	
  CerCficaCon	
  
DisciplinedAgileConsorCum.org	
  

Disciplined	
  Agile	
  Yellow	
  Belt	
  	
  

–  IndicaCon	
  that	
  the	
  person	
  is	
  new	
  to	
  disciplined	
  agile	
  but	
  eager	
  to	
  
learn	
  
–  Beginner	
  cerCficaCon	
  

Disciplined	
  Agile	
  Green	
  Belt	
  

–  IndicaCon	
  that	
  the	
  person	
  is	
  striving	
  to	
  be	
  a	
  professional	
  
–  PotenCal	
  to	
  be	
  a	
  junior	
  coach	
  
–  Intermediate	
  cerCficaCon	
  

Disciplined	
  Agile	
  Black	
  Belt	
  

–  IndicaCon	
  that	
  the	
  person	
  is	
  an	
  expert	
  
–  OKen	
  a	
  senior	
  coach,	
  instructor,	
  or	
  agile	
  transformaCon	
  lead	
  
–  Expert	
  cerCficaCon	
  
CerCfied	
  Disciplined	
  Agile	
  Courses	
  
DisciplinedAgileConsorCum.org	
  

Introductory:	
  
DA	
  101:	
  The	
  Disciplined	
  Agile	
  Delivery	
  Experience	
  Workshop	
  (21	
  PDUs)	
  
DA	
  103:	
  Disciplined	
  Agile	
  Delivery	
  for	
  ExecuCves	
  (7	
  PDUs)	
  
DA	
  104:	
  IntroducCon	
  to	
  Disciplined	
  Agile	
  Delivery	
  (14	
  PDUs)	
  
	
  
Advanced:	
  
DA	
  203:	
  Agile	
  Architecture	
  with	
  Discipline	
  (7	
  PDUs)	
  
DA	
  210:	
  Disciplined	
  Agile	
  Delivery	
  for	
  Experienced	
  Agile	
  Professionals	
  (7	
  PDUs)	
  
DA	
  301:	
  Advanced	
  Disciplined	
  Agile	
  Delivery	
  (7	
  PDUs)	
  
DA	
  305:	
  Disciplined	
  Agile	
  Delivery	
  +	
  Advisor	
  Coaches	
  Clinic	
  (21	
  PDUs)	
  

Contenu connexe

Tendances

Modelos de Processo de Software Parte 3
Modelos de Processo de Software Parte 3Modelos de Processo de Software Parte 3
Modelos de Processo de Software Parte 3Elaine Cecília Gatto
 
Apresentacao kanbane scrum-reduzido
Apresentacao kanbane scrum-reduzidoApresentacao kanbane scrum-reduzido
Apresentacao kanbane scrum-reduzidoDavid Ribeiro
 
SCRUM e PMBOK unidos no gerenciamento de projetos
SCRUM e PMBOK unidos no gerenciamento de projetosSCRUM e PMBOK unidos no gerenciamento de projetos
SCRUM e PMBOK unidos no gerenciamento de projetosGUGP SUCESU-RS
 
Gestao agil de projetos com Scrum
Gestao agil de projetos com ScrumGestao agil de projetos com Scrum
Gestao agil de projetos com ScrumIgor Macaubas
 
Workshop Scrum - 8 horas
Workshop Scrum - 8 horasWorkshop Scrum - 8 horas
Workshop Scrum - 8 horasWise Systems
 
Extreme Programming (XP) e Scrum
Extreme Programming (XP) e ScrumExtreme Programming (XP) e Scrum
Extreme Programming (XP) e ScrumRafael Souza
 
Gerenciamento e desenvolvimento ágil de software
Gerenciamento e desenvolvimento ágil de softwareGerenciamento e desenvolvimento ágil de software
Gerenciamento e desenvolvimento ágil de softwareImpacta Eventos
 
Scrum - Desenvolvimento Ágil
Scrum - Desenvolvimento ÁgilScrum - Desenvolvimento Ágil
Scrum - Desenvolvimento ÁgilIsrael Santiago
 
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012Igor Abade
 
Modelos de Processo de Software Parte 2
Modelos de Processo de Software Parte 2Modelos de Processo de Software Parte 2
Modelos de Processo de Software Parte 2Elaine Cecília Gatto
 

Tendances (20)

Np09 P
Np09 PNp09 P
Np09 P
 
Modelos de Processo de Software Parte 3
Modelos de Processo de Software Parte 3Modelos de Processo de Software Parte 3
Modelos de Processo de Software Parte 3
 
Scrum
ScrumScrum
Scrum
 
Apresentacao kanbane scrum-reduzido
Apresentacao kanbane scrum-reduzidoApresentacao kanbane scrum-reduzido
Apresentacao kanbane scrum-reduzido
 
SCRUM e PMBOK unidos no gerenciamento de projetos
SCRUM e PMBOK unidos no gerenciamento de projetosSCRUM e PMBOK unidos no gerenciamento de projetos
SCRUM e PMBOK unidos no gerenciamento de projetos
 
Resumo Scrum Guide
Resumo Scrum GuideResumo Scrum Guide
Resumo Scrum Guide
 
Gestao agil de projetos com Scrum
Gestao agil de projetos com ScrumGestao agil de projetos com Scrum
Gestao agil de projetos com Scrum
 
Mini Curso Testes Ageis
Mini Curso Testes AgeisMini Curso Testes Ageis
Mini Curso Testes Ageis
 
Lista de Práticas Ágeis
Lista de Práticas ÁgeisLista de Práticas Ágeis
Lista de Práticas Ágeis
 
Scrum trainning
Scrum trainningScrum trainning
Scrum trainning
 
Workshop Scrum - 8 horas
Workshop Scrum - 8 horasWorkshop Scrum - 8 horas
Workshop Scrum - 8 horas
 
Metodologia Ágil
Metodologia ÁgilMetodologia Ágil
Metodologia Ágil
 
Scrum
ScrumScrum
Scrum
 
Extreme Programming (XP) e Scrum
Extreme Programming (XP) e ScrumExtreme Programming (XP) e Scrum
Extreme Programming (XP) e Scrum
 
Outras Metodologias Ágeis Parte 3
Outras Metodologias Ágeis Parte 3Outras Metodologias Ágeis Parte 3
Outras Metodologias Ágeis Parte 3
 
Gerenciamento e desenvolvimento ágil de software
Gerenciamento e desenvolvimento ágil de softwareGerenciamento e desenvolvimento ágil de software
Gerenciamento e desenvolvimento ágil de software
 
Unificando PMBOK e SCRUM no gerenciamento de projetos
Unificando PMBOK e SCRUM no gerenciamento de projetosUnificando PMBOK e SCRUM no gerenciamento de projetos
Unificando PMBOK e SCRUM no gerenciamento de projetos
 
Scrum - Desenvolvimento Ágil
Scrum - Desenvolvimento ÁgilScrum - Desenvolvimento Ágil
Scrum - Desenvolvimento Ágil
 
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012
Desenvolvimento ágil com Scrum e TFS 11 - Microsoft TechDay Sorocaba 2012
 
Modelos de Processo de Software Parte 2
Modelos de Processo de Software Parte 2Modelos de Processo de Software Parte 2
Modelos de Processo de Software Parte 2
 

Similaire à Arquitetura Ágil, uma abordagem disciplinada

Ágil e Arquitetura-Os Opostos se Atraem
Ágil e Arquitetura-Os Opostos se AtraemÁgil e Arquitetura-Os Opostos se Atraem
Ágil e Arquitetura-Os Opostos se AtraemCentus Consultoria
 
TDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura EmpresarialTDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura Empresarialtdc-globalcode
 
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptx
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptxDesenvolvimento e gerenciamento de projetos aula 2022-1.pptx
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptxAndersonSousa494049
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelAlan Braz
 
Sucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura AgileSucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura AgileSérgio Giraldo
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...Emmanuel Neri
 
Desmitificando o ágil e o scrum
Desmitificando o ágil e o scrumDesmitificando o ágil e o scrum
Desmitificando o ágil e o scrumScumpb
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4André Vidal
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Agile Think® Share
 
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoClaudia Hofart Guzzo
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Elaine Cecília Gatto
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCPFrank Coelho
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcpFrank Coelho
 
Antecipando o sucesso de uma arquitetura de software emergente em times ágeis
Antecipando o sucesso de uma arquitetura de software emergente em times ágeisAntecipando o sucesso de uma arquitetura de software emergente em times ágeis
Antecipando o sucesso de uma arquitetura de software emergente em times ágeisSérgio Giraldo
 
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...Anderson Garcia
 

Similaire à Arquitetura Ágil, uma abordagem disciplinada (20)

Ágil e Arquitetura-Os Opostos se Atraem
Ágil e Arquitetura-Os Opostos se AtraemÁgil e Arquitetura-Os Opostos se Atraem
Ágil e Arquitetura-Os Opostos se Atraem
 
TDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura EmpresarialTDC2016SP - Trilha Arquitetura Empresarial
TDC2016SP - Trilha Arquitetura Empresarial
 
Agil escalavel safe
Agil escalavel   safeAgil escalavel   safe
Agil escalavel safe
 
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptx
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptxDesenvolvimento e gerenciamento de projetos aula 2022-1.pptx
Desenvolvimento e gerenciamento de projetos aula 2022-1.pptx
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiável
 
Sucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura AgileSucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura Agile
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
 
Treinamento em gestão de projetos
Treinamento em gestão de projetosTreinamento em gestão de projetos
Treinamento em gestão de projetos
 
Desmitificando o ágil e o scrum
Desmitificando o ágil e o scrumDesmitificando o ágil e o scrum
Desmitificando o ágil e o scrum
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
 
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
 
Palestra scrum
Palestra scrumPalestra scrum
Palestra scrum
 
PLM Summit 2019 - A05 - Matheus Terra
PLM Summit 2019 - A05 - Matheus TerraPLM Summit 2019 - A05 - Matheus Terra
PLM Summit 2019 - A05 - Matheus Terra
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
TOGAF em Ação
TOGAF em AçãoTOGAF em Ação
TOGAF em Ação
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
 
Antecipando o sucesso de uma arquitetura de software emergente em times ágeis
Antecipando o sucesso de uma arquitetura de software emergente em times ágeisAntecipando o sucesso de uma arquitetura de software emergente em times ágeis
Antecipando o sucesso de uma arquitetura de software emergente em times ágeis
 
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...
Como a Pré-Construção influencia o desempenho dos Data Centers. Por Anderson ...
 

Plus de Adriano Tavares

Palestra Transformação Ágil - CBGPL 2019
Palestra Transformação Ágil - CBGPL 2019Palestra Transformação Ágil - CBGPL 2019
Palestra Transformação Ágil - CBGPL 2019Adriano Tavares
 
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de softwareTDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de softwareAdriano Tavares
 
Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Adriano Tavares
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começarAdriano Tavares
 
A importância da arquitetura de software
A importância da arquitetura de softwareA importância da arquitetura de software
A importância da arquitetura de softwareAdriano Tavares
 
Repensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeRepensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeAdriano Tavares
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Adriano Tavares
 
Modelagem de dados e objetos
Modelagem de dados e objetosModelagem de dados e objetos
Modelagem de dados e objetosAdriano Tavares
 
Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Adriano Tavares
 

Plus de Adriano Tavares (12)

Palestra Transformação Ágil - CBGPL 2019
Palestra Transformação Ágil - CBGPL 2019Palestra Transformação Ágil - CBGPL 2019
Palestra Transformação Ágil - CBGPL 2019
 
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de softwareTDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
TDC2018 - Adriano Tavares - Design Thinking para arquitetos de software
 
Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez! Transformação ágil em uma grande empresa, um post-it por vez!
Transformação ágil em uma grande empresa, um post-it por vez!
 
DevOps, por onde começar
DevOps, por onde começarDevOps, por onde começar
DevOps, por onde começar
 
A importância da arquitetura de software
A importância da arquitetura de softwareA importância da arquitetura de software
A importância da arquitetura de software
 
Repensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeRepensando padrões e boas práticas java ee
Repensando padrões e boas práticas java ee
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
 
Pangea 21-07-2009
Pangea 21-07-2009Pangea 21-07-2009
Pangea 21-07-2009
 
JPA - MGJUG
JPA - MGJUGJPA - MGJUG
JPA - MGJUG
 
Modelagem de dados e objetos
Modelagem de dados e objetosModelagem de dados e objetos
Modelagem de dados e objetos
 
Gestao agil de projetos
Gestao agil de projetosGestao agil de projetos
Gestao agil de projetos
 
Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1
 

Arquitetura Ágil, uma abordagem disciplinada

  • 1. Arquitetura  Ágil,     uma  abordagem  disciplinada   Adriano  Tavares   adriano.tavares@gmail.com   BH,  19  de  outubro,  2013  
  • 2. Adriano  Tavares     SoKware  Architect,  Agile  Coach   adriano.tavares@gmail.com   hGp://adrianotavares.com   @adrianotavares   hGp://br.linkedin.com/in/adrianotavares         DAD  Black  Belt/CerCfied  Instructor   hGp://DisciplinedAgileConsorCum.org  
  • 3. MoCvação   ü Apresentar  uma  abordagem  disciplinada  de   como  o  responsável  pela  arquitetura  pode   atuar  no  ciclo  de  vida  de  desenvolvimento  ágil.    
  • 4. Publico  alvo   ü  Desenvolvedores,  líderes  técnicos  e  arquitetos  envolvidos   em  aCvidades  de  design  de  soluções  técnicas  de  soKware  e   miCgação  de  riscos  técnicos  ao  longo  de  um  projeto  ágil   desde  seu  início  até  a  sua  colocação  em  produção.  
  • 5. ©  ScoG  Ambler  +  Associates   5  
  • 6. 5  Mitos  comuns  que  cercam  a   Arquitetura  Ágil   1.  Agilistas  não  “fazem  arquitetura”   2.  Agilistas  iniciam  direto  na  codificação   3.  Agilistas  não  seguem  estratégias  de   arquitetura  corporaCva   4.  Agilistas  não  modelam   5.  Agilistas  não  documentam  
  • 7. 5  Realidades  sobre  Arquitetura  Ágil   1.  Arquitetura  é  tão  importante  que  agilistas  a   endereçam  ao  longo  de  todo  o  ciclo  de  vida   2.  Agilistas  disciplinados  investem  em  visualização  inicial     (Just  enough  up  front)   3.  Agilistas  disciplinados  trabalham  em  estreita   colaboração  com  profissionais  corporaCvos   4.  Agilistas  disciplinados  modelam  explicitamente    de   uma  forma  leve  ao  longo  de  todo  o  ciclo  de  vida   5.  Agilistas  disciplinados  documentam  entregáveis   conCnuamente  
  • 8. ACvidades  na  Iniciação  de  Projetos   EsCmaCva  Inicial   Modelagem  Inicial  dos  Requisitos   Modelagem  Inicial  da  Arquitetura   JusCficar  o  Projeto   Cronograma  Alto-­‐nível  do  release     65%   70%   75%   80%   85%   90%   95%   Source:  AmbysoK  2009  Agile  Project  IniCaCon  Survey  
  • 9.
  • 10. Contextos  para  adaptação  da  agilidade  em  escala   Agility   at   Scale   Disciplined   Agile   Delivery   Agile   Disciplined  agile  delivery  com  um  ou  mais  fatores  de  complexidade:   §  Times  grandes  (>30)   §  Times  geograficamente  distribuídos   §  Compliance  regulatórios  (PM,  EA,  SP)   §  Complexidade  de  domínio  ou  técnica   §  Questões  culturais/organizacionais   §  Distribuição  organizacional   •  •  •  •  •  Foco  na  entrega  (Delivery)   Ciclo  de  vida  dirigido  por  Risco-­‐Valor   Auto-­‐organização  com  governança  apropriada  (>15<30)   Dirigido  por  metas   Aderência  CorporaCva   •  •  •  •  •  Foco  na  construção   Ciclo  de  vida  dirigido  por  valor   Times  alto-­‐organizados  (<15)   PrescriCvo  (Scrum,  XP,  AM)   Aderência  a  Times  de  projeto   The Agile Scaling Model (ASM), é um framework conceitual desenvolvido pela IBM  
  • 11. Disciplined  Agile  Delivery  (DAD)   Disciplined  Agile  Delivery  (DAD)  é  um   framework  de  processo  de  decisão     As  principais  caracterísCcas  de  DAD:   ü Abordagem  ágil  hibrida;   ü Pessoas-­‐primeiro;   ü Ciclo  de  vida  de  entrega  completo;   ü Dirigido  por  metas;   ü Focado  em  soluções  de  TI;   ü Ciclo  de  vida  Risco-­‐valor;   ü Aderência  CorporaCva;   ü Escalável.  
  • 12. DAD  é  uma  abordagem  ágil  híbrida   DevOps   Outside  In  Dev.   OpenUP   Scrum   Lean   XP   Agile  Data   Agile  Modeling   Kanban   …  e  mais   DAD  uCliza  estratégias  comprovadas  de  várias  fontes   fornecendo  uma  estrutura  de  decisão  para  orientar  a  sua  adoção  e     customização  de  uma  maneira  dirigida  pelo  contexto.  
  • 14. Ciclo  de  vida  DAD  básico  
  • 15. Quem  é  o  responsável  pela   arquitetura  em  Cmes  ágeis?  
  • 16. O  Que  faz  o  Architecture  Owner?   ü  Orienta  a  criação  e  evolução  da  arquitetura  da  solução;   ü  Lidera  o  esforço  inicial  de  visualização  da  arquitetura;   ü  Lidera  a  equipe  nas  questões  e  práCcas  de  arquitetura;   ü  Entende  as  diretrizes  e  os  padrões  de  arquitetura  da  sua   organização  e  garante  que  a  equipe  os  segue;   ü  Garante  que  o  sistema  vai  funcionar,  incenCvando  o   desenho  e  refatoração  apropriado;   ü  Garante  que  o  sistema  seja  integrado  e  testado   frequentemente;   ü  Tem  a  palavra  final  sobre  as  decisões  técnicas,  mas  não   as  dita.  
  • 17. Times  pequenos  (<15)   •  Architecture  Owner  geralmente  é   assumido  pelo  Team  Lead.   •  Não  há  necessidade  de  atribuir  o   papel  formalmente.   •  Baixa  necessidade  de  trabalhar  o   escopo  e  a  arquitetura  na  iniciação.   •  Baixa  necessidade  de  automação  de   ferramentas.  
  • 18. Times  Médios  (>15<30)     •  Necessidade  de  maior   esforço  de  planejamento   durante  a  iniciação.   •  Reuniões  Diárias  com  cada   Cme  e  reuniões  de   coordenação  dos  Cmes.   •  Necessidade  de  apoio.  
  • 19. Times  Grandes  (>30)   Sugestões  de  organização   de  sub-­‐Cmes:     •  Features     Time  que  trabalha  em   uma  feature  fim-­‐a-­‐fim.   Necessidade  de:     •  Coordenação  de   gerenciamento  de   projetos.   •  Coordenação  de   requisitos.   •  Coordenação  da   Arquitetura.   •  Componentes:     Time  focado  em   compoenentes   específicos.   •  Integração     Time  focado  na   integração  das  features   e  componentes.    
  • 20. Arquitetura  Ágil  em  Times  Grandes   •    •  •  Times  grandes  são  sinônimo  de  maior  complexidade  de  domínio,  complexidade   técnica  ou  desafios  culturais   Iniciação:   –  InvesCr  um  pouco  mais  de  tempo  nos  requisitos  iniciais;   –  Abordagem  “API  First”  para  a  arquitetura  onde  você  define  a  interface  para   componentes  no  início  do  projeto;   –  É  provável  que  haja  um  pouco  mais  de  especificação  inicial.   Construção:   –  Product  Owners  terão  de  coordenar  as  dependências  de  requisitos;   –  Architecture  Owners  terão  de  coordenar  as  dependências  técnicas;   –  TDD  pode  precisar  ser  melhorado  com  testes  independentes  em  paralelo.  
  • 21.
  • 22. DAD  é  dirigido  por  metas  
  • 23. Agilistas  Disciplinados  adotam  uma   abordagem  dirigida  por  metas   Meta         IdenCficar  a   estratégia  técnica   inicial   *   Questões   Nível  de  detalhe   Tipos  de  visões   Estratégia  de  Modelagem   Estratégia  de  Entrega     *   Opção   Opção  Default   Vantagens   Desvantagens   Considerações   Informal  Modeling  Sessions   Formal  Modeling  Sessions   Single  Candidate  Architecture   MulCple  Candidate  Architectures  
  • 24. Meta:  IdenCficar  a  estratégia  técnica   inicial  
  • 25. Meta:  Provar  a  Arquitetura  o  mais   cedo  possível    
  • 26. Arquitetura  ao  longo  da  construção   Architecture  owner  facilita  as   decisões  arquiteturais     ao  longo  da  construção   Visão  Arquitetural   guia  os  esforços  de   desenvolvimento   MiCgação  de  riscos  mais   cedo  provando  que  a     arquitetura  funciona   DAS  e  modelos     são  atualizados   quando  necessário   Architecture  spikes   para  explorar  as   questões  técnicas  
  • 27. Conclusão   ü Formalize  o  papel  de  Architecture  Owner  quando  seu   Cme  crescer;   ü Adote  uma  abordagem  de  arquitetura  colaboraCva;   ü Adote  metas  para  guiar  o  trabalho  de  arquitetura;   •  IdenCficar  a  estratégia  inicial   •  Provar  a  arquitetura  o  mais  cedo  possível   ü Emergent  Design  é  uma  abordagem  consistente  para   Arquitetura  Ágil  Disciplinada.  
  • 28. Disciplined  Agile  CerCficaCon   DisciplinedAgileConsorCum.org   Disciplined  Agile  Yellow  Belt     –  IndicaCon  that  the  person  is  new  to  disciplined  agile  but  eager  to   learn   –  Beginner  cerCficaCon   Disciplined  Agile  Green  Belt   –  IndicaCon  that  the  person  is  striving  to  be  a  professional   –  PotenCal  to  be  a  junior  coach   –  Intermediate  cerCficaCon   Disciplined  Agile  Black  Belt   –  IndicaCon  that  the  person  is  an  expert   –  OKen  a  senior  coach,  instructor,  or  agile  transformaCon  lead   –  Expert  cerCficaCon  
  • 29. CerCfied  Disciplined  Agile  Courses   DisciplinedAgileConsorCum.org   Introductory:   DA  101:  The  Disciplined  Agile  Delivery  Experience  Workshop  (21  PDUs)   DA  103:  Disciplined  Agile  Delivery  for  ExecuCves  (7  PDUs)   DA  104:  IntroducCon  to  Disciplined  Agile  Delivery  (14  PDUs)     Advanced:   DA  203:  Agile  Architecture  with  Discipline  (7  PDUs)   DA  210:  Disciplined  Agile  Delivery  for  Experienced  Agile  Professionals  (7  PDUs)   DA  301:  Advanced  Disciplined  Agile  Delivery  (7  PDUs)   DA  305:  Disciplined  Agile  Delivery  +  Advisor  Coaches  Clinic  (21  PDUs)