SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
Forças verticais
Forças horizontais
Nível de tomada de
decisão
Gestão de
Indústria
global
Empresa Sistema Aplicação
Funcionalidade
Desempenho
Complexidade
Mudanças
Recursos deTI
Transferência de
tecnologia
Nível de tomada de
decisão
Gestão de
Indústria
global
Empresa Sistema Aplicação
Funcionalidade
Desempenho
Complexidade
Mudanças
Recursos deTI
Transferência de
tecnologia
Programador
Arquiteto
Gerente de
projetos
CIO
Nome: Como os praticantes (programadores,
arquitetos de software, gerentes de projeto)
devem chamar esse antipadrão (pejorativo)
Problema antipadrão: Qual é a solução recorrente que provoca as
consequências negativas
Solução refatorada: Como evitar, minimizar ou refatorar o
problema antipadrão
Lava flow
BROWN, W. H. et al. AntiPatterns: Refactoring software,
architectures, and projects in crisis. NewYork, NY: JohnWiley
& Sons, 1998. p. 309.
Antipatterns: http://www.antipatterns.com
Anti-pattern: http://en.wikipedia.org/wiki/Anti-pattern

Contenu connexe

Similaire à Antipadroes

Application Lifecycle Management - Campus Party Brasil 2009
Application Lifecycle Management -  Campus Party  Brasil 2009Application Lifecycle Management -  Campus Party  Brasil 2009
Application Lifecycle Management - Campus Party Brasil 2009Ramon Durães
 
Campus Party Brasil 2010 - ALM - Application Lifecycle Management
Campus Party Brasil 2010 - ALM - Application Lifecycle ManagementCampus Party Brasil 2010 - ALM - Application Lifecycle Management
Campus Party Brasil 2010 - ALM - Application Lifecycle ManagementRamon Durães
 
Introdução às metodologias ágeis
Introdução às metodologias ágeisIntrodução às metodologias ágeis
Introdução às metodologias ágeisComunidade Tá safo!
 
Principais Práticas das Abordagens Ágeis
Principais Práticas das Abordagens ÁgeisPrincipais Práticas das Abordagens Ágeis
Principais Práticas das Abordagens ÁgeisLourdilene Souza
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro LocawebFabio Akita
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb CuritibaFabio Akita
 
Introdução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de softwareIntrodução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de softwareJaime Schettini
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketBoris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketAgile Trends
 
Falhas em Projetos e Mudanças em Rotinas Organizacionais
Falhas em Projetos e Mudanças em Rotinas OrganizacionaisFalhas em Projetos e Mudanças em Rotinas Organizacionais
Falhas em Projetos e Mudanças em Rotinas OrganizacionaisFelipe Pereira
 
Kyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareKyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareFábio Nogueira de Lucena
 
Falando de Testes de Desempenho - por Evandro Grezeli
Falando de Testes de Desempenho - por Evandro GrezeliFalando de Testes de Desempenho - por Evandro Grezeli
Falando de Testes de Desempenho - por Evandro GrezeliJoao Galdino Mello de Souza
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XPWildtech
 
Cmg falando de testes de desempenho
Cmg falando de testes de desempenhoCmg falando de testes de desempenho
Cmg falando de testes de desempenhoEvandro Grezeli
 
Microsoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão GeralMicrosoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão GeralAlan Carlos
 

Similaire à Antipadroes (20)

Application Lifecycle Management - Campus Party Brasil 2009
Application Lifecycle Management -  Campus Party  Brasil 2009Application Lifecycle Management -  Campus Party  Brasil 2009
Application Lifecycle Management - Campus Party Brasil 2009
 
Campus Party Brasil 2010 - ALM - Application Lifecycle Management
Campus Party Brasil 2010 - ALM - Application Lifecycle ManagementCampus Party Brasil 2010 - ALM - Application Lifecycle Management
Campus Party Brasil 2010 - ALM - Application Lifecycle Management
 
Introdução às metodologias ágeis
Introdução às metodologias ágeisIntrodução às metodologias ágeis
Introdução às metodologias ágeis
 
Qualidade e Testes de Software
Qualidade e Testes de SoftwareQualidade e Testes de Software
Qualidade e Testes de Software
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 
Principais Práticas das Abordagens Ágeis
Principais Práticas das Abordagens ÁgeisPrincipais Práticas das Abordagens Ágeis
Principais Práticas das Abordagens Ágeis
 
Encontro Locaweb
Encontro  LocawebEncontro  Locaweb
Encontro Locaweb
 
Encontro Locaweb Curitiba
Encontro  Locaweb CuritibaEncontro  Locaweb Curitiba
Encontro Locaweb Curitiba
 
Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01Métodos Ágeis - Aula 01
Métodos Ágeis - Aula 01
 
DevOps
DevOpsDevOps
DevOps
 
Introdução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de softwareIntrodução às metodologias ágeis de desenvolvimento de software
Introdução às metodologias ágeis de desenvolvimento de software
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketBoris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
 
Falhas em Projetos e Mudanças em Rotinas Organizacionais
Falhas em Projetos e Mudanças em Rotinas OrganizacionaisFalhas em Projetos e Mudanças em Rotinas Organizacionais
Falhas em Projetos e Mudanças em Rotinas Organizacionais
 
Kyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareKyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de software
 
Falando de Testes de Desempenho - por Evandro Grezeli
Falando de Testes de Desempenho - por Evandro GrezeliFalando de Testes de Desempenho - por Evandro Grezeli
Falando de Testes de Desempenho - por Evandro Grezeli
 
IPA Conhecendo XP
IPA Conhecendo XPIPA Conhecendo XP
IPA Conhecendo XP
 
Cmg falando de testes de desempenho
Cmg falando de testes de desempenhoCmg falando de testes de desempenho
Cmg falando de testes de desempenho
 
Microsoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão GeralMicrosoft - Application Lifecycle Management - Visão Geral
Microsoft - Application Lifecycle Management - Visão Geral
 
Programacao Extrema
Programacao ExtremaProgramacao Extrema
Programacao Extrema
 

Plus de Ivan Ricarte

Aula catalogo de refatoracoes
Aula   catalogo de refatoracoesAula   catalogo de refatoracoes
Aula catalogo de refatoracoesIvan Ricarte
 
Testes de unidade em Java: JUnit
Testes de unidade em Java: JUnitTestes de unidade em Java: JUnit
Testes de unidade em Java: JUnitIvan Ricarte
 
Refatoração: Code smells
Refatoração: Code smellsRefatoração: Code smells
Refatoração: Code smellsIvan Ricarte
 
R - Software Estatistico
R - Software EstatisticoR - Software Estatistico
R - Software EstatisticoIvan Ricarte
 
Aula revisão de java e junit
Aula   revisão de java e junitAula   revisão de java e junit
Aula revisão de java e junitIvan Ricarte
 
C++: biblioteca padrão de templates - Parte 1
C++: biblioteca padrão de templates - Parte 1C++: biblioteca padrão de templates - Parte 1
C++: biblioteca padrão de templates - Parte 1Ivan Ricarte
 
Membros de classes C++
Membros de classes C++Membros de classes C++
Membros de classes C++Ivan Ricarte
 
Princípios da organização de código fonte C++
Princípios da organização de código fonte C++Princípios da organização de código fonte C++
Princípios da organização de código fonte C++Ivan Ricarte
 
Problemas no desenvolvimento do software
Problemas no desenvolvimento do softwareProblemas no desenvolvimento do software
Problemas no desenvolvimento do softwareIvan Ricarte
 
Aula 01 - As linguagens do software (2015)
Aula 01 - As linguagens do software (2015)Aula 01 - As linguagens do software (2015)
Aula 01 - As linguagens do software (2015)Ivan Ricarte
 
SI300 - Apoio a atividades práticas em C++ (01)
SI300 - Apoio a atividades práticas em C++ (01)SI300 - Apoio a atividades práticas em C++ (01)
SI300 - Apoio a atividades práticas em C++ (01)Ivan Ricarte
 
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúde
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúdeO Projeto Evid@SP - Disseminação de evidências a profissionais da saúde
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúdeIvan Ricarte
 
Um novo paradigma para o ensino de ponteiros frente à evolução de C++
Um novo paradigma para o ensino de ponteiros frente à evolução de C++Um novo paradigma para o ensino de ponteiros frente à evolução de C++
Um novo paradigma para o ensino de ponteiros frente à evolução de C++Ivan Ricarte
 
Pesquisa com métodos quantitativos
Pesquisa com métodos quantitativosPesquisa com métodos quantitativos
Pesquisa com métodos quantitativosIvan Ricarte
 
Programação orientada a objetos: herança
Programação orientada a objetos: herançaProgramação orientada a objetos: herança
Programação orientada a objetos: herançaIvan Ricarte
 
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?Ivan Ricarte
 

Plus de Ivan Ricarte (20)

Aula catalogo de refatoracoes
Aula   catalogo de refatoracoesAula   catalogo de refatoracoes
Aula catalogo de refatoracoes
 
Testes de unidade em Java: JUnit
Testes de unidade em Java: JUnitTestes de unidade em Java: JUnit
Testes de unidade em Java: JUnit
 
Refatoração: Code smells
Refatoração: Code smellsRefatoração: Code smells
Refatoração: Code smells
 
R - Software Estatistico
R - Software EstatisticoR - Software Estatistico
R - Software Estatistico
 
Aula revisão de java e junit
Aula   revisão de java e junitAula   revisão de java e junit
Aula revisão de java e junit
 
C++: biblioteca padrão de templates - Parte 1
C++: biblioteca padrão de templates - Parte 1C++: biblioteca padrão de templates - Parte 1
C++: biblioteca padrão de templates - Parte 1
 
c++ construtores
c++ construtoresc++ construtores
c++ construtores
 
C++ Sobrecarga
C++ SobrecargaC++ Sobrecarga
C++ Sobrecarga
 
Membros de classes C++
Membros de classes C++Membros de classes C++
Membros de classes C++
 
UML e POO
UML e POOUML e POO
UML e POO
 
Princípios da organização de código fonte C++
Princípios da organização de código fonte C++Princípios da organização de código fonte C++
Princípios da organização de código fonte C++
 
Problemas no desenvolvimento do software
Problemas no desenvolvimento do softwareProblemas no desenvolvimento do software
Problemas no desenvolvimento do software
 
Aula 01 - As linguagens do software (2015)
Aula 01 - As linguagens do software (2015)Aula 01 - As linguagens do software (2015)
Aula 01 - As linguagens do software (2015)
 
SI300 - Apoio a atividades práticas em C++ (01)
SI300 - Apoio a atividades práticas em C++ (01)SI300 - Apoio a atividades práticas em C++ (01)
SI300 - Apoio a atividades práticas em C++ (01)
 
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúde
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúdeO Projeto Evid@SP - Disseminação de evidências a profissionais da saúde
O Projeto Evid@SP - Disseminação de evidências a profissionais da saúde
 
Um novo paradigma para o ensino de ponteiros frente à evolução de C++
Um novo paradigma para o ensino de ponteiros frente à evolução de C++Um novo paradigma para o ensino de ponteiros frente à evolução de C++
Um novo paradigma para o ensino de ponteiros frente à evolução de C++
 
Pesquisa com métodos quantitativos
Pesquisa com métodos quantitativosPesquisa com métodos quantitativos
Pesquisa com métodos quantitativos
 
Programação orientada a objetos: herança
Programação orientada a objetos: herançaProgramação orientada a objetos: herança
Programação orientada a objetos: herança
 
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?
Prontuário eletrônico do paciente e padrões: por que, por quem, para quem?
 
Compiladores 7
Compiladores 7Compiladores 7
Compiladores 7
 

Antipadroes

  • 1.
  • 2.
  • 3.
  • 4.
  • 6.
  • 7.
  • 8.
  • 9. Nível de tomada de decisão Gestão de Indústria global Empresa Sistema Aplicação Funcionalidade Desempenho Complexidade Mudanças Recursos deTI Transferência de tecnologia
  • 10. Nível de tomada de decisão Gestão de Indústria global Empresa Sistema Aplicação Funcionalidade Desempenho Complexidade Mudanças Recursos deTI Transferência de tecnologia Programador Arquiteto Gerente de projetos CIO
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Nome: Como os praticantes (programadores, arquitetos de software, gerentes de projeto) devem chamar esse antipadrão (pejorativo) Problema antipadrão: Qual é a solução recorrente que provoca as consequências negativas Solução refatorada: Como evitar, minimizar ou refatorar o problema antipadrão
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46. BROWN, W. H. et al. AntiPatterns: Refactoring software, architectures, and projects in crisis. NewYork, NY: JohnWiley & Sons, 1998. p. 309. Antipatterns: http://www.antipatterns.com Anti-pattern: http://en.wikipedia.org/wiki/Anti-pattern