objetivos das atividades de implementação • implementar as classes do modelo de projeto em...

Post on 18-Apr-2015

108 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

Fluxo do Trabalho

Atividade: Estruturar Modelo de Implementação

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: Estruturar Modelo de Implementação

•Modelo de Implementação•Modelo de projeto gerado a partir da engenharia reversa do código fonte do sistema

Atividade: Planejar Integração

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: Planejar Integração

• Identificar quais componentes participam da iteração (colaboram para os casos de uso da iteração)

• Identificar quais pacotes participam da iteração (colaboram para os casos de uso da iteração)

• Definir os builds que serão gerados

Conceitos: Build

• Um build é uma versão operacional de um sistema ou parte de um sistema que demonstra um subconjunto das capacidades fornecidas no produto final.

• Os builds são partes integrantes do ciclo de vida iterativo. Eles representam tentativas contínuas de demonstrar a funcionalidade desenvolvida até esta data. Cada build é colocado sob o controle da configuração nos casos em que haja necessidade de voltar a uma versão mais antiga, quando a funcionalidade adicionada causar quebras ou qualquer outro efeito que comprometa a integridade do build

Atividade: Implementar Componentes

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: 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

Atividade: 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

Atividade: Corrigir Defeitos

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: 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

Atividade: Corrigir Defeitos

• Corrigir o defeito no código• Check-in dos componentes

Atividade: Realizar Testes de Unidade

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: 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

Atividade: Revisar Código

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: 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

Atividade: Integrar Sistema e Subsistemas

Arquiteto

Integrador de sistema

Programador

Revisor de código

Estruturar Modelode Implementação

PlanejarIntegração

ImplementarComponentes

Realizar TestesUnitários

CorrigirDefeitos

RevisarCódigo

Integrar Sistemae Subsistemas

Atividade: 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

Artefatos

Pessoas Envolvidas•Arquiteto.O papel arquiteto de software lidera e coordena as atividades e os artefatos técnicos no decorrer do projeto. O arquiteto de software estabelece a estrutura geral de cada visão de arquitetura: a decomposição da visão, o agrupamento dos elementos e as interfaces entre esses principais agrupamentos. Portanto, comparado aos outros papéis, a visão do arquiteto de software é ampla, e não detalhada.

Integrador de Sistema:Os implementadores liberam os componentes testados em um espaço de trabalho de integração, enquanto os Os implementadores liberam os componentes testados em um espaço de trabalho de integração, enquanto os integradores combinam esses componentes para criar um build. Um integrador também é responsável por integradores combinam esses componentes para criar um build. Um integrador também é responsável por planejar a integração, que ocorre no subsistema e no sistema, sendo que cada um tem um espaço de trabalho de planejar a integração, que ocorre no subsistema e no sistema, sendo que cada um tem um espaço de trabalho de integração separado. Os componentes testados são liberados do espaço de trabalho de desenvolvimento integração separado. Os componentes testados são liberados do espaço de trabalho de desenvolvimento particular de um implementador para o espaço de trabalho de integração do subsistema, enquanto os subsistemas particular de um implementador para o espaço de trabalho de integração do subsistema, enquanto os subsistemas de implementação integrados são liberados do espaço de trabalho de integração do subsistema para o espaço de de implementação integrados são liberados do espaço de trabalho de integração do subsistema para o espaço de trabalho de integração do sistema.trabalho de integração do sistema..

•Programador.O papel implementador é responsável por desenvolver e testar componentes de acordo com os padrões adotados para o projeto, para fins de integração com subsistemas maiores. Quando é necessário criar componentes de teste, como drivers ou stubs, para possibilitar a realização dos testes, o implementador também é responsável por desenvolver e testar esses componentes e os subsistemas correspondentes.

Revisor de Codigo.O papel revisor deo-fonte, além de planejar e conduzir revisões do código-fonte. O revisor de código é responsável por qualquer f código garante a qualidade do códigeedback de revisão que recomende um retrabalho necessário.

Exercícios

1- Cite os objetivos da disciplina de implementação.2- Quais atividades a serem feitas para planejar a integração?3- Como é chamado o produto final que são partes integrantes do ciclo de

vida iterativo?

Bibliografia:Fontes:http://www.wthreex.com/rup/portugues/index.htm

top related