62
Qualidade no desenvolvimento de software Processos e Ferramentas André Villas-Boas <[email protected]> USP/SCar - Abr-2016

Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Embed Size (px)

Citation preview

Page 1: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Qualidade no

desenvolvimento de

softwareProcessos e Ferramentas

André Villas-Boas <[email protected]>USP/SCar - Abr-2016

Page 2: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Evolução histórica do CPqD

Criação da

TELEBRÁS

TELEBRÁS

cria CPqD

Abertura

comercial

Privatização

TELEBRÁS

e CPqD

Novos

mercados

Internacionalização

Criação de

empresas

1972 1976 1990 1998 ...2012

Page 3: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Evolução na gestão de processos

Criação da

AQ

Certificação

ISO9001:1994

Certificação

ISO14001

Certificação

ISO9001:2000

CMM

Nível 2

Início do

6Sigma

Rumo à

Excelência

Re

ce

rtific

ação IS

O9

00

1:2

000 e

IS

O1

40

01

:2004

CM

MI

Nív

el 3

Re

ce

rtific

ação IS

O9

00

1:2

008 e

IS

O1

40

01

:2004

CM

MI

Nív

el 3

Rece

rtific

ação IS

O9

00

1:2

008 e

IS

O1

40

01

:2004

CM

MI

Nív

el 3

1997 2000 2003 2006 2007 2009 2010 2012

Page 4: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Sistema de Gestão?

Um conjunto de documentos do tipo

processos, procedimentos, práticas, orientações,

instruções, nos quais encontraremos a descrição das

atividades das pessoas envolvidas e das

ferramentas necessárias para realizarem quaisquer

atividades dentro de uma determinada organização.

OCD – Organismo

Certificador DesignadoISO9001:2008 e ISO14001:2004

Ensaio e Calibração

ISO17025 - CGCRE

Page 5: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Estrutura de Documentação do Sistema

de Gestão

Política

Processos

Ciclos de Vida

Procedimentos

Instruções

Templates

Documentação do Projeto Evidências

Como

Quem, O que, Quando, Onde

Por que

Page 6: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Política de Gestão

O CPqD busca a inovação e a excelência tecnológica

objetivando atender às necessidades e expectativas dos

seus clientes e da sociedade brasileira.

Atua com base:

• na melhoria contínua de seus processos;

• no estímulo à criatividade individual e coletiva;

• na relação harmoniosa entre seus colaboradores e com

as partes interessadas;

• na responsabilidade socioambiental; e

• na permanente melhoria do seu desempenho financeiro,

visando a sua perpetuidade.

CPqD Nosso jeito de ser e de fazer Sistema de Gestão (Macroprocesso, Indicadores...)Diretrizes Estratégicas e Políticas e Diretrizes Institucionais

Page 7: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Garantia da Qualidade de Processo

Avaliar objetivamente processos e produtos de trabalho

em relação aos padrões aplicáveis, fornecendo

informações que podem ser utilizadas para melhoria dos

processos – Foco em garantia da qualidade de processo

Fornecer apoio aos projetos durante o seu desenvolvimento

Fornecer informação à gerência do projeto e outros

envolvidos sobre as atividades de garantia da qualidade

Identificar e documentar as não-conformidades

Garantir que as não-conformidades sejam tratadas

Política da qualidade com o objetivo de:

Page 8: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Sistema de Gestão do CPqD

Macroprocesso

CPqD Nosso jeito de ser e de fazer Sistema de Gestão (Macroprocesso, Indicadores...)Macroprocesso CPqD

Page 9: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Sistemas de Software

Page 10: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Desenvolvimento de software [BPMN]P

roce

sso

de

Des

envo

lvim

ento

de

SW

(S

W)

Tes

tad

or

An

alis

ta d

eT

este

Red

ato

rT

écn

ico

Elicitar requisitos do

cliente

Documentar

Preparar casos de testes e

ambiente

Executar testes

Analisar resultado de testePlanejar Testes

Fim

Gestão de Configuração Inspeção

Indicadores

Gestão de Projetos Análise e Tomada de Decisão

Arq

uit

eto

Definir Arquitetura

An

alis

ta d

eR

equ

isit

os

Início Especificar requisitos do

produto e interfaces

Estabelecer e manter rastreabilidade

Pro

jeti

sta

Projetar

Inte

gra

do

r

Integrar Produto

Imp

lem

en

tad

or

Codificar

Instruções, Orientações, Boas Práticas Templates

Page 11: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Pro

cess

o d

e D

esen

volv

imen

to d

e S

W (

SW

)

Tes

tad

or

An

alis

ta d

eT

este

Red

ato

rT

écn

ico

Elicitar requisitos do

cliente

Documentar

Preparar casos de testes e

ambiente

Executar testes

Analisar resultado de testePlanejar Testes

Fim

Gestão de Configuração Inspeção

Indicadores

Gestão de Projetos Análise e Tomada de Decisão

Arq

uit

eto

Definir Arquitetura

An

alis

ta d

eR

equ

isit

os

Início Especificar requisitos do

produto e interfaces

Estabelecer e manter rastreabilidade

Pro

jeti

sta

Projetar

Inte

gra

do

r

Integrar Produto

Imp

lem

en

tad

or

Codificar

Instruções, Orientações, Boas Práticas Templates

Desenvolvimento de software

Qualidade

de produto

Page 12: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Garantia da Qualidade de

Software

Page 13: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Garantia de Qualidade de Software

É um conjunto de atividades técnicas aplicadas durante todo o processo de desenvolvimento.

• O objetivo é garantir que tanto o processo de

desenvolvimento quanto o produto de software

atinjam níveis de qualidade especificados.

Page 14: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Qualidade de Software

Conformidade com requisitos funcionais e de desempenho, padrões de desenvolvimento documentados, e características implícitas esperadas de todo software profissionalmente desenvolvido.

Correção

• Confiabilidade

• Testabilidade

• Manutenabilidade

• Usabilidade

Page 15: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Atividades de Garantia de Qualidade

Validação: Assegurar que o produto final corresponda aos requisitos do software. “Estamos construindo o produto certo?”.

Verificação: Assegurar consistência, completitude

e correção do produto em cada fase e entre

fases consecutivas do ciclo de vida do software.

“Estamos construindo corretamente o produto?”.

Teste: Examina o comportamento do produto

através de sua execução.

Page 16: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Defeitos no Processo de Desenvolvimento

• Quanto antes a presença do defeito for revelada, menor o custo de correção do defeitoe maior a probabilidade de corrigi-lo corretamente.

• Principal causa: tradução incorreta de

informações.

Solução: Introduzir atividades de VV&T ao longo

de todo o ciclo de desenvolvimento.

Page 17: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Aferição da qualidade

do produto no CPqD

Page 18: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Garantia da qualidade do produto

Inspeção

Produto de

Trabalho

Planejamento

Inspeção

Produto

Inspecionado

Planejamento: O que (escopo) Qual o método (par, técnica,

etc) Critérios a serem utilizados

(amostragem) Ambiente Equipe

Execução: JIRA: registro das

observações e tratamento Análise das revisões nas

reuniões de marco

Page 19: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Inspeção

• O projeto pode optar pelo uso de uma ferramenta de inspeção pararegistro das observações.

• Nesse caso, o Relatório de Inspeção fica armazenado na própria ferramenta

Page 20: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Visão Geral do Processo de Inspeção

• Planejamento das inspeções

• Plano de Inspeção (seleção de produtos de

trabalho, métodos, critérios, recursos, cronograma

etc.)

• Execução das inspeções

• Coleta das observações

• Tratamento das observações

• Avaliação das inspeções

• Verificação dos critérios e de qualidade dos

produtos e processos

Page 21: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Planejamento da Inspeção

• Selecionar métodos de inspeção para cada produto de

trabalho a ser inspecionado

• Walkthrough

• Revisão por Pares

• Revisão Técnica

• Definir os seguintes critérios da inspeção para cada

produto de trabalho

• Início

• Interrupção

• Término

Page 22: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Planejamento da Inspeção

• Definir critérios de amostragem para cada produto de

trabalho

• Amostragem vertical – quais versões dos artefatos serão

inspecionadas

• Amostragem horizontal – quais artefatos de um mesmo tipo serão

inspecionados

• Definir listas de inspeção a serem utilizadas nas

inspeções

• Por produto de trabalho

Page 23: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Garantia da qualidade do produto

Planejamento: estratégia, escopo, tipos de testes (integração, sistemas, homologação), ambiente, critérios, equipe

Preparação: massa de dados, roteiros de testes

Execução: Solicitação de mudança Relatório de testes: análise ao final de cada ciclo Liberação do produto: conforme critério de aceite

Solicitação

de mudança

Testes

Requisitos

Código

Documentos

Projeto

Relatório

de testes

Planejamento

de testes

Page 24: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Motivação para o teste

• Por que testar ?

• Assegurar a qualidade do produto e satisfação do cliente

• Reduzir os custos com retrabalho

• Aumentar a produtividade e competitividade

CompetitividadeProdutividade

Reduzir oscustos

Page 25: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Teste de Software

Principal Objetivo: refutar a assertiva de que o produto está correto

• Determinar entradas que façam as saídas obtidas

diferirem das saídas esperadas segundo a

especificação (busca de um contra-exemplo).

• É um processo destrutivo, sob o ponto de vista

psicológico, contrariamente às demais fases da

Engenharia de Software, onde constrói-se um

produto.

Page 26: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Teste de Software

Um teste bem sucedido é aquele que revela a presença de um defeito ainda não descoberto.

Caso de Teste:

Programa Especificação

Entrada

Saída Obtida Saída Esperada

Page 27: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Por que testar?

Objetivos:

• O teste é a última revisão da especificação, do projeto e da

codificação. (Pressman)

• Certificar aderência aos requisistos.

• Revelar presença de erros.

Limitações:

• Não garante ausência de erros.

• Alto custo.

• 50% tempo/custo de desenvolvimento = TESTE

Benefícios:

• Confiança na qualidade do software.

• Reduz manutenção, aumenta satisfação do cliente.

• Melhoria da qualidade.

Page 28: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Como testar?

“Formas” para projetar os casos de teste

Técnicas de teste

• Funcional

• Estrutural

• Baseado em Erros

São técnicas complementares

A questão não está em qual deles utilizar e sim

como utilizá-las de forma complementar.

Page 29: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

O que testar?

Teste de unidade.

• verificação léxico-sintática, lógica do programa.

Teste de integração.

• interfaces, chamadas, parâmetros.

Teste de sistema.

• Funcionalidade.

Teste de aceitação.

• Performance no ambiente real.

Page 30: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Visão Geral do Processo de Testes

• Planejamento dos testes

• Plano de Testes (escopo, estratégia, pessoal,

recursos, cronograma etc.)

• Projeto dos testes

• Casos de teste (entradas e saídas esperadas)

• Roteiros de teste (agrupamento e seqüência de

casos de teste)

• Execução dos testes

• Coleta das saídas reais

• Avaliação dos testes

• Verificação dos critérios de término de teste e de

qualidade de produto

Page 31: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Relatório de Testes (exemplo)

E1 C1 C2 C3 C4 T1

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

90,00%

100,00%

22%29%

39%21%

39%

36%

14%

Evolução das Severidades de Defeitos por Cenário de Teste

Iteração

Page 32: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Projeto CPqD Developer Suite

● Em 2007 o CPqD usava uma suíte proprietária de

ferramentas para desenvolvimento de software

o com um número insuficiente de licenças

o sem contrato de suporte

o com versões desatualizadas

● Em 2008 iniciou o projeto CPqD Developer Suite

Objetivo

Implantar uma infraestrutura de ferramentas e um modelo de

serviços que suportem os processos de desenvolvimento de

software do CPqD e que garantam a sua sustentabilidade

PremissaAdotar preferencialmente ferramentas livres ou de baixo-custo

que estejam consolidadas no mercado.

Page 33: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Custo Planejado x Realizado

500 mil

Page 34: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

CPqD Developer Suite

Um conjunto de ferramentas

● de software livre e de baixo-custo,

● de qualidade comprovada,

● líderes de mercado em suas categorias,

● integradas para propiciar o

● desenvolvimento eficiente de

● software de qualidade.

Page 35: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

CDS - CPqD Developer Suite

Version Management

Modeling and Design Code Search Code Review

Content Management

Change Management

Continuous IntegrationCode Analysis Test Automation Test Management

Build Automation

Development Artifact Management

Infrastructure Management

Page 36: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Desenvolvimento de softwareP

roce

sso

de

Des

envo

lvim

ento

de

SW

(S

W)

Tes

tad

or

An

alis

ta d

eT

este

Red

ato

rT

écn

ico

Elicitar requisitos do

cliente

Documentar

Preparar casos de testes e

ambiente

Executar testes

Analisar resultado de testePlanejar Testes

Fim

Gestão de Configuração Inspeção

Indicadores

Gestão de Projetos Análise e Tomada de Decisão

Arq

uit

eto

Definir Arquitetura

An

alis

ta d

eR

equ

isit

os

Início Especificar requisitos do

produto e interfaces

Estabelecer e manter rastreabilidade

Pro

jeti

sta

Projetar

Inte

gra

do

r

Integrar Produto

Imp

lem

en

tad

or

Codificar

Instruções, Orientações, Boas Práticas Templates

Page 37: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

CDS em números

519 projetos

5.500 tíquetes criados por mês

980 repositórios

50 mil commits por mês

17.000 jobs configurados

16 mil builds por mês

150 projetos

3.000 testes por mês

177 projetos

100 milhões de linhas de código analisadas por mês

Page 38: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Benefícios percebidos

● Simplificação de processos e uniformização de procedimentos

● Ferramentas multi-plataforma, modernas e integradas

● Baixo custo

● Suporte centralizado de“alto nível”

● Evolução contínua

● Software livre

● Mobilidade de pessoalEconomia de recursos

● Produtividade

● DisponibilidadeAtualizações frequentes

● DesverticalizaçãoEspecialização

● Novas funcionalidadesAmadurecimento

● https://metacpan.org/release/SVN-Hooks

● https://metacpan.org/release/Git-Hooks

● https://metacpan.org/release/JIRA-REST

Page 39: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Resultados Gerais do Projeto

● Portal de ferramentas num site

● Suporte e manutenção centralizado

● Simplificação e uniformização de processos

o GC/GM eliminaram 29 documentos de orientação!

● Novas funcionalidades

o Jenkins, Selenium, Sonar, TestLink, Gerrit

● Treinamentos

● Contribuições à sociedade

o Frameworks de hooks para o Subversion e Git

o Módulo para automação do JIRA

Page 40: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

subversion.apache.org

Page 41: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

ohloh.net/repositories/compare

Page 42: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Se você não

abusa de

branches e

merges

Page 43: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Subversion no CPqD

Page 44: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

atlassian.com/jir

a

Page 45: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão
Page 46: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

JIRA no CPqD

Page 47: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

sparxsystems.com/products/ea

Page 48: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Enterprise Architect

● Modelagem UML e de dados

● Migração semi-automática do Rose para o EA

● Monitoração do uso de licenças

● Edição conjunta de modelos

● 200+ instalações

● 50+ projetos em uso simultâneo

Page 49: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Diagrama de

Sequência

Diagrama de

Caso de Uso

Diagrama de

Colaboração

Diagrama de

Estado

Diagrama de

Atividade

Modelos

Diagrama de

Classe

Diagrama de

Objeto

Diagrama de

Componente

Diagrama de

DistribuiçãoCOMPORTAMENTAIS

ESTRUTURAISModelagem UML

Page 50: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

seleniumhq.org

Page 51: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Selenium

● Ferramenta para teste funcional de aplicações web

● Selenium IDE: extensão do Firefox para geração de

roteiros de teste

● Selenium RC: automatiza qualquer browser para executar

os testes

● Testes escritos em HTML, Java, C#, Perl, PHP, Python e

Ruby

● Google utiliza e contribui para o projeto

Page 52: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Maven

● Automação de build de aplicações Java

o O Maven é o sucessor do Ant

● Integração com Jenkins, Nexus e Sonar

● Já são usados informalmente pela maioria dos usuários

● Uniformização das versões e do modo de uso

Page 53: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

sonatype.org/nexus

Page 54: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Nexus

● Gerenciador de repositórios de artefatos do Maven

● Instância corporativa

● Catálogo automático de produtos entregues

● Gestão de configuração das dependências externas

Page 55: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Jenkins

● Gerenciador de integração contínua

● Uma instância por diretoria

● Integrado a Maven, Subversion, Git,

TestLink e JIRA

● Geração contínua de versões de

desenvolvimento com testes

automatizados

● Administradores de sistemas estão

trocando o crontab pelo Jenkins!

Page 56: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Jenkins no CPqD

Page 57: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

SonarQube

● Inspeção contínua de software

● Acompanhamento da evolução de métricas de qualidade

(kwalitee?)

● Integrado ao Maven

● Suporte a Java, C, C#, Flex, Natural, PHP, PL/SQL, Cobol

e VB6

nemo.sonarsource.org

Page 58: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

SonarQube no CPqD

Page 59: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Git

Muito melhor desempenho

Merges mais fáceis e inteligentes

Melhor visualização da história

Workflows muito mais flexíveis

Page 60: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Gerrit

● Sistema web para revisão de código integrado ao Git

● Garante a inspeção de todo código novo, mantendo

registros das revisões realizadas

● Integrado ao Jenkins para validação automática

● Integrado ao JIRA

Page 61: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

● Critério para seleção de ferramentas (baixo-custo e

maturidade)

● Equipe dedicada para manutenção, suporte e evolução

● Acompanhamento contínuo dos clientes

e dos fornecedores

● Apoio dos grupos de processo

● Patrocínio forte da gerência

Pontos importantes para o CDS

Page 62: Qualidade no desenvolvimento de software - edisciplinas.usp.br · CMM Nível 2 Início do ... Ensaio e Calibração ISO17025 - CGCRE. Estrutura de Documentação do Sistema de Gestão

Muito obrigado

pela atenção!

www.cpqd.com.br