SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Globalcode – Open4education
Construindo uma solução ponta a
ponta com ferramentas open-sorce
Kleber Xavier
Instrutor e Arquiteto de Software
Bruno Souza
Evangelista Java e Open Source
Globalcode – Open4education
Agenda
Introdução
Problemas no gerenciamento do ciclo de vida de
um aplicativo
DEMO
Globalcode – Open4education
ALM – O que é?
Application Lifecycle Management: gerenciamento contínuo
do software;
Casamento da gestão de negócio com engenharia de
software;
Requer ferramentas integradas para gerenciar:
Requisitos;
Repositório de código;
Construção;
Arquitetura e codificação;
Testes e qualidade
Versões e componentes
Globalcode – Open4education
ALM – Por que?
Vantagens na adoção;
Rastreabilidade e dados post-hoc;
Gerenciamento integrado;
Simplificação nos processos;
Agilidade na construção do software;
Aumento da reusabilidade;
Diminuição dos riscos;
Globalcode – Open4education
ALM – ferramentas
Pilha ALM open-source que usamos:
Disciplina Software
Gerenciamento de Requisitos Redmine
Gestão de código / versionamento GIT
Construção e dependências Maven
Integração Contínua Jenkins
Repositório de componentes Nexus
Qualidade de código Sonar
Globalcode – Open4education
O planejamento inicial
Problema:
Organizar os requisitos em entregas
Atribuir os requisitos para seus desenvolvedores
Acompanhar a evolução do desenvolvimento
Solução:
Utilizar um gerenciador de issues, como o Redmine
Globalcode – Open4education
Processo – passo 1
requisitos e releases
stakeholder
Globalcode – Open4education
A organização do código fonte
Problema:
Compartilhar o código fonte entre os desenvolvedores
do projeto
Manter o histórico de alterações
Solução:
Utilizar um repositório de código fonte como o Git
Globalcode – Open4education
Processo – passo 2
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do histórico
Globalcode – Open4education
Gerenciamento das dependências
Problema:
Padronizar as bibliotecas de terceiros utilizadas pelo
projeto
Disponibilizar as bibliotecas utilizadas para a equipe de
desenvolvimento
Solução:
Utilizar uma ferramenta de build com suporte a
gerenciamento de dependências como o Maven
Utilizar um gerenciador de repositórios como o Nexus
Globalcode – Open4education
Processo – passo 3
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do histórico
build
dependências
Globalcode – Open4education
Integração entre módulos
Problema:
Garantir que alterações em um dos módulos não
quebrem o funcionamento de outros módulos
Notificar os responsáveis em caso de quebra, o mais
rapidamente possível
Solução:
Utilizar uma ferramenta de integração contínua como o
Jenkins
Globalcode – Open4education
Processo – parte 4
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do históricobuild
dependências
integração contínua
Globalcode – Open4education
Reutilização de módulos
Problema:
Disponibilizar os módulos desenvolvidos para reuso
entre as equipes
Solução:
Utilizar uma ferramenta de gerenciamento de
repositórios como o Nexus
Globalcode – Open4education
Processo – parte 5
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do históricobuild
dependências
integração contínua
publicação de artefatos
Globalcode – Open4education
Qualidade do código
Problema:
Garantir que as convenções e boas práticas estão sendo
seguidas pelos desenvolvedores
Visualizar as violações e a evolução da qualidade
estrutural do código
Solução:
Utilizar uma ferramenta de análise estática do código
como o Sonar
Globalcode – Open4education
Processo – parte 6
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do históricobuild
dependências
integração contínua
publicação de artefatos
inspeção
Globalcode – Open4education
Implantação em produção
Problema:
Implantar um módulo aprovado em produção
Solução:
Utilizar a ferramenta de integração contínua para fazer o
deployment contínuo
Globalcode – Open4education
Processo final
requisitos e releases
stakeholder
desenvolvedor
código fonte
visualização
do históricobuild
dependências
integração contínua
publicação de artefatos
inspeção
deploy
servidor
Globalcode – Open4education
Outras ferramentas
JUnit:
Testes unitários
Selenium
Testes de interface Web
JMeter
Testes de carga
TestLink
Gerenciamento de casos de teste
Globalcode – Open4education
DEMO
Globalcode – Open4education
Dúvidas
?
kleber@globalcode.com.br
bruno@javaman.com.br

Mais conteúdo relacionado

Mais procurados

Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
 
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
 
Final Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsFinal Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsLuiz Henrique
 
Ciclo de vida do desenvolvimento de software de ponta a ponta
Ciclo de vida do desenvolvimento de software de ponta a pontaCiclo de vida do desenvolvimento de software de ponta a ponta
Ciclo de vida do desenvolvimento de software de ponta a pontaRodrigo Kono
 
Arquitetura para entrega continua
Arquitetura para entrega continuaArquitetura para entrega continua
Arquitetura para entrega continuaLeonardo Kobus
 
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
 
Automação de testes em projetos ágeis
Automação de testes em projetos ágeisAutomação de testes em projetos ágeis
Automação de testes em projetos ágeisCristiano Caetano
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberKamilla Queiroz Xavier
 
Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)Alessandro Almeida
 
Minas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaMinas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaSamanta Cicilia
 
Botando o Jenkins para rodar seus testes
Botando o Jenkins para rodar seus testesBotando o Jenkins para rodar seus testes
Botando o Jenkins para rodar seus testeskinow
 
Caracterização de um Processo de Software para Projetos de Software Livre
Caracterização de um Processo de Software para Projetos de Software LivreCaracterização de um Processo de Software para Projetos de Software Livre
Caracterização de um Processo de Software para Projetos de Software LivreWilliam S. Rodriguez
 
Desenvolvendo software com qualidade e agilidade
Desenvolvendo software com qualidade e agilidadeDesenvolvendo software com qualidade e agilidade
Desenvolvendo software com qualidade e agilidadeDiogo Augusto Pereira
 
DevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeDevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeKamilla Queiroz Xavier
 

Mais procurados (19)

Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 
Alm open source
Alm open sourceAlm open source
Alm open source
 
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...
 
Final Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsFinal Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applications
 
Ciclo de vida do desenvolvimento de software de ponta a ponta
Ciclo de vida do desenvolvimento de software de ponta a pontaCiclo de vida do desenvolvimento de software de ponta a ponta
Ciclo de vida do desenvolvimento de software de ponta a ponta
 
Jenkins workshop
Jenkins workshopJenkins workshop
Jenkins workshop
 
Arquitetura para entrega continua
Arquitetura para entrega continuaArquitetura para entrega continua
Arquitetura para entrega continua
 
Sucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura AgileSucesso e derrota na Arquitetura Agile
Sucesso e derrota na Arquitetura Agile
 
Jenkins
JenkinsJenkins
Jenkins
 
Automação de testes em projetos ágeis
Automação de testes em projetos ágeisAutomação de testes em projetos ágeis
Automação de testes em projetos ágeis
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saber
 
Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)Gestão de Projetos (25/08/2014)
Gestão de Projetos (25/08/2014)
 
Minas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega ContínuaMinas Testing Conference - Entrega Contínua
Minas Testing Conference - Entrega Contínua
 
Botando o Jenkins para rodar seus testes
Botando o Jenkins para rodar seus testesBotando o Jenkins para rodar seus testes
Botando o Jenkins para rodar seus testes
 
Caracterização de um Processo de Software para Projetos de Software Livre
Caracterização de um Processo de Software para Projetos de Software LivreCaracterização de um Processo de Software para Projetos de Software Livre
Caracterização de um Processo de Software para Projetos de Software Livre
 
Live Source - Brasil
Live Source - BrasilLive Source - Brasil
Live Source - Brasil
 
Desenvolvendo software com qualidade e agilidade
Desenvolvendo software com qualidade e agilidadeDesenvolvendo software com qualidade e agilidade
Desenvolvendo software com qualidade e agilidade
 
Subm_SamuelPereira_FINAL
Subm_SamuelPereira_FINALSubm_SamuelPereira_FINAL
Subm_SamuelPereira_FINAL
 
DevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeDevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidade
 

Semelhante a TDC 2013 SP | Trilha ALM: Construindo uma solução de ponta a ponta com ferramentas open source

Introdução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceIntrodução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceGlobalcode
 
Automacao de testes em .NET? Keep Calm and Just do It
Automacao de testes em .NET? Keep Calm and Just do ItAutomacao de testes em .NET? Keep Calm and Just do It
Automacao de testes em .NET? Keep Calm and Just do Ittdc-globalcode
 
Testes para Android de ponta a ponta
Testes para Android de ponta a pontaTestes para Android de ponta a ponta
Testes para Android de ponta a pontaElias Nogueira
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiMayara Fernandes
 
TDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraTDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraRafael Chaves
 
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...Bruno Tanoue
 
Academia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeAcademia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeGlobalcode
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosFelipe Gadelha Ruoso
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Behavior-Driven Development (BDD) - DevOps Summit 2016
Behavior-Driven Development (BDD) - DevOps Summit 2016Behavior-Driven Development (BDD) - DevOps Summit 2016
Behavior-Driven Development (BDD) - DevOps Summit 2016Renato Groff
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
 
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosContinuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosSamanta Cicilia
 
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia IIDevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia IIAlefe Variani
 
Arquiteturaentregacontinuav2 160513025436
Arquiteturaentregacontinuav2 160513025436Arquiteturaentregacontinuav2 160513025436
Arquiteturaentregacontinuav2 160513025436Fabiano Modos
 
Es capítulo 2 - processos de software
Es   capítulo 2  - processos de softwareEs   capítulo 2  - processos de software
Es capítulo 2 - processos de softwareFelipe Oliveira
 
Aula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfAula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfJadna Almeida
 
Monitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsMonitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsRenato Groff
 

Semelhante a TDC 2013 SP | Trilha ALM: Construindo uma solução de ponta a ponta com ferramentas open source (20)

Introdução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open SourceIntrodução a Application Life-cycle Management Open Source
Introdução a Application Life-cycle Management Open Source
 
Automacao de testes em .NET? Keep Calm and Just do It
Automacao de testes em .NET? Keep Calm and Just do ItAutomacao de testes em .NET? Keep Calm and Just do It
Automacao de testes em .NET? Keep Calm and Just do It
 
Testes para Android de ponta a ponta
Testes para Android de ponta a pontaTestes para Android de ponta a ponta
Testes para Android de ponta a ponta
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
 
TDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestraTDC SP 2016 - Dos requisitos à implantação em uma palestra
TDC SP 2016 - Dos requisitos à implantação em uma palestra
 
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...
TDC 2015 - Trilha PHP - Testes e Ambiente de Integração Contínua PHP para o D...
 
TDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - FloripaTDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - Floripa
 
Apresentacao dev ops
Apresentacao dev opsApresentacao dev ops
Apresentacao dev ops
 
FDD
FDDFDD
FDD
 
Academia do Arquiteto Globalcode
Academia do Arquiteto GlobalcodeAcademia do Arquiteto Globalcode
Academia do Arquiteto Globalcode
 
RubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhosRubyConf 17 - Colocando sua aplicação vue nos trilhos
RubyConf 17 - Colocando sua aplicação vue nos trilhos
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Behavior-Driven Development (BDD) - DevOps Summit 2016
Behavior-Driven Development (BDD) - DevOps Summit 2016Behavior-Driven Development (BDD) - DevOps Summit 2016
Behavior-Driven Development (BDD) - DevOps Summit 2016
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
 
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosContinuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
 
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia IIDevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
 
Arquiteturaentregacontinuav2 160513025436
Arquiteturaentregacontinuav2 160513025436Arquiteturaentregacontinuav2 160513025436
Arquiteturaentregacontinuav2 160513025436
 
Es capítulo 2 - processos de software
Es   capítulo 2  - processos de softwareEs   capítulo 2  - processos de software
Es capítulo 2 - processos de software
 
Aula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfAula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdf
 
Monitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application InsightsMonitorando serviços REST com o Application Insights
Monitorando serviços REST com o Application Insights
 

Mais de tdc-globalcode

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadetdc-globalcode
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...tdc-globalcode
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucessotdc-globalcode
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPAtdc-globalcode
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinotdc-globalcode
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...tdc-globalcode
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicestdc-globalcode
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publicatdc-globalcode
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#tdc-globalcode
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocustdc-globalcode
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?tdc-globalcode
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golangtdc-globalcode
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QAtdc-globalcode
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciatdc-globalcode
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Servicetdc-globalcode
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETtdc-globalcode
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8tdc-globalcode
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...tdc-globalcode
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#tdc-globalcode
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Coretdc-globalcode
 

Mais de tdc-globalcode (20)

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devices
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocus
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golang
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
 

TDC 2013 SP | Trilha ALM: Construindo uma solução de ponta a ponta com ferramentas open source

  • 1. Globalcode – Open4education Construindo uma solução ponta a ponta com ferramentas open-sorce Kleber Xavier Instrutor e Arquiteto de Software Bruno Souza Evangelista Java e Open Source
  • 2. Globalcode – Open4education Agenda Introdução Problemas no gerenciamento do ciclo de vida de um aplicativo DEMO
  • 3. Globalcode – Open4education ALM – O que é? Application Lifecycle Management: gerenciamento contínuo do software; Casamento da gestão de negócio com engenharia de software; Requer ferramentas integradas para gerenciar: Requisitos; Repositório de código; Construção; Arquitetura e codificação; Testes e qualidade Versões e componentes
  • 4. Globalcode – Open4education ALM – Por que? Vantagens na adoção; Rastreabilidade e dados post-hoc; Gerenciamento integrado; Simplificação nos processos; Agilidade na construção do software; Aumento da reusabilidade; Diminuição dos riscos;
  • 5. Globalcode – Open4education ALM – ferramentas Pilha ALM open-source que usamos: Disciplina Software Gerenciamento de Requisitos Redmine Gestão de código / versionamento GIT Construção e dependências Maven Integração Contínua Jenkins Repositório de componentes Nexus Qualidade de código Sonar
  • 6. Globalcode – Open4education O planejamento inicial Problema: Organizar os requisitos em entregas Atribuir os requisitos para seus desenvolvedores Acompanhar a evolução do desenvolvimento Solução: Utilizar um gerenciador de issues, como o Redmine
  • 7. Globalcode – Open4education Processo – passo 1 requisitos e releases stakeholder
  • 8. Globalcode – Open4education A organização do código fonte Problema: Compartilhar o código fonte entre os desenvolvedores do projeto Manter o histórico de alterações Solução: Utilizar um repositório de código fonte como o Git
  • 9. Globalcode – Open4education Processo – passo 2 requisitos e releases stakeholder desenvolvedor código fonte visualização do histórico
  • 10. Globalcode – Open4education Gerenciamento das dependências Problema: Padronizar as bibliotecas de terceiros utilizadas pelo projeto Disponibilizar as bibliotecas utilizadas para a equipe de desenvolvimento Solução: Utilizar uma ferramenta de build com suporte a gerenciamento de dependências como o Maven Utilizar um gerenciador de repositórios como o Nexus
  • 11. Globalcode – Open4education Processo – passo 3 requisitos e releases stakeholder desenvolvedor código fonte visualização do histórico build dependências
  • 12. Globalcode – Open4education Integração entre módulos Problema: Garantir que alterações em um dos módulos não quebrem o funcionamento de outros módulos Notificar os responsáveis em caso de quebra, o mais rapidamente possível Solução: Utilizar uma ferramenta de integração contínua como o Jenkins
  • 13. Globalcode – Open4education Processo – parte 4 requisitos e releases stakeholder desenvolvedor código fonte visualização do históricobuild dependências integração contínua
  • 14. Globalcode – Open4education Reutilização de módulos Problema: Disponibilizar os módulos desenvolvidos para reuso entre as equipes Solução: Utilizar uma ferramenta de gerenciamento de repositórios como o Nexus
  • 15. Globalcode – Open4education Processo – parte 5 requisitos e releases stakeholder desenvolvedor código fonte visualização do históricobuild dependências integração contínua publicação de artefatos
  • 16. Globalcode – Open4education Qualidade do código Problema: Garantir que as convenções e boas práticas estão sendo seguidas pelos desenvolvedores Visualizar as violações e a evolução da qualidade estrutural do código Solução: Utilizar uma ferramenta de análise estática do código como o Sonar
  • 17. Globalcode – Open4education Processo – parte 6 requisitos e releases stakeholder desenvolvedor código fonte visualização do históricobuild dependências integração contínua publicação de artefatos inspeção
  • 18. Globalcode – Open4education Implantação em produção Problema: Implantar um módulo aprovado em produção Solução: Utilizar a ferramenta de integração contínua para fazer o deployment contínuo
  • 19. Globalcode – Open4education Processo final requisitos e releases stakeholder desenvolvedor código fonte visualização do históricobuild dependências integração contínua publicação de artefatos inspeção deploy servidor
  • 20. Globalcode – Open4education Outras ferramentas JUnit: Testes unitários Selenium Testes de interface Web JMeter Testes de carga TestLink Gerenciamento de casos de teste