02 - Introducao ao RUP

Preview:

Citation preview

Processo de Desenvolvimento e RUP

Requisitos de SoftwareLevantamento, Análise e Gestão

Tópico 2 - Introdução ao RUP

O que é Processo de Desenvolvimento?

O que é RUP?

Principais Características do RUP

Conceitos ImportantesDisciplinas Fases Iterações

Papéis Atividade Artefatos

Tópico 2 - Introdução ao RUP

O que é Processo de Desenvolvimento?

O que é RUP?

Principais Características do RUP

Conceitos Importantes

Processo de Desenvolvimento

O que é?

Processo de Desenvolvimento é um conjunto de passos ordenados que devem ser seguidos para se atingir um determinado objetivo.

O objetivo na Engenharia de Processos é desenvolver ou melhorar um modelo de processo.

O objetivo na Engenharia de Software é um produto de software novo ou a evolução de um já existente.

Processo de Desenvolvimento

O que é?

Um processo define Quem faz O Que, Quando e Como, a fim de atingir um determinado objetivo.

O processo envolve métodos, técnicas, ferramentas e pessoas

Processo de engenharia de software

Requisitos novos ou alterados

Sistema novo ou alterado

Processo de Desenvolvimento

Para que serve?

O trabalho organizado permite maior controle sobre os resultados.

O trabalho padronizado torna-se mais previsível, possibilitando a monitoração dos riscos e consequentemente a sua mitigação.

Permite a execução do trabalho de forma impessoal, ou seja, terá o mesmo resultado independente de quem executa.

Níveis de maturidade garantem a execução dos serviços por meio de processos consolidados e formalizados.

Tópico 2 - Introdução ao RUP

O que é Processo de Desenvolvimento?

O que é RUP?

Principais Características do RUP

Conceitos Importantes

Rational Unified Process - RUP

Definição

O RUP é um framework para criação de um processo de desenvolvimento de software e, como tal, descreve os papéis e as atividades que cada membro da equipe de projeto deve desempenhar ao longo do ciclo de desenvolvimento do software e os produtos que devem ser gerados como resultado destas atividades, os chamados artefatos.

Rational Unified Process - RUP

Definição - continuação

Baseado num conjunto de princípios para o desenvolvimento de software bem-sucedido.

Completo o suficiente para abranger uma grande faixa de tipos de projeto.

Define uma estrutura de processo que deve ser customizada para o projeto.

Base de conhecimento apresentada como um portal web.

Serve como guia para as atividades do ciclo de vida do software.

Rational Unified Process - RUP

Estrutura

Visão Dinâmica(ciclo de vida)

Visão Estática(disciplinas)

Tópico 2 - Introdução ao RUP

O que é Processo de Desenvolvimento?

O que é RUP?

Principais Características do RUP

Conceitos Importantes

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Desenvolvimento IterativoProcesso Cascata

Código e Teste

Design

Integraçãodos Módulos

Teste de Sistema

Análise de Requisitos

Planejamento Demora na confirmação e resolução

de riscos críticos. Mensura progresso por produto

entregue que são indicadores ruins para avaliar progresso.

Demora nas integrações e testes. Implantações no final. Frequentemente resulta em

iterações maiores e não planejadas.

RUP – Principais Características

Desenvolvimento IterativoIterações

Resolve os maiores riscos antes que haja custos. Facilita maior interação e feedback do usuário. Faz teste e integração contínua. Foca em marcos de projeto curtos e objetivos. Torna possível a entrega parcial de executáveis.

T E M P OT E M P O

Iteração 1 Iteração 2 Iteração 3

PR

DC

IT

PR

DC

IT

PR

DC

IT

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Gerenciamento de Requisitos

Tenha certeza que está resolvendo o problema certo e entregando o sistema certo.

Para ter uma ação completa:

Entenda o Problema.

Detalhe, organize, e documente os requisitos.

Gerencie as mudanças de requisitos do sistema.

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Arquitetura Componentizada

System-System-softwaresoftware

MiddlewareMiddleware

Business-Business-specificspecific

Application-Application-specificspecific

Baseada em componentes

Reuso ou customização de componentes.

Escolha de componentes comerciais disponíveis.

Integra o sistema existente incrementalmente.

RUP – Principais Características

Arquitetura Componentizada

Resiliente (flexível)Atende aos requisitos atuais e futuros.Melhora a extensibilidade.

Promove o Reuso.

Diminui a complexidade.

Ajuda a manter a integridade do sistema.

Serve de base para o gerenciamento do projeto.

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Modelar Visualmente

Captura estrutura e comportamento do sistema. Apresenta a colaboração entre os elementos. Mantém design e implementação consistentes. Esconde ou expõe detalhes conforme a necessidade. Promove a comunicação não ambígua.

Diagramas deAtividade

Modelos

Diagramas Estáticos

Diagramas de Sequência

Diagramas de Colaboração

Diagramasde Estado

Diagramas deDeployment

Diagramas de Componente

Diagramas deObjetos

Diagramas de Classes

Diagramas de Casos de Uso

Diagramas Dinâmicos

UML

Permite diferentes visões.

Possui sintaxe e semântica precisa.

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Verificação Contínua da Qualidade

Custo

TransiçãoConstruçãoElaboraçãoConcepção

Problemas de Software são de100 a 1000 vezes mais caro

se encontrados e consertados depois de instalados

Custo para consertar Software

Custo com a perda de oportunidades

Custo com a perda de clientes

RUP – Principais Características

Verificação Contínua da Qualidade

Testes de todos os cenários. Testes de performance. Testes de confiabilidade. Teste em todas as iterações.

Modelo UMLe

Implementação

Testes

Iteração 1Iteração 1

Test Suite 1Test Suite 1

Iteração 2Iteração 2

Test Suite 2Test Suite 2

Iteração 3Iteração 3

Test Suite 3Test Suite 3 Test Suite 4Test Suite 4

Iteração 4Iteração 4

RUP – Principais Características

Melhores Práticas

Desenvolver Iterativamente

Gerenciar Requisitos

Utilizar Arquiteturas Componentizadas

Modelar Visualmente (UML)

Verificação Contínua da Qualidade

Gerenciar Mudanças

RUP – Principais Características

Gerenciar Mudanças

Controlar “quando” e “como” as mudanças são introduzidas nos artefatos do projeto.

Controlar “quem” introduz as mudanças.

Sincronizar as mudanças entre os membros da equipe.

Manter a integridade dos artefatos.

Requer processo disciplinado.

RUP – Principais Características

Gerenciar Mudanças

Entradas do Help Desk

Entradas dos Desenvolvedores e Testadores

Entradas dos Usuários e Clientes

Marketing

Nova Característica

Novo Requisito

Bug

Processo deAprovação

das Requisiçõesde Mudança

Comitê de Controle(CCM)

Canal Único deAprovação

Solicitação de Mudança

Reqt

Design

Código

Teste

Maint

RUP – Principais Características

Versão 2003

MelhoresPráticas

F

E D

C B

A Adaptar o ProcessoBalancear as Prioridades dos StakeholdersColaboração entre as equipeDemonstrar valor iterativamenteElevar o Nível de AbstraçãoFoco na Qualidade Contínua

Versão 7.0

Princípios-Chave parao Desenvolvimento

Tópico 2 - Introdução ao RUP

O que é Processo de Desenvolvimento?

O que é RUP?

Principais Características do RUP

Conceitos Importantes

ConcepçãoConcepção ElaboraçãoElaboração ConstruçãoConstrução TransiçãoTransição

Marco dos Objetivos do

Ciclo de Vida (LCO)

Marco daArquitetura do Ciclo de Vida

(LCA)

Marco de Recurso

OperacionalInicial (IOC)

Release do

Produto

RUP – Conceitos Importantes

Fases

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

Lidar com os riscos relacionados ao processo de negócio.

(parte financeira do projeto)

Lidar com os riscos relacionados aos riscos técnicos do projeto.

Lidar com os riscos relacionados a “ter a massa de trabalho pronta.”

Lidar com os riscos relacionados a logística de implantação da aplicação para sua base de usuários.

Tempo

RUP – Conceitos Importantes

Fases

Modelagem de Negócio Requisitos Análise & Design Implementação Teste Disponibilização Gerenciamento de Configuração e Mudança Gerenciamento de Projeto Ambiente

RUP – Conceitos Importantes

Disciplinas

Disciplinas agrupam atividades

logicamente.

Em uma iteração, você

passa por todas as

disciplinas.

RUP – Conceitos Importantes

Disciplinas

Recursos

Paul

Mary

Joe

Sylvia

Stefan

Papéis

Designer

Requirements Specifier

System Analyst

Implementer

Architect

Atividades

Define Operations

Detail a Use Case

Find Actors and Use Cases

Perform Unit Tests

Identify Design Mechanisms

RUP – Conceitos Importantes

Papéis

RUP – Conceitos Importantes

Artefatos

Onde o problema é definido?Onde os stakeholders e usuários são listados?Onde os ambientes e plataformas são identificadas?

Onde os casos de uso são mantidos?

Onde o vocabulário comum está descrito?

Especificações de Caso de uso

Glossário

Especificação Suplementar

Onde os requisitos não funcionais estão localizados?

Onde as Necessidades e Requisições dos stakeholders são capturadas? Requisições do

Stakeholder

Visão

RUP – Conceitos Importantes

Artefatos da Disciplina de Requisitos

RUP – Conceitos Importantes

Como tudo se relaciona...

Navegação no RUP

15 minutos.

Atividade

Fim!