SlideShare uma empresa Scribd logo
1 de 11
9º FireBird Developer Day




        Automatizando a Criação e
     Atualização do seu Banco de Dados




www.FirebirdDevelopersDay.com.br   1   © 2012 – Araújo @cengenharia
Quem?
 José Araújo
 7 Anos de Experiência
 Fortes Informática (Fortes Report)
 Engenharia de Software e Afins
 Delphi Developer Certification
 FireBird 1.5 – 2.1
 Delphi Conference 2011 (CI)
 Artigo Active Delphi
 Java - Android


www.FirebirdDevelopersDay.com.br   2   © 2012 – Araújo @cengenharia
Processos manuais
   ●
       Sistemas com designer evolutivo;
       ●
         Problemas em gerenciar as versões do
          banco de dados;
       ●
         Tabelas, Procedures, Triggers...
   ●
       Manutenção do banco de dados é uma
       tarefa crítica;




www.FirebirdDevelopersDay.com.br   3   © 2012 – Araújo @cengenharia
Versionamento
   ●
     Como era antes;
     ●
       Eita...
   ●
     Como é hoje;
     ●
       Relativamente mais simples;
     ●
       Ferramentas: SVN, GIT...
   ●
       Ferramentas são subutilizadas;
       ●
         Somente como repositório(Backup);
       ●
         Auditoria;
       ●
         Monitorar conflitos;

www.FirebirdDevelopersDay.com.br   4   © 2012 – Araújo @cengenharia
Versionamento...
   ●
       Realidade com o banco de dados;
       ●
         Levado menos a sério;
       ●
         Somente UM arquivo SQL;
       ●
         IDEs para bancos;
       ●
         Scripts: Create & Updates;
       ●
         Como utilizo?
         ●
           Manualmente;
         ●
           Copia, Cola e Run...
         ●
           Deu erro?


www.FirebirdDevelopersDay.com.br   5   © 2012 – Araújo @cengenharia
Versionamento...
   ●
       Perguntas importantes;
       ●
         Qual a versão atual do banco de
         dados?
       ●
         Essa versão é compatível com o
         sistema?
       ●
         É possível recuperar uma determinada
         versão do banco de dados com a
         versão do sistema?

   ●
       No sistema;

www.FirebirdDevelopersDay.com.br   6   © 2012 – Araújo @cengenharia
O “Ideal”
   ●
     Refletir a estrutura do banco de dados
     de acordo com a estrutura das
     entidades do sistema(Objetos);
   ●
     Legado;
   ●
     DBA;




www.FirebirdDevelopersDay.com.br   7   © 2012 – Araújo @cengenharia
Integração Contínua
   ●
     Metodogias ágeis;
   ●
     Continuous Integration(CI);
   ●
     Complexidade dos softwares;
   ●
     Quantidade de pessoas no mesmo
     projeto;
   ●
     Automatizar os processos manuais
     repetitivos;




www.FirebirdDevelopersDay.com.br   8   © 2012 – Araújo @cengenharia
Integração Contínua...
   ●
       FeedBack;
        ●
          “Força” uma boa cultura da equipe;
        ●
          Estado do projeto em vários
          momentos;
        ●
          Redução dos riscos;
        ●
          Confiaça coletiva;




www.FirebirdDevelopersDay.com.br   9   © 2012 – Araújo @cengenharia
Metodologias Ágeis
   ●
       Automatizar;
        ●
          Criação;
        ●
          Atualização;
        ●
          Verificação da estrutura;

   ●
     Testes Automatizados;
   ●
     Integração Contínua(CI);




www.FirebirdDevelopersDay.com.br   10   © 2012 – Araújo @cengenharia
Obrigado

 E-mail: joseafilho@gmail.com
 Twitter: @cengenharia
 Blog: centraldaengenharia.wordpress.com



      “Tudo é uma questão de engenharia.”



www.FirebirdDevelopersDay.com.br   11   © 2012 – Araújo @cengenharia

Mais conteúdo relacionado

Destaque

Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-Thread
Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-ThreadDelphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-Thread
Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-ThreadMario Guedes
 
Delphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoDelphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoJosé Araújo
 
Fortes Papo Developer
Fortes Papo DeveloperFortes Papo Developer
Fortes Papo DeveloperJosé Araújo
 
Delphi Conference 2011 - Integração Contínua
Delphi Conference 2011 - Integração ContínuaDelphi Conference 2011 - Integração Contínua
Delphi Conference 2011 - Integração ContínuaJosé Araújo
 
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIDelphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIMario Guedes
 
Curso de Delphi - Banco de Dados
Curso de Delphi - Banco de DadosCurso de Delphi - Banco de Dados
Curso de Delphi - Banco de DadosJosé Araújo
 
Gnostice Suporte completo a PDF e Office - Embarcadero Conference 2015
Gnostice Suporte completo a PDF e Office �- Embarcadero Conference 2015Gnostice Suporte completo a PDF e Office �- Embarcadero Conference 2015
Gnostice Suporte completo a PDF e Office - Embarcadero Conference 2015Vic Fernandes
 
Delphi Conference 2011 - Desmistificando as Expressões Regulares
Delphi Conference 2011 - Desmistificando as Expressões RegularesDelphi Conference 2011 - Desmistificando as Expressões Regulares
Delphi Conference 2011 - Desmistificando as Expressões RegularesMario Guedes
 
Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)Ryan Padilha
 
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e FlexívelDesign Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e FlexívelRyan Padilha
 
Programação orientada a objetos em delphi
Programação orientada a objetos em delphiProgramação orientada a objetos em delphi
Programação orientada a objetos em delphiHelder Lopes
 
Curso De Programação Em DelPhi
Curso De Programação Em DelPhiCurso De Programação Em DelPhi
Curso De Programação Em DelPhiMikeNandes
 

Destaque (16)

Apresentação fb
Apresentação fbApresentação fb
Apresentação fb
 
Firebird
FirebirdFirebird
Firebird
 
Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-Thread
Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-ThreadDelphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-Thread
Delphi Conference 2012 - Controlando a Concorrência em Aplicações Multi-Thread
 
Delphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no CódigoDelphi Conference 2012 - Qualidade no Código
Delphi Conference 2012 - Qualidade no Código
 
Fortes Papo Developer
Fortes Papo DeveloperFortes Papo Developer
Fortes Papo Developer
 
Delphi Conference 2011 - Integração Contínua
Delphi Conference 2011 - Integração ContínuaDelphi Conference 2011 - Integração Contínua
Delphi Conference 2011 - Integração Contínua
 
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIDelphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
 
Curso de Delphi - Banco de Dados
Curso de Delphi - Banco de DadosCurso de Delphi - Banco de Dados
Curso de Delphi - Banco de Dados
 
Gnostice Suporte completo a PDF e Office - Embarcadero Conference 2015
Gnostice Suporte completo a PDF e Office �- Embarcadero Conference 2015Gnostice Suporte completo a PDF e Office �- Embarcadero Conference 2015
Gnostice Suporte completo a PDF e Office - Embarcadero Conference 2015
 
Delphi Conference 2011 - Desmistificando as Expressões Regulares
Delphi Conference 2011 - Desmistificando as Expressões RegularesDelphi Conference 2011 - Desmistificando as Expressões Regulares
Delphi Conference 2011 - Desmistificando as Expressões Regulares
 
Linguagem Delphi-Introdução
Linguagem Delphi-IntroduçãoLinguagem Delphi-Introdução
Linguagem Delphi-Introdução
 
Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)Orientação a Objetos no Delphi - Controle de Estoque (III)
Orientação a Objetos no Delphi - Controle de Estoque (III)
 
Oo delphi
Oo delphiOo delphi
Oo delphi
 
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e FlexívelDesign Pattern MVC – Arquitetura de Software Coesa e Flexível
Design Pattern MVC – Arquitetura de Software Coesa e Flexível
 
Programação orientada a objetos em delphi
Programação orientada a objetos em delphiProgramação orientada a objetos em delphi
Programação orientada a objetos em delphi
 
Curso De Programação Em DelPhi
Curso De Programação Em DelPhiCurso De Programação Em DelPhi
Curso De Programação Em DelPhi
 

Semelhante a Automatizando banco dados FireBird

Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPPablo Dall'Oglio
 
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoZend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoFlávio Lisboa
 
Performance e otimização no wordpress
Performance e otimização no wordpressPerformance e otimização no wordpress
Performance e otimização no wordpressDaniel Paz
 
Apresentação sie ir-2014
Apresentação sie ir-2014Apresentação sie ir-2014
Apresentação sie ir-2014Renan Moreira
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Flávio Lisboa
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkGiuseppe Lopes
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformAndré Paulovich
 
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...Thiago Dieb
 
LPUG #10 agenda e community updates - 2020-09-16
LPUG #10   agenda e community updates - 2020-09-16LPUG #10   agenda e community updates - 2020-09-16
LPUG #10 agenda e community updates - 2020-09-16Fernando Fernández
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento webArlindo Santos
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwarePablo Dall'Oglio
 
Ferramentas de planejamento
Ferramentas de planejamentoFerramentas de planejamento
Ferramentas de planejamentoOtavio Siqueira
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
 

Semelhante a Automatizando banco dados FireBird (20)

Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
Design for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHPDesign for change: Fatores que influenciam na longevidade de um Software PHP
Design for change: Fatores que influenciam na longevidade de um Software PHP
 
Zend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutençãoZend Framework: Reuso e extensão de componentes para fácil manutenção
Zend Framework: Reuso e extensão de componentes para fácil manutenção
 
Design Patterns com PHP
Design Patterns com PHPDesign Patterns com PHP
Design Patterns com PHP
 
Performance e otimização no wordpress
Performance e otimização no wordpressPerformance e otimização no wordpress
Performance e otimização no wordpress
 
Apresentação sie ir-2014
Apresentação sie ir-2014Apresentação sie ir-2014
Apresentação sie ir-2014
 
Django
DjangoDjango
Django
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do framework
 
PHP: Como não programar em POG
PHP: Como não programar em POGPHP: Como não programar em POG
PHP: Como não programar em POG
 
Pangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud PlatformPangea - Plataforma digital com Google Cloud Platform
Pangea - Plataforma digital com Google Cloud Platform
 
Django - Muito além do básico
Django - Muito além do básicoDjango - Muito além do básico
Django - Muito além do básico
 
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...
Drupalcamp SP 2015 - Como uma Empresa Pública pode construir seu legado utili...
 
LPUG #10 agenda e community updates - 2020-09-16
LPUG #10   agenda e community updates - 2020-09-16LPUG #10   agenda e community updates - 2020-09-16
LPUG #10 agenda e community updates - 2020-09-16
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento web
 
Fatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um SoftwareFatores que influenciam na longevidade de um Software
Fatores que influenciam na longevidade de um Software
 
Ferramentas de planejamento
Ferramentas de planejamentoFerramentas de planejamento
Ferramentas de planejamento
 
Framework JGenesis
Framework JGenesisFramework JGenesis
Framework JGenesis
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
 
Curso de Grails
Curso de GrailsCurso de Grails
Curso de Grails
 

Mais de José Araújo

Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalJosé Araújo
 
Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3José Araújo
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2José Araújo
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoJosé Araújo
 
Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7José Araújo
 
XPCE - Qualidade no Código
XPCE - Qualidade no CódigoXPCE - Qualidade no Código
XPCE - Qualidade no CódigoJosé Araújo
 

Mais de José Araújo (6)

Curso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem PascalCurso de Delphi - Linguagem Pascal
Curso de Delphi - Linguagem Pascal
 
Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3Curso de Delphi - Lógica de Programação 3
Curso de Delphi - Lógica de Programação 3
 
Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2Curso de Delphi - Lógica de Programação 2
Curso de Delphi - Lógica de Programação 2
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de Programacao
 
Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7Migrando 4 milhões de linhas de Delphi 7 para XE7
Migrando 4 milhões de linhas de Delphi 7 para XE7
 
XPCE - Qualidade no Código
XPCE - Qualidade no CódigoXPCE - Qualidade no Código
XPCE - Qualidade no Código
 

Automatizando banco dados FireBird

  • 1. 9º FireBird Developer Day Automatizando a Criação e Atualização do seu Banco de Dados www.FirebirdDevelopersDay.com.br 1 © 2012 – Araújo @cengenharia
  • 2. Quem? José Araújo 7 Anos de Experiência Fortes Informática (Fortes Report) Engenharia de Software e Afins Delphi Developer Certification FireBird 1.5 – 2.1 Delphi Conference 2011 (CI) Artigo Active Delphi Java - Android www.FirebirdDevelopersDay.com.br 2 © 2012 – Araújo @cengenharia
  • 3. Processos manuais ● Sistemas com designer evolutivo; ● Problemas em gerenciar as versões do banco de dados; ● Tabelas, Procedures, Triggers... ● Manutenção do banco de dados é uma tarefa crítica; www.FirebirdDevelopersDay.com.br 3 © 2012 – Araújo @cengenharia
  • 4. Versionamento ● Como era antes; ● Eita... ● Como é hoje; ● Relativamente mais simples; ● Ferramentas: SVN, GIT... ● Ferramentas são subutilizadas; ● Somente como repositório(Backup); ● Auditoria; ● Monitorar conflitos; www.FirebirdDevelopersDay.com.br 4 © 2012 – Araújo @cengenharia
  • 5. Versionamento... ● Realidade com o banco de dados; ● Levado menos a sério; ● Somente UM arquivo SQL; ● IDEs para bancos; ● Scripts: Create & Updates; ● Como utilizo? ● Manualmente; ● Copia, Cola e Run... ● Deu erro? www.FirebirdDevelopersDay.com.br 5 © 2012 – Araújo @cengenharia
  • 6. Versionamento... ● Perguntas importantes; ● Qual a versão atual do banco de dados? ● Essa versão é compatível com o sistema? ● É possível recuperar uma determinada versão do banco de dados com a versão do sistema? ● No sistema; www.FirebirdDevelopersDay.com.br 6 © 2012 – Araújo @cengenharia
  • 7. O “Ideal” ● Refletir a estrutura do banco de dados de acordo com a estrutura das entidades do sistema(Objetos); ● Legado; ● DBA; www.FirebirdDevelopersDay.com.br 7 © 2012 – Araújo @cengenharia
  • 8. Integração Contínua ● Metodogias ágeis; ● Continuous Integration(CI); ● Complexidade dos softwares; ● Quantidade de pessoas no mesmo projeto; ● Automatizar os processos manuais repetitivos; www.FirebirdDevelopersDay.com.br 8 © 2012 – Araújo @cengenharia
  • 9. Integração Contínua... ● FeedBack; ● “Força” uma boa cultura da equipe; ● Estado do projeto em vários momentos; ● Redução dos riscos; ● Confiaça coletiva; www.FirebirdDevelopersDay.com.br 9 © 2012 – Araújo @cengenharia
  • 10. Metodologias Ágeis ● Automatizar; ● Criação; ● Atualização; ● Verificação da estrutura; ● Testes Automatizados; ● Integração Contínua(CI); www.FirebirdDevelopersDay.com.br 10 © 2012 – Araújo @cengenharia
  • 11. Obrigado E-mail: joseafilho@gmail.com Twitter: @cengenharia Blog: centraldaengenharia.wordpress.com “Tudo é uma questão de engenharia.” www.FirebirdDevelopersDay.com.br 11 © 2012 – Araújo @cengenharia