• Nenhum resultado encontrado

RUP Rational Unified Process

N/A
N/A
Protected

Academic year: 2021

Share "RUP Rational Unified Process"

Copied!
32
0
0

Texto

(1)

1

RUP – Rational Unified

Process

Jorge Dias Jr.

jorge@dce.ufpb.br

www.jorgediasjr.com

2

O RUP



Rational Unified Process



Processo



Framework para gerar processos

O RUP

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

(2)

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



Verificação Contínua da Qualidade



Gerenciamento de Mudanças

O RUP - Desenvolvimento de Software

Iterativo e Incremental

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;



A equipe pode aproveitar as lições aprendidas e,

portanto, pode melhorar continuamente o processo;

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

(3)

O RUP - Gerenciamento de Requisitos



Comunicações são baseadas em requisitos

definidos;



Requisitos podem ser priorizados, filtrados e

localizados;



Permite uma avaliação objetiva das

funcionalidade e demais características do

sistema;

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

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,

reutilização, abrangência, economia, limitações

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

(4)

O RUP - Modelagem Visual



Modelos ajudam a entender a realidade;



Melhora a comunicação entre os stakeholders;



Permite destacar detalhes importantes;



Auxilia na obtenção de uma visão geral do sistema;



Documenta decisões tomadas;



Auxilia na entrada de novos integrantes no projeto.

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

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,

projetos e implementações;



Defeitos são identificados mais cedo, reduzindo radicalmente o

custo de corrigi-los.

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

(5)

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;



Estatísticas de taxas de mudança fornecem

medidas objetivas para avaliar o andamento do

projeto;

O RUP

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

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

(6)

21

O RUP – Dividido em Fases



Características



Dividido em Fases

 Concepção (define o escopo do projeto)

 Elaboração (define os requisitos e a arquitetura)

 Construção (desenvolve o sistema)

 Transição (implanta o sistema)

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

tempo

Marco da fase: escopo definido!

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

o projeto

 Estimar em detalhes os custos e cronograma da fase

seguinte (Elaboração)

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

 Que componentes fazer, comprar ou reusar?

(7)

25

O RUP – Dividido em Fases



Concepção

Esforço para algumas disciplinas

26

O RUP – Dividido em Fases



Características



Dividido em Fases

 Concepção (define o escopo do projeto)

 Elaboração (define os requisitos e a arquitetura)

 Construção (desenvolve o sistema)

 Transição (implanta o sistema)

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

tempo

Marco da fase: arquitetura definida!

O RUP – Dividido em Fases



Elaboração



Objetivos da Fase de Elaboração



Capturar 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

(8)

29

O RUP – Dividido em Fases



Elaboração

Esforço para algumas disciplinas

30

O RUP – Dividido em Fases



Características



Dividido em Fases

 Concepção (define o escopo do projeto)

 Elaboração (define os requisitos e a arquitetura)

 Construção (desenvolve o sistema)

 Transição (implanta o sistema)

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

tempo

Marco da fase: funcionalidades 100% implementadas!

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 funcionalidades implementadas

(9)

33

O RUP – Dividido em Fases



Construção

Esforço para algumas disciplinas

34

O RUP – Dividido em Fases



Características



Dividido em Fases

 Concepção (define o escopo do projeto)

 Elaboração (define os requisitos e a arquitetura)

 Construção (desenvolve o sistema)

 Transição (implanta o sistema)

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

tempo

Marco da fase: sistema implantado!

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



Correção de erros, pequenas melhorias, pequenos ajustes

(10)

37

O RUP – Dividido em Fases



Transição

Esforço para algumas disciplinas

O RUP – Dividido em Fases

Esforço ao longo das fases

38

O RUP – Dividido em Disciplinas



Modelagem do Negócio



Requisitos



Análise e Projeto



Implementação



Testes



Implantação



Gerência de Configuração



Planejamento e Gerenciamento



Ambiente

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.

(11)

Modelagem de Negócio

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 organização.

Modelagem de Negócio

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.

(12)

Requisitos

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

projeto e produtos de trabalho.

Requisitos

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.

(13)

Análise e Projeto

Olho

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.

Análise e Projeto

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.

(14)

Implementação

Olho

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;

 Integrar o sistema.

Implementação

Testes

Teste: avaliação da qualidade do produto,

através

de

verificação

e

correção

de

problemas

e

de

interpretação

dos

requisitos.

(15)

Testes

Olho

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.

Testes

Implantação

Implantação: corresponde às atividades de

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

produtos

de

software

no

ambiente

de

produção.

(16)

Implantação

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.

Implantação

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.

(17)

Gerência de Configuração

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.

Gerência de configuração

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.

(18)

Planejamento e Gerenciamento

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

gerenciar risco.

Planejamento e Gerenciamento

Ambiente

Ambiente: define os processos, modelos de

artefatos, guias (de atividades e artefatos) e

ferramentas

para

a

empresa

que

está

desenvolvendo o sistema.

(19)

Ambiente

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

backup e outras rotinas pertinentes.

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

(20)

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

realizadas

O RUP – Envolve Atividades, Artefatos e

Responsáveis



Exemplos de atividades e artefatos...

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 estratégias de inovação ou criar oportunidades de negócio, ou simplesmente otimizar os processos atuais de negócio).

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);

(21)

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 definem o sistema que o usuário deseja;

 Gerenciar requisitos: compreender e controlar as mudanças dos

requisitos.

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;  Glossário de Negócio.

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

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;

(22)

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

uma nova versão do sistema.

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;

 Plano de Integração.

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;

 Analisar resultados e corrigir defeitos: analisar defeitos provenientes das atividades de teste e resolvê-los;

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;  Registros de bugs.

(23)

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;

 Instalar e testar sistema no ambiente de produção: instalar e testar o sistema no ambiente de produção, para que possa ser utilizado pelo cliente;

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. .

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;

Gerência de Configuração



Alguns exemplos de artefatos:



Plano de gerenciamento de configuração e

mudança;



Solicitações de mudança;

(24)

Planejamento e Gerenciamento



Principais atividades:



Planejamento, executar, acompanhar e

monitorar o projeto (escopo, tempo,

custo,

riscos,

qualidade,

recursos

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

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).

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

Ambiente



Exemplo de artefato:



Modelo/processo de desenvolvimento

(25)

O RUP – Envolve Atividades, Artefatos e

Responsáveis



Exemplos de responsáveis/papéis...

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

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 um ou vários trabalhadores de negócios e entidades empresariais.

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

(26)

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.

 Revisor de Arquitetura

 Especialista que analisa os artefatos de arquitetura.

 Revisor de Design

 Especialista que analisa os artefatos de projeto.

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

com o projeto padrão.

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 necessários e orienta sobre os recursos exigidos para o esforço de teste.

 Testador

 Cria e executa os testes, avaliação sua execução,recupera os erros de avaliação dos resultados dos testes e registra pedidos de mudança.

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

(27)

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;

 Integrador

 Aceita mudanças na integração e constrói o produto (gera baseline/release).

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

de Projetos.

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

 Desenvolve guia de estilo para o manual do usuário.

 Especialista em Ferramentas

Seleciona e adquire ferramentas de apoio ao desenvolvimento. elacionadas.

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

(28)

O RUP - Iterativo e Incremental

Cada fase é dividida em iterações:

Marcos: Releases

Inception Elaboration Construction Transition

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

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

 Geralmente resulta em uma versão executável do sistema

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 Iniciaçã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 muitos riscos:

 2 iterações na Iniciação  3 iterações na Elaboração  3 iterações na Construção  2 iterações na Transição

O RUP - Iterativo e Incremental

(29)
(30)

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

O RUP - Dirigido por Casos de Uso

Requisitos Análise e Projeto Implementação Testes Implantação

Os casos de uso conectam esses fluxos

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

Definição/planejamento das iterações

Criação da arquitetura

Definição dos casos de teste

Documentação do usuário

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.

(31)

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

O RUP – Centrado na Arquitetura

Planejar/Definir

Representar/Projetar

Construir/Desenvolver

Inspecionar/Validar

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

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

(32)

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  Identificação  Quantificação  Desenvolvimento de Respostas  Evitar  Transferir

 Aceitar (Mitigar/ Contingenciar - plano B)

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

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, 2003.

Referências

Documentos relacionados

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

Além de serem gravados no cartão, os dados são transmitidos através de um módulo de rádio frequência transmissor para um receptor do modelo, onde há um outro PIC capaz de

São muitos os problemas ambientais causados pelo crescimento urbano, o poder público não acompanha esse crescimento com investimentos em obras de infraestrutura, são ocupados

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

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

A Participação, teve como objetivo praticar aulas de grupo e circuitos, assim como, na sala de exercício estar sempre presente para após uma observação perceber a sua estrutura

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

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