da Silva
carloshenrique.85@globo.com
1. Histórico e Conceitos
2. Melhores práticas
3. Fases
4. Disciplinas
O RUP, Processo Unificado Racional é um processo proprietário de
Engenharia de software criado pela Rational Software Corporation,
adquirida pela IBM, ganhando um novo nome IRUP e tornando-se
uma brand na área de Software, fornecendo técnicas a serem
seguidas pelos membros da equipe de desenvolvimento de software
com o objetivo de aumentar a sua produtividade no processo de
desenvolvimento.
Gestão de requisitos
1. Pessoas
2. Projeto
3. Produto
4. Processo
RUP não define esta como uma disciplina obrigatória, mas recomenda
fortemente que ela seja executada especialmente para empresas que
estão iniciando um novo negócio e não possuam uma clara
modelagem do negócio.
Modelagem de Negócios
Finalidades:
Gerente de Projeto
Designer de Negócio
Modelagem de Negócios
Gerente de Projeto
Talvez seja um dos únicos papéis que estarão presentes em todos os
projetos e em todas as suas fases, independente do tamanho,
natureza ou metodologia de desenvolvimento adotada.
Qualidade de software
Usabilidade
Confiabilidade
Performance
Suportabilidade – manutenabilidade
TIPOS DE REQUISITOS
Serviços (features)
Requisitos do software
Elicitação
Análise e Negociação
Especificação
Validação
Processo de Engenharia de Requisitos
Elicitação dos Requisitos
O objetivo é obter conhecimentos relevantes do problema a ser resolvido.
Segundo Kotonya e Sommerville existem 4 dimensões na atividade de
elicitação de requisitos:
Processos de negociação
Produtos da negociação
Especificação dos Requisitos
Após serem identificados e analisados os requisitos devem ser documentados
para que possam servir de base para o resto do processo.
Administrar o volume de informações que são gerados pelo processo de
engenharia de requisitos é um dos principais problemas que se enfrenta na
documentação de requisitos. Para se tornar um pouco mais fácil a
administração desse documento usa-se uma notação gráfica que diminui o
tamanho do modelo.
Cada engenheiro de requisitos usa um modelo para fazer sua documentação.
A seguir são mostrados três modelos de documentos que são encontrados na
literatura:
Modelo 1 – Roger S. Pressman
◦ Modelo de Analise
◦ Modelo de Projeto
Caso de Uso Realização de Caso
de Uso
Descreve como o
caso de uso é
realizado,
associando o caso
Diagramas de Sequência
MDS - Bacalá
1. Analisar Arquitetura
3. Projetar Classes
Módulo de
Interface Gráfica Estoque
Negócio Socket
Dados
Para cada caso de uso
Identificar as classes de análise
• Classes de fronteira
• Classes de controle
• Classes de entidade
Para cada classe
Identificar responsabilidades das classes
Identificar relacionamentos
Identificar atributos
Para cada classe
1. Criar classes de projeto
Normalizar se necessário
DISCIPLINA DE
IMPLEMENTAÇÃO
Disciplina de Implementação
OBJETIVOS
Implementação
Componentes
Documento da
arquitetura
Plano de Integração
Modelo de dados Documento da
arquitetura
Planejar Integração Integrar Sistema
e Subsistemas
Integrador do
Sistema e
Subsistemas
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Identificar quais componentes participam da iteração (colaboram
para os casos de uso da iteração)
F o r m u la r io C o n t r o la d o r Le it o r a C a r t a o M a q u in a C lie n t e Banc o
Saque C lie n t e D in h e ir o
: C lie n t e
in s e r e c a r t a o
in ic ia r s e s s a o ( d a d o s c a r t 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 r t a o , s e n h a )
v e r if 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 r a v a lo r
e n t r a v a lo r
v e r if 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 ar t a o
c a rt a o
s o lic it a e n t r e g a d in h e ir o
d in h e ir o
Identificar quais pacotes participam da iteração (colaboram para
os casos de uso da iteração)
*
Applicação
* x
Negócio
Candidatos a Stubs
*
Middleware *
x *
Básico
Definir os builds que serão gerados
a b
3
Aplicação
c d
2
Comunicação
e g
2 Stubs
f
1
Negócio
h i j
1
Dados
Avaliar resultados
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Modelo de Implementação
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Check-out dos componentes
Implementar
◦ Operações
◦ Inicialização dos atributos
◦ Estados
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Check-out dos componentes
Estabilizar a ocorrência do defeito
◦ Identificar casos de teste mínimos que causam o defeito
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Implementar componentes de teste
Ex: Junit
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
Revisar código
◦ Com base nos seguintes documentos:
Padrão de codificação
Integrador do
Sistema e
Subsistemas
Corrigir
Defeitos
Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação Componentes de Unidade
Revisar
Revisor de Código Código Fonte
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
DISCIPLINA DE
TESTE
Fluxo de Trabalho
Papéis e Atividades
Papéis e Artefatos
DISCIPLINA DE
IMPLANTAÇÃO
Disciplina de Implantação
Finalidade: Descrever as atividades que garantam que o produto de
software será disponibilizado a seus usuários finais.
A instalação personalizada
O produto em uma forma "compacta"
Acesso ao software por meio da Internet