RUP+-+Aula-4

Download Report

Transcript RUP+-+Aula-4

Visão Geral do RUP
Unibratec
Análise e Gerencia de Projetos
Profº Henrique Vila Nova
Visão Geral do RUP





Introdução
Casos de Uso
Arquitetura de Software
Fluxo de Atividades da Metodologia
Fases do RUP


CONCEPÇÃO ->ELABORAÇÃO ->CONSTRUÇÃO -> TRANSIÇÃO
Boas Práticas
Introdução ao RUP


Conjunto das Melhores Práticas em
Engenharia de Software
Não Define uma Metodologia



È uma Plataforma de Processos
Metodologia é o resultado de uma Configuração ou instanciação
dos processos
Ferramentas sugeridas pelo RUP


Ferramentas Rational
A Linguagem UML
Rational Unified Process (RUP)

Características

Iterativo e Incremental





O
Sistema é construído incrementalmente através de vários
mini-projetos que se repetem (iterativos)
Orientado a Objetos
Guiado por Casos de Uso
A Arquitetura tem papel central
Planejado por Riscos

Reduz riscos e aumenta a previsibilidade
Casos de Uso


É uma forma específica de uso do sistema através da
execução de alguma de suas funcionalidades
É uma funcionalidade, mostrada por uma seqüencia
de mensagens trocadas entre o sistema e um ou
mais usuários externos(atores), junto com as ações
executadas pelo sistema
Casos de Uso (por que usar?)



Descrevem o que acontece dentro do
sistema
Ajuda a comunicação entre clientes e
desenvolvedores
Mostram apenas o que o sistema faz, e
não como.

Capturam o comportamento do sistema, sem a
necessidade de especificar como esse
comportamento será implementado
Casos de Uso

Representação Gráfica
Solicitar Estrato
Solicitar Saldo
Solicitar Saldo
Usuário da Internet
Programa Navegador
Casos de Uso

Representação Gráfica 2
Solicitar Saldo
Sacar Dinheiro
Cliente
Transferir Entre Contas
Uma Associação entre m ator e um caso de uso indica que há uma comunicação.
Casos de Uso

Representação Gráfica 3
Realiza um pedido
Empresa de
Entrega
Cliente
Transferir Entre Contas
Casos de Uso na UML


Significa um caminho através de um Caso de
uso
Uma instância de um caso de

Exemplos




Sacar Dinheiro
Tentativa de Saque MAS senha Incorreta
Tentativa de Saque MAS Saldo Insuficiente
Realizar Login



Login com Sucesso
Longin Incorreto
Esqueci minha Senha
Casos de Uso - Pacotes


Servem para Agrupar Casos de Uso Relacionados
Critérios para Agrupamento:




Ator
Funcionalidade correlatas
Processos
Camadas
Casos de Uso

Modelo que Descreve os casos de Uso
do Sistema e Atores relacionados
Modelos de Casos de uso
Especificação de Casos de Uso
Arquitetura de Software

Nos Requisitos, a arquitetura aparece
assim;



“Nossa aplicação deve operar via WEB nas
plataformas UNIX, Macintoch. OS/2 e Win”.
“O produto deve ser Compativel com
Corba”.
“O Sistema deve garantir excelente tempo
de resposta”.
Arquitetura de Software

O que é Arquitetura?



Componentes de Software
Suas Propriedades Visíveis externamente
O Relacionamento entre os Componentes
Arquitetura de Software

Como Descrever a Arquitetura?

Elemenos que tratam vários aspectos







“Organização do Sistema em Termos de
Componentes”
Estruturas Globais de Controle
Protocolos de Comunicação
Interações entre Componentes
Distribuição Física
Escalabilidade e desempenho
Evolução do Sistema
Arquitetura de Software

Elemenos a serem Representados em um documento
de Arquitetura de Software
Objetos
Servidor
Módulos
Hardware
BD´s
Cliente
Protocolos
ATRAVÉS DE DIFERENTES VISÕES
Arquitetura de Software

Visões:





Casos de Uso
Lógica
Implementação
Processos
Distribuição
Arquitetura de Software

Visões de Caso de Uso

Ilustra os casos de Uso e cenários
arquiteturalmente importantes
extrato
Transferencia
Login
Arquitetura de Software

Visão Lógica


Ilustra os Subsistemas, Pacoes ou Classes
Envolve Diagramas

Classes, Estados e Objetos
Estoque
Financeiro
Contabilidade
Arquitetura de Software

Visão de Implementação


Captura decisões de implementação
Organização dos Componentes
Component1
Arquivo Fonte
EXE
Executavel
Arquitetura de Software

Visão de Processos

Mapeamento de Classes e Subsistemas
End2
<process>
Caixa Eletronico
<Thread>
Controlador GUI
<Thread>
End1
Conexão Servidor
End1
<Thread>
<Thread>
End2
ControladorDispositivos
Arquitetura de Software

Visão de Distribuição


Distribuição Física do Sistema
Objetos Responsáveis pelo controle de Processamentos
:Impressora
*
*
:ServidorReceita
:Cliente
-INTERNET
:Browser
:Contribuinte
*
:SERVIDOR DE BD
-Rede Local
*
:Controle
Transação
*
*
:Controle
Declarações
Arquitetura de Software

Importancia
Abstrair informações detalhadas do
Sistema
 Provem Informações como:




Análise do Sistema como um todo
Tomada de Decisões (técnicas ou
Gerenciais)
Redução de Riscos
Arquitetura de Software
TelaLogin
TelaMeni
0..N
TelaPagamentoSISCard
0..N
1
1
FachadaComunicaçãoOperadoraCartao
0..N
1
1
1

Diagrama Exemplo
1
Fachada
Repositorio
OperadoraCartão
1
1
1
1
ControladorLogin
1
ContrladorPagamentoSISCard
1
1
1
1
1
1
1
CadastroContasInternet
1
1
1
Comprovante
1
1
CadastroContasCorrente
Hora
1
CadastroPagamentoCartao
PagamentoCartao
1
1
1
1
1
1
1
1
ContaInternet
1
Repositorio
ContasInternet
1
1
1
1
RepositórioContasInternetBDR
1
1
1
1
Repositorio
ContasCorrente
ContaCorrente
1
Repositorio
PagamentoCartão
1
1
RepositorioPagementoCartaoBDR
RepositorioContasCorrenteBDR
Data
Fluxo de Atividades

Planejamento e Gerenciamento
Iniciar
Projeto
Contratante
Estudar
Viabilidade
Gerente de
Projeto
Atestar
Conclusão
do Projeto
Aprovar
Projeto
Desenvolver
Plano de Projeto
Identificar
Riscos
Executar
Plano de Iteração
Avaliar
Iteração
Desenvolver Plano
de Iteração
Reavaliar
Riscos
Arquiteto
Priorizar Casos
de Uso
Finalizar
Projeto
Fluxo de Atividades

Analista
De Processos
De Negócio
Modelagem de Negócio
Localizar Processo
No Ambiente
Organizacional
Descrever Processo
de Negócio
Identificação
Oportunidade de
Melhoria
Re-projetar processos
de baixa perfomance
Fluxo de Atividades

Requisitos
Prototipar
Interface
Projetista da
Interface
Revisor de
Requisitos
Revisar
Requisitos
Analista de
Sistemas
Levantar
Requisitos do
Sistema
Detalhar
Especificação
de Caso de Uso
Estruturar
Modelo de
Casos de Uso
Usuário
Homologar
Requisitos
Fluxo de Atividades

Análise e Projeto
Arquiteto de
Software
Projetar
Arquitetura
Projetar
Casos de Uso
Analista de
Sistemas
Projetar
Subsistemas
Revisor de
Projeto
Analisar
Casos de Uso
Homologar
Requisitos
Projetar Banco
de Dados
DBA
Fluxo de Atividades

Implementação
Estruturar Modelo
de Implementação
Arquiteto
Integrar Sistemas
Integrador
Planejar
Integração
Corrigir Defeitos
Programador
Implementar
Componentes
Revisor de
Código
Realizar Testes
Unitários
Revisar Código
Fluxo de Atividades

Testes
Avaliar
Testes
Projetista
De Testes
Elaborar Plano
de Testes
Projetar Testes
Implementar
Testes
Programador
Executar Testes
Testador
Fases do RUP

Concepção

Elaboração

Construção

Transição
Fases do RUP

Gráfico do Fluxo de Processos do RUP
Fases do RUP
Concepção


Características
1.
2.
3.
4.
Justifica a Necessidade d Projeto
Prove a Viabilidade do Sistema
Sua Necessidade
Definição de Limites (estimativas) para
Orçamento, Cronograma e Retorno de
Investimento
Fases do RUP

Objetivos

Definir o Escopo do Software





Concepção

Visão do Projeto
Definir os Critérios de Aceitação do Produto
final
O que faz parte e o que não faz parte do
Sistemas
Descobrir Casos de Uso Críticos
Estimar por Alto o Custo e o Cronograma
de todo o Projeto
Fases do RUP

Objetivos (continuação)


Levantar os Potenciais Riscos
Preparar o Ambiente de suporte do Projeto


Concepção

Definir e preparar os processos e ferramentas a
serem utilizados
Definir e, eventualmente demonstrar com
protótipos
Fases do RUP

Grafico
Concepção

Fases do RUP

Elaboração

Objetivos


Capturar a maioria dos Requisitos
Construir a Arquitetura do Sistema


Produzir protótipos Descartaveis





Na Forma de um Executavel
Requisitos ou Projeto
Reusabilidade de Componentes
Viabilidade Técnica
Implantar o ambiente de surpote
Detalhar Planejamento
Fases do RUP

Grafico
Elaboração

Fases do RUP

Construção/Implementação

Características



Produzir Versões para Beta-Testes
Ênfase na produção de um Software
operacional
Envolve Análise, Projeto e Implementação dos
Requisitos Levantados na Elaboração


80% dos Casos de Uso já foram levantados
A Implementação Finaliza o sistema, atingindo 100%
das funcionalidades implementas
Fases do RUP

Objetivos



Finalizar 100% dos casos de uso
implementados
Testes Unitários
Versão Beta para Intetrgação
Construção

Fases do RUP

Grafico
Construção

Fases do RUP

Transição


Garante que o Software estará Disponivel
aos usuários Finais
Garante a Confiança de que o Software
pode entrar em Produção




Beta-Testes
Pequenos Ajustes
Configuração do ambiente ou software
Questões de Usabilidade ou Instalação
Fases do RUP




Verifica se realmente atende às
necessidades dos usuários e do negócio do
cliente.
Descobri riscos não identificados
anteriormente
Corrigir problemas de Documentação
Focalizar áreas nas quais os usuários
necessitam de melhor treinamento e
informação
Fases do RUP

Grafico
Transição
