• Nenhum resultado encontrado

RUP

N/A
N/A
Protected

Academic year: 2021

Share "RUP"

Copied!
127
0
0

Texto

(1)

RUP – Rational Unified

Process

Jorge Dias Jr.

jorge@dce.ufpb.br

(2)

2

O RUP

Rational Unified Process

Processo

(3)
(4)

4

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(5)

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

(6)

O RUP - Desenvolvimento de Software

Iterativo e Incremental

(7)

O RUP - Desenvolvimento de Software

Iterativo e Incremental

Equívocos graves são evidenciadas no início do ciclo de

vida, quando é possível reagir a eles;

Essa abordagem permite e incentiva feedback dos

usuários, de modo a suscitar necessidades reais do

sistema;

A equipe de desenvolvimento concentra-se nas

questões que são mais críticas para o projeto e tenta

tratar os riscos reais do projeto;

(8)

8

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(9)

O RUP -

Gerenciamento de Requisitos

Comunicações são baseadas em requisitos

definidos;

Requisitos podem ser priorizados, filtrados e

(10)

10

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(11)

O RUP - Uso de Arquitetura Baseada em

Componentes

A arquitetura do sistema compreende o conjunto de

decisões importantes sobre os seguintes elementos:

A seleção dos elementos estruturais e suas interfaces, através

da qual o sistema é composto;

Seu comportamento, conforme especificado pelo colaborações

entre esses elementos.

A arquitetura de software está preocupada não só com a

estrutura e comportamento, mas também com o uso,

funcionalidade, desempenho, robustez,

(12)

12

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(13)

O RUP -

Modelagem Visual

Modelos ajudam a entender a realidade;

Melhora a comunicação entre os stakeholders;

Permite destacar detalhes importantes;

(14)

14

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(15)

O RUP -

Verificação Contínua da

Qualidade

A avaliação do estado do projeto é feita de forma objetiva, não

subjetiva (resultados dos testes);

Esta avaliação objetiva expõe as inconsistências nos requisitos,

(16)

16

O RUP

Segue as boas práticas da Engenharia de

Software

Desenvolvimento de Software Iterativo e

Incremental

Gerenciamento de Requisitos

Uso de Arquitetura Baseada em Componentes

Modelagem Visual

Verificação Contínua da Qualidade

Gerenciamento de Mudanças

(17)

O RUP –

Gerenciamento de Mudanças

O fluxo de trabalho de mudanças de requisitos é

definido e repetível;

As solicitações de mudança facilitam a

comunicação;

(18)
(19)

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(20)

20

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(21)

O RUP – Dividido em Fases

Características

Dividido em Fases

 Concepção  Elaboração  Construção

Concepção

Elaboração

Construção

Transição

tempo

(22)

22

O RUP – Dividido em Fases

Concepção

Objetivos da Fase de Concepção

Definir o escopo do software

Visão do Projeto

O que faz parte e o que não faz parte do produto

Definir os critérios de aceitação do produto final

Descobrir os casos de uso críticos

Estimar por alto o custo e o cronograma de todo

(23)

O RUP – Dividido em Fases

Concepção

Objetivos da Fase de Concepção

Levantar os potenciais riscos

Preparar o ambiente de suporte do projeto

Definir e preparar os processos e ferramentas a serem utilizados

Definir e, eventualmente, demonstrar com protótipos ao

menos um candidato à arquitetura

Avaliar alternativas de projeto

(24)
(25)

O RUP – Dividido em Fases

Concepção

(26)

26

O RUP – Dividido em Fases

Características

Dividido em Fases

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

Concepção

Elaboração

Construção

Transição

tempo

(27)

O RUP – Dividido em Fases

Elaboração

Objetivos da Fase de Elaboração

Detalhar a maioria dos requisitos

Construir a arquitetura do sistema

Que demonstre a capacidade de esta arquitetura acomodar

o resto do sistema

Produzir protótipos evolucionários ou

descartáveis que eliminam riscos de

Requisitos ou projeto

(28)
(29)

O RUP – Dividido em Fases

Elaboração

(30)

30

O RUP – Dividido em Fases

Características

Dividido em Fases

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

Concepção

Elaboração

Construção

Transição

tempo

(31)

O RUP – Dividido em Fases

Construção

Objetivos da Fase de Construção

Produzir a versão para testes

Ênfase na produção de software operacional

Envolve análise, projeto e implementação dos requisitos

Pelo menos 80% dos casos de uso foram levantados

(identificados) e entendidos

Destes, apenas 10-15% são arquiteturalmente relevantes e foram

especificados

(detalhados),

analisados,

projetados

e

implementados

A Construção finaliza o sistema, atingindo 100% das

(32)
(33)

O RUP – Dividido em Fases

Construção

(34)

34

O RUP – Dividido em Fases

Características

Dividido em Fases

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

Concepção

Elaboração

Construção

Transição

tempo

(35)

O RUP – Dividido em Fases

Transição

Objetivos da Fase de Transição

Validar o sistema em relação às expectativas dos usuários

Testes e operacionalização do software (geralmente, em

paralelo com o sistema legado)

Conversão de dados

Treinamento de usuários

(36)
(37)

O RUP – Dividido em Fases

Transição

(38)

O RUP – Dividido em Fases

Esforço ao longo das fases

(39)

O RUP – Dividido em Disciplinas

Modelagem do Negócio

Requisitos

Análise e Projeto

Implementação

Testes

Implantação

Gerência de Configuração

(40)

Modelagem de Negócio

Modelo de negócio: a representação de um

conjunto de atividades – tanto internas (como

planejamento)

quanto

externas

(como

tomada de ação)

– que são executadas para

transformar entradas em saídas, produzindo

trabalho (produto/serviço) nas organizações.

(41)
(42)

42

Modelagem de Negócio

Principais objetivos:

 Entender o negócio (a estrutura e a dinâmica da organização na

qual um sistema deve ser implantado);

 Entender os problemas atuais da organização e identificar as

possibilidades de melhoria;

 Assegurar que os clientes, usuários e desenvolvedores tenham um

entendimento comum da organização e dos seus negócio;

 Documentar os processos de negócio e capturar a relação entre os

seus conceitos;

 Derivar os requisitos de sistema necessários para sustentar a

(43)

Modelagem de Negócio

(44)

Requisitos

Requisitos: são características funcionais

(declarações de serviços que o sistema deve

fornecer) e não funcionais (restrições sobre

os

serviços)

que

o

sistema

precisa

apresentar.

(45)
(46)

46

Requisitos

Principais objetivos:

 Definir as características do sistema conforme observadas pelo

cliente;

 Estabelecer e manter concordância com os clientes e outras partes

interessadas sobre o que o sistema deve fazer;

 Produzir e gerenciar os requisitos do projeto;

 Oferecer ao desenvolvedor um melhor entendimento dos requisitos

do sistema;

 Definir os limites do sistema (Delimitar o escopo);

 Definir uma interface do sistema com o usuário, focando nas

necessidades e objetivos dos usuários;

 Fornecer uma base para planejar o conteúdo técnico das iterações

e estimar o custo e o tempo para desenvolver o sistema;

 Identificar as inconsistências entre os requisitos e os planos de

(47)
(48)

Análise e o Projeto

Análise: foca nos requisitos funcionais do

sistema,

criando

modelos

conceituais,

baseados em conceitos de negócio.

Projeto: foca nos requisitos técnicos do

sistema,

criando

visões

detalhadas,

baseadas na tecnologia que será utilizada.

(49)

Análise e Projeto

(50)

50

Análise e Projeto

Principais objetivos

:

Transformar os requisitos em modelos (abstrato - Análise

e concreto - Projeto) do que o sistema vai ser;

Construir uma arquitetura robusta para o sistema;

Adaptar o projeto às limitações do ambiente de execução.

Com o andamento da análise, o sistema vai sendo

modelado e esta modelagem amadurece até se

transformar no projeto do sistema.

(51)
(52)

Implementação

Implementação: processo de construção de

versões operacionais do sistema ou de parte

dele,

de

modo

a

demonstrar

suas

funcionalidades e características em geral.

(53)

Implementação

(54)

Implementação

Principais objetivos:

Definir a organização do código fonte em termos de subsistemas e

camadas;

Implementar o sistema (codificar) de acordo com os requisitos e o

projeto elaborados;

Assegurar a qualidade do código produzido;

Implementar testes unitários para as funcionalidades desenvolvidas;

Implementar testes de requisitos não funcionais para componentes

arquiteturais;

(55)
(56)

Testes

Teste: avaliação da qualidade do produto,

através de verificação e correção de

problemas e de má interpretação dos

requisitos.

(57)

Testes

(58)

Testes

Principais objetivos:

Verificar se todos os requisitos do sistema foram corretamente

implementados;

Validar se o sistema foi construído como projetado;

Validar se os requisitos foram implementados apropriadamente;

Identificar e documentar falhas (defeitos e problemas) no software;

Assegurar a satisfação do cliente com o produto desenvolvido;

Reduzir custos de manutenção corretiva e retrabalho.

(59)
(60)

Implantação

Implantação: corresponde às atividades de

planejamento, preparação e instalação de

produtos de software no ambiente de

produção.

(61)
(62)

Implantação

Principais objetivos

:

Descrever as atividades de planejamento, preparação e

instalação e testes de produtos de software nos ambientes de

desenvolvimento, homologação e produção;

Migrar dados legados para o novo sistema;

Treinar usuários e equipe de suporte/vendas.

(63)
(64)

Gerência de Configuração

Gerência

de

Configuração:

registra

e

mantém uma trilha das mudanças e da

evolução dos artefatos produzidos pelo

projeto,

que

podem

sofrer

mudanças

decorrentes de correções de falhas, melhoria

de qualidade e inclusão de novos requisitos.

(65)
(66)

Gerência de Configuração

Objetivos

Coordenar os aspectos relacionados à gerência de configuração e

mudanças;

Gerência de configuração:

 Controla os artefatos produzidos no desenvolvimento do projeto;  Evita a ocorrência dos seguintes problemas: Atualizações

simultâneas; Múltiplas versões;

 Mantém a integridade e rastreabilidade da configuração através do

ciclo de vida do sistema.

Gerência de mudanças:

 Lida com a captação e gestão de mudanças solicitadas por

stakeholders internos e externos;

 Trata da análise do impacto potencial da mudança e com a

acompanhamento do que acontece com a mudança até que ela seja concluída.

(67)
(68)

Planejamento e Gerenciamento

Planejamento e Gerenciamento: aplicação de

conhecimentos, habilidades e técnicas na

elaboração de atividades relacionadas para

atingir um conjunto de objetivos

pré-definidos, num certo prazo, com um certo

custo e qualidade, através da mobilização de

recursos técnicos e humanos.

(69)
(70)

Planejamento e Gerenciamento

Objetivos

Fornecer framework para gerenciamento

do projeto;

Auxiliar as atividades de planejamento,

execução,

acompanhamento

e

monitoramento do projeto;

Auxiliar a criação de uma estrutura para

(71)
(72)

Ambiente

Ambiente: define os processos, modelos de

artefatos, guias (de atividades e artefatos) e

ferramentas para a empresa que está

desenvolvendo o sistema.

(73)
(74)

Ambiente

Objetivos

Criar e evoluir processos do projeto (atividades,

artefatos e papéis);

Selecionar,

adquirir,

instalar

e

configurar

ferramentas;

Manutenção da infra-estrutura, processos de

(75)
(76)

76

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(77)

O RUP – Envolve Atividades, Artefatos e

Responsáveis

Características

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 descrição sistemática de como devem ser

(78)

O RUP – Envolve Atividades, Artefatos e

Responsáveis

(79)

Modelagem de Negócio

Principais atividades:

 Conhecer o negócio (cenário atual - nível macro): compreender de forma macro o funcionamento do negócio;

 Identificar processos de negócio (cenário atual): identificar todos os processos (importante para planejar as atividades de modelagem);

 Especificar processos de negócio (cenário atual): documentar os processos (os participantes do negócio e suas funções; as atividades e os fluxos de trabalho; os sistemas envolvidos nos processos);

 Apresentar os artefatos da modelagem de negócio (cenário atual): apresentar e homologar, junto ao cliente/patrocinador, os resultados (artefatos gerados) do trabalho de modelagem de negócio realizado;

 Apresentar proposta de melhorias nos processos de negócio (cenário futuro): apresentar e homologar, junto ao cliente/patrocinador, uma proposta para realizar melhorias/reengenharia nos processos (de forma a apoiar

(80)

80

Modelagem de Negócio

Alguns exemplos de artefatos:

Lista dos processos de negócio;

Especificação textual/diagrama dos processos de

negócio (cenário atual);

Especificação textual/diagrama dos processos de

negócio (cenário futuro);

(81)

Requisitos

Principais atividades:

 Desenvolver Plano de Gerência de Requisitos: especificar a forma

de documentação dos requisitos, as diretrizes de rastreabilidade e a forma de gerenciamento dos requisitos do projeto;

 Realizar estudo de viabilidade: responder se vale a pena ou não

prosseguir com o desenvolvimento do sistema (avalia se o sistema contribui para os objetivos gerais da organização, se pode ser implementado com tecnologia atual e dentro das restrições de custo e prazo, se pode ser integrado a outros sistemas já implantados);

 Elicitar requisitos: coletar requisitos; classificar e organizar

requisitos; priorizar e negociar requisitos; detalhar requisitos; documentar requisitos;

 Validar/revisar requisitos: verificar se os requisitos realmente

(82)

82

Requisitos

Alguns exemplos de artefatos:

 Plano de Gerenciamento de Requisitos;

 Documento de Definição de Requisitos (DDR);

 Diagrama de Casos de Uso;

 Especificações de Casos de Uso;

 Regras de Negócio;

 Regras de Validação;

 Matriz de Rastreabilidade;

(83)

Análise e Projeto

Principais atividades:

Definir modelo conceitual/arquitetura candidata: criar

esboço do modelo conceitual e do esqueleto de pelo

menos uma arquitetura preliminar do sistema (que pode

evoluir ou ser descartada ao longo do projeto); organizar

o sistema em camadas; identificar classes de análise;

Refinar modelo conceitual/arquitetura: fazer a transição

da análise para projeto, descrever o sistema relacionado

a aspectos de runtime (aspecto dinâmico do sistema) e

implantação (aspecto estático do sistema);

Projetar banco de dados: projetar o banco de dados para

(84)

84

Análise e Projeto

Alguns exemplos de artefatos:

 Realização de caso de uso (de Análise);  Documento de arquitetura;

 Mapeamento das classes de Análise em elementos de Projeto;  Diagrama de pacotes;

 Realização de caso de uso (de Projeto);  Diagrama Entidade Relacionamento;  Mapeamento Objeto-relacional;

(85)

Implementação

Principais atividades:

Estruturar o modelo de implementação: definir a

organização do código fonte (organização em camadas,

mecanismos de persistência, comunicação e GUI, por

exemplo);

Codificar

componentes/casos

de

uso:

codificar

componentes/casos de uso necessários e realizar testes

unitários;

Integrar sistema: integrar componentes, dando origem a

(86)

86

Implementação

Alguns exemplos de artefatos:

Implementação dos componentes;

Testes unitários da implementação dos componentes;

Relatórios de testes unitários da implementação dos

componentes;

Roteiros/relatórios de testes não-funcionais da implementação

dos componentes;

Implementação dos casos de uso;

Testes unitários da implementação dos casos de uso;

Relatórios de testes unitários da implementação dos casos de

uso;

Roteiro/relatórios testes não-funcionais da implementação dos

casos de uso;

(87)

Testes

Principais atividades:

Planejar testes: planejar as atividades de teste do projeto (tipos

de teste, previsão de quando e por quem os testes deverão ser

executados);

Especificar, construir e executar testes: especificar e construir

os cenários a serem testados de acordo com os requisitos

funcionais e não funcionais do sistema e testá-los;

 Testes de integração: testam a integração de todos os componentes previstos para a iteração/versão;

Testes funcionais: encontram bugs na construção do software;

 Testes não funcionais: verificam a corretude dos requisitos não funcionais do sistema;

 Testes de sistema: testam o sistema como um todo;

 Testes de aceitação/homologação: feitos pelo usuário final, realizam a aceitação do produto entregue;

(88)

88

Testes

Alguns exemplos de artefatos:

 Plano de Teste;

 Roteiros de Teste Funcionais;

 Relatório de Testes Funcionais;

 Relatório de Testes Não Funcionais;

 Roteiros de Teste de Aceitação/Homologação;

 Relatório de Teste de Aceitação/Homologação;

 Roteiros de Teste de Desempenho;

(89)

Implantação

Principais atividades:

 Planejar implantação: definir as diretrizes usadas para planejar como será realizada a implantação do sistema e garantir que o usuário esteja ciente e comprometido com as atividades de implantação;  Desenvolver material de suporte: desenvolver os artefatos de apoio aos

usuários no processo de instalação, aprendizagem, utilização, operação e sustentação do sistema (documentação, manuais, treinamentos, dentre outros);

 Testar sistema no ambiente de desenvolvimento: testar o sistema no ambiente de desenvolvimento, para verificar se o sistema está pronto para ser implantado;

 Gerar release: empacotar o sistema com todos os artefatos necessários para implantação;

(90)

90

Implantação

Alguns exemplos de artefatos:

 Plano de implantação;

 Release;

 Artefatos de instalação (script, ferramentas, arquivos, guias);

 Documentação;

 Material de apoio, como o manual do usuário, manuais de operação

e manutenção;

 Material de treinamento.

(91)

Gerência de Configuração

Principais atividades:

 Planejar gerência de configuração e mudanças: plano de referência

para o controle sistemático da configuração e das mudanças realizadas no projeto;

 Configurar ambiente de gerência de configuração e mudanças:

preparar o ambiente (criar procedimentos, instalar ferramentas etc.), para que o processo de gerenciamento de configuração e mudanças possa ser desempenhado;

 Criar/alterar e disponibilizar produtos de trabalho: acessar os

artefatos do projeto, realizar mudanças e incorporá-las ao produto;

 Monitorar gerência de configuração e mudanças: monitorar e

reportar as configurações e mudanças no projeto, provendo trilhas de auditoria;

 Gerenciar mudanças: processar (avaliar, analisar impacto e

aprovar) as solicitações de mudança de modo padronizado;

 Gerenciar baselines: gerenciar versões dos artefatos que compõem

(92)

92

Gerência de Configuração

Alguns exemplos de artefatos:

Plano de gerenciamento de configuração e

mudança;

Solicitações de mudança;

(93)

Planejamento e Gerenciamento

Principais atividades:

Planejamento, executar, acompanhar e

monitorar o projeto (escopo, tempo,

(94)

Planejamento e Gerenciamento

Alguns exemplos de artefatos:

Planos e documentos relacionados à

execução,

acompanhamento

e

monitoramento do projeto (escopo,

tempo, custo, riscos, qualidade, recursos

humanos, aquisições, comunicação).

(95)

Ambiente

Principais atividades:

Preparar ambiente para o projeto: definir uma lista

de ferramentas que podem ser utilizadas e

templates de artefatos que serão necessários;

Preparar diretrizes: preparar procedimentos para o

desenvolvimento das atividades do projeto;

Suportar ambiente: prover suporte para os usuários

quanto às dificuldades pertinentes ao ambiente;

Realizar atividades de manutenção: execução das

rotinas

relacionadas

à

infra-estrutura,

como

processos de backup e outras rotinas pertinentes

(96)

96

Ambiente

Exemplo de artefato:

Modelo/processo de desenvolvimento

(97)

O RUP – Envolve Atividades, Artefatos e

Responsáveis

(98)

O RUP – Envolve Atividades, Artefatos e

Responsáveis

Administrador do Sistema Analista de Negócio Analista de Sistemas Analista de Teste Arquiteto de Software Artista gráfico Desenvolvedor do Curso Designer

Designer de Banco de Dados Designer de Interface do Usuário Designer de Negócio Designer de Teste Engenheiro de Processo Especialista em Ferramentas Especificador de Requisitos Gerente de Configuração Gerente de Controle de Mudanças Gerente de Implantação Gerente de Projeto Gerente de Teste Implementador (codificador) Integrador de sistemas Redator Técnico Revisor de Arquitetura Revisor de Design Revisor de Negócio Revisor de Projetos Revisor de Requisitos Revisor do Código Testador

(99)

Modelagem de Negócio

Analista de Negócio

Lidera e coordena a modelagem de negócios, delineando e delimitando

a organização que está sendo modelada;

Por exemplo: estabelece o processo, visão de novos negócios, capta os

objetivos de negócio, e determina que os atores de negócios e

processos de negócios existem e como eles interagem.

Designer de Negócio

Detalha a especificação de uma organização, descrevendo os

processos de negócio;

Determina os trabalhadores e entidades de negócios necessários para

realizar um processo de negócios, e também como eles trabalham

juntos para alcançar a realização.

Define as responsabilidades, operações, atributos e relacionamentos de

(100)

Requisitos

 Analista de Sistemas

 Lidera e coordena elicitação de requisitos e modelagem de casos de uso, delimitando

o sistema e descrevendo suas funcionalidade;  Especificador de Requisitos

 Detalha a totalidade ou parte da funcionalidade do sistema, descrevendo os aspectos

dos requisitos de um ou vários casos de uso;  Arquiteto de Software

 Envolvido principalmente nas primeiras iterações para, juntamente com o Analista de

Sistemas e Especificador de Requisitos, garantir a integridade dos casos de uso significativos para a definição da arquitetura;

 Designer de Interface

 Modela a interface com o usuário, cria protótipos;

 Revisor de Requisitos

 Representa todos os tipos de pessoas que podem verificar se os requisitos são

(101)

Análise e Projeto

 Arquiteto de Software

 Lidera e coordena as atividades técnicas e artefatos ao longo do projeto;

 Estabelece a estrutura geral de cada visão de arquitetura: a decomposição da visão, o

agrupamento de elementos, e as interfaces entre os principais grupos.  Designer

 Define as responsabilidades, operações, atributos e relacionamentos de uma ou várias

classes e determina como devem ser ajustadas ao ambiente de implementação.

 Além disso, o designer pode ter responsabilidade por um ou mais pacotes de design

ou subsistemas de design, incluindo as classes pertencentes aos pacotes ou subsistemas.

 Designer de Banco de Dados

 Responsável pelo banco de dados.

(102)

Implementação

Implementador (codificador)

Desenvolve código e executa testes de unidade;

Integrador de sistemas

Integra o código, construindo as versões do sistema;

Arquiteto de software

Define a estrutura do modelo de implementação

(camadas e subsistemas);

Revisor do código

Inspeciona o código para a qualidade e conformidade

(103)

Testes

 Gerente de Teste

 Tem a responsabilidade global para o sucesso do esforço de teste;

 Responsável pelo planejamento e gestão de recursos e resolução de problemas que

impedem o esforço de teste;

 Analista de Teste

 Responsável por identificar e definir os testes necessários;

 Monitora o progresso dos testes e resultados em cada ciclo de teste;  Avaliar a qualidade global a partir dos resultado das atividades de testes.

 Carrega a responsabilidade de representar adequadamente as necessidades das partes

interessadas que não tenham direta ou regular representação sobre o projeto.

 Designer de Teste

 Responsável por definir a abordagem de teste e garantir a sua execução bem sucedida.  Identifica as técnicas apropriadas, ferramentas e diretrizes para implementar os testes

(104)

Implantação

 Gerente de Implantação

 Planeja e organiza a implantação.

 Responsável pelos testes e feedback, e por garantir que o produto está pronto para

distribuição.

 Gerente de Projeto

 Principal interface com o cliente, sendo responsável pela aprovação de implantação

com base no feedback dos testes e avaliação de resultados;

 Responsável ainda pela aceitação da entrega por parte do cliente;

 Testador

 Executa os testes de aceitação e é responsável por garantir que o produto foi testado

de forma adequada;

 Implementador

 Cria scripts de instalação e artefatos relacionados que irão ajudar o usuário a instalar o

produto final.

 Redator Técnico

 Desenvolve materiais de suporte;

 Desenvolvedor do Curso

 Produz material de treinamento;

 Artista gráfico

 Responsável por criar a arte-final do produto.

(105)

Gerência de Configuração

Gerente de Configuração

Responsável pelas atividades de gerência de configuração

(planejamento, configuração de ambiente e ferramentas, criação da

estrutura de produtos no sistema, auditorias, dentre outras).

Gerente de Controle de Mudanças

Responsável pelas definição do processo de controle de mudanças e

pela execução das atividades de supervisão do controle de mudanças;

Um momento de configuração de mudanças deverá ser composto por

representantes de todas as partes interessadas, incluindo clientes,

desenvolvedores e usuários;

(106)

Planejamento e Gerenciamento

Gerente de Projetos

Responsável pela geração dos manutenção dos

artefatos de Gerência de Projetos.

Revisor de Projetos

Responsável pela revisão dos artefatos de Gerência

(107)

Ambiente

 Engenheiro de processo

 Responsável pela adequação do processo ao projeto;

 Analista de Negócio

 Desenvolve as orientações para a modelagem de negócios;

 Analista de Sistemas

 Desenvolve orientações para modelagem de caso de uso;

 Designer de Interface do Usuário

 Desenvolve orientações para a criação de interface de usuário.

 Designer de Testes

 Desenvolve orientações para a criação de testes.

 Arquiteto de software

 Desenvolve as diretrizes de design e orientações de programação.

 Redator técnico

(108)

108

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(109)

O RUP - Iterativo e Incremental

Cada fase é dividida em iterações:

Inception

Elaboration

Construction

Transition

Transition iteration Preliminary iteration Architect. iteration Architect. iteration Devel.. iteration Devel.. iteration Devel.. iteration Transition iteration

(110)

O RUP – Iterativo e Incremental

Características

Iterativo e incremental

Ciclo de Vida Iterativo

Divide o projeto em partes menores

Mais fáceis de planejar

Mais fáceis de gerenciar

Mais fácil de medir o progresso

Aplicação do “modelo cascata” em várias iterações

As iterações iniciais atacam os riscos mais críticos

Todos começam a trabalhar mais cedo

 Testes e integração são realizados desde o início  Riscos mais críticos são resolvidos mais cedo  Maior feedback dos usuários

(111)

O RUP - Iterativo e Incremental

Iterações

Projetos simples

normalmente têm uma iteração por fase.

Projetos mais complexos

no seu primeiro ciclo de desenvolvimento normalmente

apresentam:

 1 iteração na Concepção  2 iterações na Elaboração  2 iterações na Construção  1 iteração na Transição 

Projetos grandes

em domínios desconhecidos, envolvendo novas tecnologias e

(112)

O RUP - Iterativo e Incremental

(113)
(114)
(115)
(116)
(117)

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(118)

O RUP - Dirigido por Casos de Uso

Requisitos

Análise e

Projeto

Implementação

Testes

Implantação

(119)

O RUP - Dirigido por Casos de Uso

Características

Casos de Uso

Representam as funcionalidades do sistema

Ajudam na comunicação com os clientes

Mostram apenas o que o sistema faz, e não como

Servem como base para

Definir os requisitos do sistema

(120)

O RUP - Dirigido por Casos de Uso

Priorizar os casos de uso que impliquem em mais riscos ao

projeto

Os casos de uso que implicam em riscos ao projeto devem ser

atacados o quanto antes, preferencialmente nas primeiras

iterações.

Priorizar os casos de uso que sejam relevantes para a

Arquitetura do software

A definição de uma arquitetura robusta e capaz de acomodar

todos os requisitos do sistema é primordial para o sucesso do

projeto.

(121)

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(122)

O RUP – Centrado na Arquitetura

Planejar/Definir

Representar/Projetar

Construir/Desenvolver

(123)

O RUP – Centrado na Arquitetura

Características

Arquitetura de Software

A definição da arquitetura é imprescindível para o sucesso do

projeto

Apresenta a visão geral do sistema em termos dos seus

subsistemas e como estes se relacionam

Trata os requisitos não-funcionais (atributos de qualidade:

segurança, performance...) e requisitos funcionais críticos

Identifica e mapeia:

Componentes

(124)

124

O RUP

Características

Dividido em Fases/Disciplinas

Envolve Atividades, Artefatos e Responsáveis

Iterativo e Incremental

Dirigido por Casos de Uso

Centrado na Arquitetura

Tratamento de Riscos

(125)

O RUP – Tratamento de Riscos

Características

Riscos são incertezas que podem conduzir a falhas em um projeto

 Pessoas não são peças mecânicas intercambiáveis  Existem aspectos desconhecidos relativos ao software

Riscos diretos e indiretos

 Diretos: o projeto tem maior controle sobre ele  Indiretos: o projeto não tem controle sobre ele

A abordagem iterativa permite atenuar os riscos mais cedo

 Atributos

 Probabilidade

 Severidade

 Tratamento de riscos

(126)

O RUP – Resumo

Fases

Iterações

Disciplinas

Atividades

Passos

entradas e saídas

guias (de ferramentas ou não), templates

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

Artefatos

(127)

Referências

 Martins, José Carlos Cordeiro. Gerenciando projetos de desenvolvimento de

software com PMI, RUP e UML. Brasport, 3ª edição, 2006.

 Pressman, R. S. Engenharia de Software, Mc-Graw-Hill, 6ª edição, 2006.  Sommerville, I. Engenharia de Software. Addison-Wesley, 8ª edição, 2007.  Scott, K. O Processo Unificado Explicado. Boookman, 2003.

 Beck, K. Programação Extrema (XP) Explicada: Acolha as Mudanças.

Bookman, 2004.

 Ambler, S. W. Modelagem Ágil. Bookman, 2004.

 Kruchten, P. Introdução ao RUP: Rational Unified Process. Ciência Moderna,

Referências

Documentos relacionados

No primeiro, destacam-se as percepções que as cuidadoras possuem sobre o hospital psiquiátrico e os cuidados com seus familiares durante o internamento; no segundo, evidencia-se

No Quadro 2 são apresentados os custos e despesas relacionados a produção de leite da propriedade rural em estudo, no primeiro semestre de 2014 e ainda, a classificação como fixos

A relação entre a identidade organizacional e a competência essencial é pouco explorada pela academia e pelas organizações, porém esta relação pode conferir avanços

Com este trabalho de investigação identificamos as evocações que contribuem para a representação social da equipa multidisciplinar que são: profissionalismo e ajuda como

Este presente artigo é o resultado de um estudo de caso que buscou apresentar o surgimento da atividade turística dentro da favela de Paraisópolis, uma

As principais indicações para a realização foram a suspeita de tuberculose (458 pacientes) e uso de imunobiológicos (380 pacientes).. A maior prevalência de resultado positivo

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

O inquérito civil é o procedimento investigatório que visa informar o Ministério Público acerca do tema, não há possibilidade de condenação neste