24
Fluxo de Implementação

Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Fluxo de Implementação

Page 2: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Contexto das Atividades de

Implementação

Page 3: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Objetivos das Atividades de Implementação

Implementar as classes do modelo de projeto em

termos de componentes (código fonte ou

executável, etc.)

Definir a organização do código através de

subsistemas de implementação

Testar os componentes como unidades

Integrar os componentes desenvolvidos em uma

versão executável do sistema

Page 4: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Visão Geral das Atividades de

Implementação

Modelo de projeto

Documento da

arquitetura

Modelo de dados

Implementação

Documento da

arquitetura

Modelo de implementação

Componentes

Plano de Integração

Page 5: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 6: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Planejar Integração

Identificar quais componentes participam da

iteração (colaboram para os casos de uso da

iteração)

: C lie n t e

C o n t ro la d o r

C lie n t e

M a q u in a

D in h e iro

B a n c oLe it o ra C a rt a o C lie n t eF o rm u la rio

S a q u e

in s e re c a rt a o

in ic ia r s e s s a o (d a d o s c a rt a o )

s oli ci t a s e nh a

s o lic it a s e n h a

e n t ra s e n h a

e n t ra s e n h a

n e w C lie n t e (d a d o s c a rt a o , s e n h a )

v e rif ic a s e n h a

so lic it a v a lo r

s o lic it a v a lo r

e n t ra v a lo r

e n t ra v a lo r

v e rif ic a s a ld o (v a lo r)

s o lic it a d e b it o (v a lo r)

s ol ici t a d e v ol uc a o c art a o

s o lic it a e n t re g a d in h e iro

c a rt a o

d in h e iro

Page 7: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Planejar Integração

Identificar quais pacotes participam da iteração

(colaboram para os casos de uso da iteração)

Applicação

Negócio

Middleware

Básico

*

*

*

*

*

Candidatos a Stubs

x

x

Page 8: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Planejar Integração

Definir os builds que serão gerados

Aplicação

Comunicação

Negócio

Dados

3

Stubs 2

2

1

1

a a b b

c c d d

e e g g

f f

h h i i j j

Page 9: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Planejar Integração

Avaliar resultados

A ordem de integração reduz a necessidade de

criação de stubs?

A ordem de integração facilita a detecção de erros?

Page 10: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 11: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Estruturar Modelo de Implementação

Modelo de Implementação

Modelo de projeto gerado a partir da engenharia

reversa do código fonte do sistema

Page 12: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 13: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Implementar Componentes

Check-out dos componentes

Implementar

Operações

Inicialização dos atributos

Estados

Comentar o código implementado

Seguindo um padrão de codificação

Page 14: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Implementar Componentes

Avaliar o código implementado

Padrão de codificação

Fatores de qualidade de OO e Java

Compilar o código implementado

Com a última versão estável dos componentes auxiliares

Com a versão mais recente dos componentes implementados

Check-in dos componentes

Page 15: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 16: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Corrigir Defeitos

Check-out dos componentes

Estabilizar a ocorrência do defeito

Identificar casos de teste mínimos que causam o defeito

Localizar o defeito no código Isolado do ambiente de produção

Com ferramenta de depuração

Comentando trechos do código

Criando stubs

Page 17: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Corrigir Defeitos

Corrigir o defeito no código

Check-in dos componentes

Page 18: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 19: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Realizar Testes de Unidade

Implementar componentes de teste

Separados dos componentes a serem testados

Usando ferramenta para geração dos componentes de teste Ex: JUnit

Aproveitando componentes implementados anteriormente (Check-out)

Check-in dos componentes de teste

Executar testes e avaliar resultados

Page 20: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 21: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Revisar Código

Revisar código

Com base nos seguintes documentos: Padrão de codificação

Fatores de qualidade de OO e Java

Sem verificar se casos de uso foram corretamente implementados

Função corretiva, mas também educativa

Passar mudanças para o programador responsável

Page 22: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Adaptação das Atividades de Implementação

do RUP

Estruturar Modelo de

Implementação

Revisor de Código

Programador

Integrador do

Sistema e

Subsistemas

Planejar Integração Integrar Sistema

e Subsistemas

Implementar

Componentes

Corrigir

Defeitos

Realizar Testes

de Unidade

Revisar

Código Fonte

Page 23: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Integrar Sistema e Subsistemas

Check-out de todos os componentes do repositório

principal

Integrar componentes em um build

Notificar responsável pelos defeitos

Criar tag (identificador) para o build

Divulgar o build

Check-in dos componentes

Page 24: Fluxo de Implementação - FACOMbacala/MDS2011/MDS8.pdf · Realizar Testes de Unidade Implementar componentes de teste Separados dos componentes a serem testados Usando ferramenta

Atividades de Implementação

Leitura adicional

• Capítulo 10 do livro The Unified Software

Development Process (de Ivar Jacobson, Grady

Booch e James Rumbaugh)