tdc 2013 sp | trilha alm: construindo uma solução de ponta a ponta com ferramentas open source

Post on 27-Jun-2015

641 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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órico build

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órico build

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órico build

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órico build

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

top related