Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software...

21
Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira [email protected] http://si.uniminas.br/~marcio/

Transcript of Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software...

Page 1: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Especialização em

Desenvolvimento de Aplicações

WEB

Metodologia de Desenvolvimento de Software – RUP

2. Requisitos

Márcio Aurélio Ribeiro Moreira

[email protected]

http://si.uniminas.br/~marcio/

Page 2: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 2Metodologia de Desenvolvimento de Software - RUP

Requisitos = f( comunicação )

Page 3: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 3Metodologia de Desenvolvimento de Software - RUP

Objetivos da disciplina de requisitos

Estabelecer e manter concordância com os clientes e outros investidores sobre o que o sistema deve fazer.

Oferecer aos desenvolvedores do sistema uma compreensão melhor dos requisitos do sistema.

Definir os limites do sistema (ou delimitar o sistema). Fornecer uma base para planejar o conteúdo técnico

das iterações. Fornecer uma base para estimar o custo e o tempo de

desenvolvimento do sistema. Definir uma interface de usuário para o sistema,

focando nas necessidades e metas dos usuários.

Page 4: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 4Metodologia de Desenvolvimento de Software - RUP

Fluxo de trabalho de requisitos

Page 5: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 5Metodologia de Desenvolvimento de Software - RUP

Objetivos das atividades Análise do problema:

Essa atividade estabelece o acordo sobre o problema a ser resolvido e propõe uma solução de alto nível.

Compreender as necessidades dos envolvidos (lista de funcionalidades): Essa atividade busca entender o que os envolvidos desejam a partir da

solução proposta e define os recursos principais para a solução. Definir o sistema:

Essa atividade destaca os requisitos chave e busca aceitação no escopo do sistema.

Gerenciar o escopo do sistema: Essa atividade assegura que os requisitos do sistema estejam limpos e

estabelece um conjunto gerenciável de trabalhos de requisitos para iteração. Refinar a definição do sistema:

Essa atividade detalha os requisitos a serem desenvolvidos no ciclo atual de desenvolvimento.

Gerenciar requisitos variáveis: Essa atividade gerencia as alterações nos requisitos e avalia seus impactos.

Problema

Soluções

Funcionalidades

Requisitos

Requisitos

Software

Page 6: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 6Metodologia de Desenvolvimento de Software - RUP

A: Analisar o problema

Page 7: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 7Metodologia de Desenvolvimento de Software - RUP

A: Compreender as necessidades dos envolvidos

Page 8: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 8Metodologia de Desenvolvimento de Software - RUP

A: Definir o sistema

Page 9: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 9Metodologia de Desenvolvimento de Software - RUP

A: Gerenciar o escopo do sistema

Page 10: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 10Metodologia de Desenvolvimento de Software - RUP

A: Refinar a definição do sistema

Page 11: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 11Metodologia de Desenvolvimento de Software - RUP

A: Gerenciar requisitos variáveis

Page 12: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 12Metodologia de Desenvolvimento de Software - RUP

Essência da coleta de requisitos

Det

alha

r o

Sis

tem

a

Est

rutu

rar

o S

oftw

are

Modelo de Casos de Uso

Requisitos do Software

Regras de NegócioGlossário de Negócio

Arquitetura do Software

Estrutura de: mercado, processos, pessoas, etc.

Esboço Seqüencial Processo

Pedido dos Envolvidos

Lista deFeatures

Plano Gestão de Requisitos

Como vamos colher, analisare manter os requisitos?

Casos de Uso

Modelo de Domínio

e/ou

Page 13: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 13Metodologia de Desenvolvimento de Software - RUP

P: Plano de gestão de requisitos

Gestão de Requisitos:Organização, Responsabilidades e InterfacesFerramentas, Ambiente e Infra-estruturaIdentificação:

Rastreabilidade: Planilha de rastreabilidadeAtributos de Casos de Uso:

Status: Proposto, Aprovado e ValidadoPrioridade: Baixo, Médio e AltoRisco Técnico: Baixo, Médio e Alto

Atributos de Casos de Teste

Produtos de Trabalho Tipo de Requisito Descrição

Visão Requisitos do Produto Recursos do produto, restrições e outros requisitos do produto.

Modelo de Caso de Uso Caso de Uso Casos de Uso, documentados no Rational Rose

Page 14: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 14Metodologia de Desenvolvimento de Software - RUP

P: Esboço seqüencial

Exemplo 1:

Exemplo 2:

Exemplo 3:

SLR

•Service Level Requirements

•Requisitos de Níveis de Serviços

Spec Sheets

•Service Specification Sheets

•Planilhas de Especificações Técnicas

SLA

•Service Level Agreement

•Acordo de Nível de Serviço

OLA

•Operational Level Agreement

•Acordo de Nível Operacional

UC

•Underpinning Contract

•Contratos de Suporte (apoio)

ContratoAnálise Aprovação

Reprovação

Vendas

Fabricação

Compras Recepção

QualidadeEntregaRecebimento

Gerência daI nterfacecom o...

Adquirirdados

sobre ...

Qualificare EducarClientes

AutorizarCrédito

DeterminarExequibilidade da Orde...

Negociarvendas

EmitirOrdem de

Atendimento

Acompanhar e Gerenciar Ordem deAtendimento

Acompanhar &Gerenciar o

Aprovisionamen...

FecharOrdem de

Atendimento

Vendas Vendas

Processamento de Ordem de Atendimento

Configuração e Ativação

Marketingde

Lançamen...

Faturamento

Gerenciar contade faturamento de

cliente

Prospect

Oportunidade Cotação Proposta Proposta aceita

Ordem do cliente

Contrato

Várias Ordens de Serviço

Lead

Viabilidade

Page 15: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 15Metodologia de Desenvolvimento de Software - RUP

P: Pedido dos envolvidos

Lista de funcionalidades:Lista de Features ouDiagrama de requisitos

Realização das Features:

cd Visão Geral dos Requisitos Suplementares de Negócio

Cumprir prazos e compromissos

Armazenar histórico dos acontecimentos nos serviços advocatícios

Reaproveitar conhecimento

Name:Package:Version:Author:

Visão Geral dos Requisitos Suplementares de NegócioRequisitos Suplementares de Negócio1.0

cd Realização de Histórico dos acontecimentos nos serv iços adv ocatícios

Armazenar histórico dos acontecimentos nos serviços advocatícios

Administrar contrato

Conduzir processo Prestar consultoria

«realize»«realize»«realize»

Name:Package:Version:Author:

Realização de Histórico dos acontecimentos nos serviços advocatíciosHistórico dos acontecimentos nos serviços advocatícios1.0

Page 16: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 16Metodologia de Desenvolvimento de Software - RUP

P: Caso de Uso

Page 17: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 17Metodologia de Desenvolvimento de Software - RUP

Visões arquiteturais

Visões arquiteturais:

Ref.: KRU95, JAC98 e RUP08

Obrigatoriedade das visões:

Usabilidade: Casos de Uso importantes para

estruturação do sistema Lógica:

Subsistemas, pacotes e classes relevantes para o sistema

Processo: Visão do processo de negócio

Parte relevante se tiver simultaneidade

Implementação & Dados: Módulos, pacotes, camadas

arquiteturais e entidades Distribuição (Implantação):

Máquinas (nós de rede) onde o software deve ser instalado

Usabilidade

Lógica

Implementação & Dados

Distribuição (Implantação)

Processo

Visão Obrigatória Razão

Usabilidade Sim Define a arquitetura

Lógica Sim Define a estrutura

Processo Não Use se tiver simultaneidade

ImplementaçãoDados

NãoNão

Use se a implementação ou a persistência não forem projetadas

Distribuição NãoUse se o software for distribuído

Page 18: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 18Metodologia de Desenvolvimento de Software - RUP

P: Documento de arquitetura

Usabilidade Lógica

Page 19: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 19Metodologia de Desenvolvimento de Software - RUP

P: Documento de arquitetura

Processos Implementação (módulos)

Page 20: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 20Metodologia de Desenvolvimento de Software - RUP

P: Documento de arquitetura

Implementação (processos) Distribuição (Implantação)

Page 21: Especialização em Desenvolvimento de Aplicações WEB Metodologia de Desenvolvimento de Software – RUP 2. Requisitos Márcio Aurélio Ribeiro Moreira marcio.moreira@uniminas.br.

Márcio Moreira 2. Requisitos – slide 21Metodologia de Desenvolvimento de Software - RUP

ReferênciasSigla Referência

JAC98Ivar Jacobson, Grady Booch, and James Rumbaugh. The Unified Software Development Process. 1998. Addison Wesley Longman.

KRO03Per Kroll e Philippe Kruchten 2003. The Rational Unified Process Made Easy, A Practitioners Guide to the RUP. Addison Wesley Longman.

KRU95 Philippe Kruchten 1995, "The 4+1 view model of architecture," IEEE Software. 12(6), 1995.

KRU98P. Kruchten; The Rational Unified Process: An Introduction, Object Technology Series, Addison-Wesley, 1998.

MAR05 Márcio Moreira. Resumo do livro Unified Process. Márcio. Uberlândia (MG). 2005.

MAR06Márcio Moreira. Engenharia de Software - RUP . Uniube - Universidade de Uberaba - Uberlândia (MG). 2006.

PRE95 PRESSMAN, R. S. Engenharia de software. São Paulo: Makron Books. 1995.

RUP08IBM Rational. RUP – Rational Unified Process – 7.5 – For Large and Small Projects. 2008. IBM Rational.

SUM07 Sommerville, Ian. Engenharia de Software. 8ª Ed. Pearson / Prentice Hall. 2007.