Capítulo 10
Implementação
Disciplina: Estudo do RUP
Autor: Vander Alves
Orientação: Augusto Sampaio
Paulo Borba
Implementação: Objetivos
Gerar e organizar o código em
subsistemas e camadas;
implementar classes como componentes
(fontes, executáveis);
testar os componentes como unidades;
integrar resultados de implementadores em
um sistema.
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Atividade: estruturar modelo
de implementação
Worker: Arquiteto
Objetivos:
definir estrutura da implementação;
designar responsabilidade aos subsistemas.
RUP - DI / UFPE
1999
Atividade: estruturar modelo de
implementação
Passos
Criar estrutura inicial do modelo de
implementação;
ajustar subsistemas;
definir localização dos executáveis;
definir imports para cada subsistema;
definir localização dos subsistemas e
componentes de teste;
atualizar a visão da implementação;
avaliar a visão da implementação (checkpoints)
RUP - DI / UFPE
1999
Atividade: estruturar modelo de
implementação
Checkpoints modelo de implementação
interfaces definidas entre componentes?
balanceamento da carga de trabalho na equipe de
implementação? Gargalos? Planos de contingência?
dependência entre subsistemas: corretas?
Essenciais? Só cruzam um fronteira? É possível
reduzi-la à fronteira imediatamente inferior?
número excessivo de camadas (mais do que 7)
equilíbrio na razão subsistema/componente e
componente/linha de código
feedback para planejamento (custo e cronograma).
RUP - DI / UFPE
1999
Atividade: estruturar modelo de
implementação
Saídas:
visão de implementação no documento da
arquitetura do sistema;
subsistemas de implementação.
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Planejar integração de
sistema
Worker: integrador de sistema
Objetivo: planejar integração
Passos:
Identificar subsitemas
definir conjunto de builds
definir série de builds
avaliar plano de integração de build (minimizar
stubs, fácil localização de erros, coordenação com
desenvolvimento de componentes)
Saída: plano de integração de build
RUP - DI / UFPE
1999
Planejar integração de
sistema
Integração em 3 builds
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Planejar integração de
subsistema
Worker: implementador;
Objetivo: definir ordem de integração do
componentes de um subsistema;
Passos:
Definir os builds
identificar as classes;
atualizar o modelo de imports
Saída:
plano de integração de build
subsistema de implementação
RUP - DI / UFPE
1999
Planejar integração de
subsistema
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Atividade: implementar
componente
Worker: implementador;
Objetivo: codificar as classes de projeto.
Saída:
componentes;
código fonte.
RUP - DI / UFPE
1999
Atividade: implementar
componente
Passos: (seguir diretrizes de programação)
implementar operações;
implementar estados;
usar delegação para reusar implementação;
implementar associações;
implementar atributos;
fornecer feedback para projeto;
avaliar código (warning, mentalmente, ferramenta
- static code rule checker)
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Consertar um defeito
Worker: implementador;
Objetivo: consertar um defeito
Passos:
estabilizar o defeito;
localizar a falha;
consertar a falha.
Saída:
componentes;
código fonte.
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Realizar testes de
unidade
Worker: implementador;
Objetivos:
verificar especificação da unidade;
verificar estrutura interna da unidade.
Passos:
Saída:
componentes de teste;
código fonte testado a nível de unidades.
RUP - DI / UFPE
1999
Realizar testes de
unidade
Passos:
identificar tipos requeridos de teste;
identificar e descrever casos de teste;
estruturar procedimentos de teste;
revisar e avaliar cobertura do teste;
implementar teste de unidade;
executar teste de unidade;
avaliar teste.
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Revisar código
Worker: revisor de código;
Objetivo: verificar o código fonte.
Passos:
checkpoints do código fonte.
Saída:
código fonte rejeitado ou aprovado.
RUP - DI / UFPE
1999
Revisar código:
checkpoints
Geral:
segue diretrizes?
bem documentado?
Comentário:
correto?
claro?
atualizado?
declarativo?
explica objetivo da operação?
RUP - DI / UFPE
1999
Revisar código:
checkpoints
Código fonte:
operações, parâmetros, variáveis com nomes
sugestivos?
separação clara entre fluxos normal e
excepcional?
operação longa decomposta em operações
privadas?
redução do número de decisões em operações?
aninhamento dos laços minimizado?
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Integrar subsitema
Worker: implementador;
Objetivo: integrar componentes em
subsistema e tornar o subsistema disponível
para integração de sistema.
Passos:
integrar os componentes;
lançar o subsistema.
Saída:
subsistema de implementação, um build
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Integrar sistema
Worker: integrador de sistema;
Objetivo: integrar incrementalmente
subsistemas em um build.
Passos:
adicionar subsistemas incrementalmente;
lançar um build internamente.
Saída:
modelo de implementação, um build
RUP - DI / UFPE
1999
Integrar sistema
RUP - DI / UFPE
1999
Implementação
RUP - DI / UFPE
1999
Resumo
RUP - DI / UFPE
1999
Download

Implementacao