32
RUP Prof.ª Elaine B. Figueiredo

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

Embed Size (px)

Citation preview

Page 1: 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

RUP

Prof.ª Elaine B. Figueiredo

Page 2: 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
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

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

Iterativo e Incremental

O 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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

ARQUITETURA DO RUP

 

Page 9: 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

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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 fonte

DocumentosExecutáveis

Diagrama de SeqüênciaDiagrama de colaboração

• Fluxo de trabalho

Page 13: 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

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

O RUP é iterativo e incremental

Page 24: 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

O RUP é guiado por casos de usoOs casos de uso não servem apenas para definir os requisitos do sistema

Vá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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

Organização do RUPFluxos de atividades

Atividades » 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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

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. Visão Geral do RUP Objetivo »Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento

32

Encerramento

Obrigado!

Prof.ª Elaine B. [email protected]

[email protected]