rup prof.ª elaine b. figueiredo

32
RUP Prof.ª Elaine B. Figueiredo

Upload: hao

Post on 20-Mar-2016

60 views

Category:

Documents


3 download

DESCRIPTION

RUP Prof.ª Elaine B. Figueiredo. Objetivo Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento de software), incluindo suas características e seus componentes principais. Visão Geral do RUP. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: RUP Prof.ª Elaine B. Figueiredo

RUPProf.ª Elaine B. Figueiredo

Page 2: RUP Prof.ª Elaine B. Figueiredo
Page 3: RUP Prof.ª Elaine B. Figueiredo

Visão Geral do RUP

Objetivo» Depois desta aula você terá uma visão geral do RUP

(uma metodologia para desenvolvimento de software), incluindo suas características e seus componentes principais.

Page 4: RUP Prof.ª Elaine B. Figueiredo

DEFINIÇÃO

• O RUP(Rational Unified Process) é um processo de desenvolvimento de software que possui um conjunto completo de atividades que define quem faz o que, quando e como.

• Ele usa uma abordagem de orientação a objetos em sua concepção e é projetado e documentado utilizando a notação UML para ilustrar os processos em ação.

• Suas características principais: Iterativo e Incremental• Inicialmente desenvolvido e comercializado pela Rational,

e desde 2003 pertence a IBM.

Page 5: RUP Prof.ª Elaine B. Figueiredo

OBJETIVOS

O objetivo do RUP é assegurar uma produção de alta qualidade de software, que realiza a necessidade do usuário seguindo prazos e orçamento.

Page 6: RUP Prof.ª Elaine B. Figueiredo

Iterativo e IncrementalO RUP utiliza pequenos ciclos de projeto (mini-projetos) que

correspondem à uma iteração e que resultam em um incremento no software. Iterações referem-se a passos e incrementos à evolução do produto.

O UP repete vários ciclos de vida até o término do sistema.Cada ciclo de vida possui 4(quatro) fases.

» Concepção;» Elaboração;» Construção e» Transição

PRINCIPAIS CARACTERÍSTICAS

Page 7: RUP Prof.ª Elaine B. Figueiredo

Concepção: Define o objetivo do projeto e sua viabilidade

Elaboração: Plano do Projeto, especificação de características e definição da linha de base da arquitetura

Construção: Construção do produto Transição: Substituição do antigo sistema e

implantação

FASES DO CICLO DE VIDA

Concepção Elaboração Construção Transição

tempo

Page 8: RUP Prof.ª Elaine B. Figueiredo

ARQUITETURA DO RUP

 

Page 9: RUP Prof.ª Elaine B. Figueiredo

MODELOS E DISCIPLINAS

Modelo de Use Case

Modelo de Análise

Modelo Projeto

Modelo Implantação

Modelo de Implementação

Modelo de Teste

Requisitos

Análise

Design

Implementação

Teste

Page 10: RUP Prof.ª Elaine B. Figueiredo

ESTRUTURA ESTÁTICA

• A parte estática do RUP, é descrita através dos conceitos de papéis, atividades, artefatos e fluxos de trabalho.

 

PAPÉIS

ATIVIDADES

ARTEFATOS

FLUXO DE TRABALHO

define o comportamento e as responsabilidades assumidas por uma pessoa ou um conjunto de pessoas trabalhando em equipe.

tarefa que um indivíduo executa quando está exercendo um determinado papel e produz um resultado importante para o contexto do projeto.

seqüências de atividades que são executadas para a produção de um resultado valioso para o projeto.

pedaço de informação que é produzido, modificado ou utilizado em um processo.

Page 11: RUP Prof.ª Elaine B. Figueiredo

EXEMPLOS

• Artefatos

• Papéis

• Atividades

Analista de sistemaProjetista

Projetista de testes

Planejar uma iteraçãoEncontrar casos de uso e atoresRever o projetoExecutar um teste de performance

Modelo de caso de usoCódigo fonteDocumentosExecutáveis

Diagrama de SeqüênciaDiagrama de colaboração

• Fluxo de trabalho

Page 13: RUP Prof.ª Elaine B. Figueiredo

CONCEPÇÃO E WORKFLOWS

• Requisitos: capturar os requisitos mais críticos (na forma de casos de uso) e definir o escopo do sistema.

• Análise: analisar os requisitos e montar uma proposta para o modelo de classes e objetos, com foco nas classes de negócio, mais o glossário.

• Design: preparar o Modelo de Design ou storyboard,apresentando um rascunho preliminar da arquitetura do sistema: identificar os primeiros componentes, interfaces esubsistemas, assim como o Modelo de Implantação.• Implementação: pode ser necessário criar um

protótipo descartável para demonstrar o caminho escolhido.

• Testes: criar primeiros esboços de teste com base nas informações já adquiridas.

Page 14: RUP Prof.ª Elaine B. Figueiredo

ELABORAÇÃO E WORKFLOWS

• Requisitos: encontrar, priorizar, detalhar e estruturar os Casos de Uso, obtendo aproximadamente 80% dos requisitos.

• Análise: detalhar as classes de negócio, fazer o particionamento em pacotes, atualizar o glossário e refinar os Casos de Uso.

• Design: fazer o design dos Casos de Uso, classes e subsistemas para estabelecer uma estrutura básica do sistema. Pacotes de análise e subsistemas de design, são importantes. São considerados: sistema operacional, linguagem, banco de dados, distribuição de objetos, etc..

• Implementação: implementar e testar os componentes arquiteturalmente significantes. Eventualmente criar protótipos para testar alguma nova tecnologia.

• Testes: planejar e especificar os testes, definindo casos de teste e rotinas de teste.

 

Page 15: RUP Prof.ª Elaine B. Figueiredo

CONSTRUÇÃO E WORKFLOWS

Requisitos: capturar os requisitos remanescentes, refinando Casos de Uso e cenários.

Análise: capturar algum detalhe que passou despercebido nas classes pertinentes ao negócio.

Design: refinar os casos de uso e cenários remanescentes com base na tecnologia utilizada.

Implementação: codificar e integrar componentes, priorizando os casos de uso mais importantes.

Testes: testar funcionalidades e performance do sistema. Se necessário testar novos casos e rotinas de teste.

Page 16: RUP Prof.ª Elaine B. Figueiredo

TRANSIÇÃO E WORKSFLOWS

Requisitos: eventual correção da documentação devido a bugs encontrados no sistema.

Análise: eventual correção do modelo de análise devido a bugs encontrados no sistema.

Design: eventual correção do modelo de design devido a bugs encontrados no sistema.

Implementação: eventual correção do código devido a bugs encontrados no sistema.

Testes: eventual correção do modelo de teste devido a bugs encontrados no sistema.

Page 17: RUP Prof.ª Elaine B. Figueiredo

O que é o RUP? O nome é uma abreviação de Rational Unified Process

» mas na verdade é Processo + Métodos + Linguagem (UML)

» e os autores argumentam que é Framework para gerar processos

Page 18: RUP Prof.ª Elaine B. Figueiredo

O que é o RUP?Conjunto de atividades

» bem definidas » com responsáveis» com artefatos de entrada e saída» com dependências entre as mesmas e ordem de execução» com modelo de ciclo de vida» descrição sistemática de como devem ser realizadas» guias (de ferramentas ou não), templates» utilizando diagramas de UML

Page 19: RUP Prof.ª Elaine B. Figueiredo

Características Principais do RUP O desenvolvimento de sistemas seguindo o RUP é» Iterativo e incremental» Guiado por casos de uso (use cases)» Baseado na arquitetura do sistema

Page 20: RUP Prof.ª Elaine B. Figueiredo

O RUP é iterativo e incremental

O ciclo de vida de um sistema consiste de quatro fases:

Concepção (define o escopo do projeto) Elaboração (detalha os requisitos e a arquitetura) Construção (desenvolve o sistema) Transição (implanta o sistema)

tempo

concepção elaboração construção transição

Page 21: RUP Prof.ª Elaine B. Figueiredo

O RUP é iterativo e incremental

Cada fase é dividida em iterações:

Minor Milestones: Releases

Inception Elaboration Construction Transition

Transitioniteration

Preliminaryiteration

Architect.iteration

Architect.iteration

Devel..iteration

Devel..iteration

Devel..iteration

Transitioniteration

Page 22: RUP Prof.ª Elaine B. Figueiredo

O RUP é iterativo e incrementalCada iteração

» é planejada» realiza uma sequencia de atividades (de elicitação de requisitos, análise e projeto, implementação, etc.) distintas» geralmente resulta em uma versão executável do sistema» é avaliada segundo critérios de sucesso previamente definidos

Page 23: RUP Prof.ª Elaine B. Figueiredo

O RUP é iterativo e incremental

Page 24: RUP Prof.ª Elaine B. Figueiredo

O RUP é guiado por casos de usoOs casos de uso não servem apenas para definir os requisitos do sistemaVárias atividades do RUP são guiadas pelos casos de uso:

» planejamento das iterações » criação e validação do modelo de projeto» planejamento da integração do sistema» definição dos casos de teste

Page 25: RUP Prof.ª Elaine B. Figueiredo

O RUP é baseado na arquitetura do sistemaArquitetura

» visão geral do sistema em termos dos seus subsistemas e como estes se relacionam• A arquitetura é prototipada e definida logo nas primeiras iterações• O desenvolvimento consiste em complementar a arquitetura• A arquitetura serve para definir a organização da equipe de desenvolvimento e identificar oportunidades de reuso

Page 26: RUP Prof.ª Elaine B. Figueiredo

Organização do RUPFluxos de atividadesAtividades

» passos» entradas e saídas» guias (de ferramentas ou não), templates

Responsáveis (papel e perfil, não pessoa)Artefatos

Page 27: RUP Prof.ª Elaine B. Figueiredo

Exemplo de Fluxo: Planejamento e Gerenciamento

Gerente de projeto

Arquiteto

Contratante

Iniciar Projeto

Aprovar Projeto

Estudar Viabilidade

Atestar Conclusão do Projeto

Identificar Riscos

Desenvolver Plano de Projeto

Desenvolver Plano de Iteração

Executar Plano de Iteração

Avaliar Iteração

Finalizar Projeto

Reavaliar Riscos

Priorizar Casos de

Uso

Page 28: RUP Prof.ª Elaine B. Figueiredo

ResumoO RUP é:• iterativo e incremental• guiado por casos de uso• baseado na arquitetura do sistema• organizado em fases, iterações, fluxos, atividades e passos

Page 29: RUP Prof.ª Elaine B. Figueiredo

CONCLUSÃO

Com a utilização de uma metodologia de desenvolvimento de software como o RUP, é possível obter:

• Qualidade de software;

• Produtividade no desenvolvimento, operação e manutenção de software;

• Controle sobre desenvolvimento dentro de custos, prazos e níveis de qualidade desejados;

• Estimativa de prazos e custos com maior precisão.

 

Page 30: RUP Prof.ª Elaine B. Figueiredo

ReferênciasIvar Jacobson, Grady Booch e James Rumbaugh. The Unified Software Development Process. Capítulos 1 a 5.Philippe Kruchten. The Rational Unified Process – an Introduction.

Page 31: RUP Prof.ª Elaine B. Figueiredo

REFERÊNCIAS

Sites na internet » http://javafree.uol.com.br/artigo/871455/Obtendo-Qualidade-de-Software-com-o-RUP.html» http://www.wthreex.com/rup/portugues/index.htm

Publicações sobre o assunto» Apostila de RUP, disponível em: http://www.analisetotal.com.br/Material/RUP/AulaRUP.pdf» Processo Unificado RUP.pdf, disponível em: http://www.laps.ufpa.br/yomara/paginav2/aps/processo

%20unificado%20rup.pdf

Page 32: RUP Prof.ª Elaine B. Figueiredo

32

Encerramento

Obrigado!

Prof.ª Elaine B. [email protected]

[email protected]