Você está na página 1de 61

Globalcode open4education 1

Anlise de requisitos com UML


Globalcode open4education 2
Instrutor
Globalcode open4education 3
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 4
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 5
Requisito: condio ou capacidade que um sistema deve
atender.
Requisito funcional: descreve uma funcionalidade que deve
ser fornecida pelo sistema.
Ex: cadastrar novos produtos, gerar relatrio de vendas,etc.
Requisito no funcional: descreve caractersticas do
sistema no relacionadas a funcionalidades.
Ex: performance, escalabilidade, etc.
Conceitos gerais
Globalcode open4education 6
Disciplina da engenharia de software voltada as atividades
relativas a tentar minimizar os riscos relativos a requisitos
Erros nos requisitos so responsveis por 70% a 85% do
custo de retrabalho
Atividades da engenharia de requisitos:
Captura de requisitos
Documentaao e anlise de requisitos
Validao de requisitos
Gerenciamento de mudanas
Engenharia de requisitos
Globalcode open4education 7
Tcnicas para captura/descoberta de requisitos:
Entrevista
Workshop
Brainstorming
Prototipagem
Captura de requisitos
Globalcode open4education 8
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 9
Representam uma unidade funcional fornecida pelo
sistema.
Conceito criado por Ivar Jacobson.
Cada caso de uso captura um ou mais cenrios que
descrevem como o sistema deve interagir com os usurios
para atingir determinada meta ou funcionalidade.
Importncia dos casos de uso:
Modelagem de requisitos funcionais
Estimativa de esforo
Planejamento de testes
Casos de uso
Globalcode open4education 10
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 11
Diagrama da UML utilizado para representao grfica dos
casos de uso.
Seus principais elementos so:
Caso de uso
Ator
Associao
Relacionamento de incluso
Relacionamento de extenso
Generalizao
Diagrama de casos de uso
Globalcode open4education 12
Caso de uso: representado graficamente por uma elipse
com o nome do caso de uso.
Diagrama de casos de uso
Globalcode open4education 13
Ator: representa um papel representado por uma pessoa,
sistema ou dispositivo que interage com o sistema.
Diagrama de casos de uso
Globalcode open4education 14
Associao: representa a interao entre um ator e um
caso de uso.
Diagrama de casos de uso
Globalcode open4education 15
Relacionamento de incluso: relacionamento entre casos
de uso no qual um caso de uso inclui incondicionalmente
outro caso de uso.
Diagrama de casos de uso
Globalcode open4education 16
Relacionamento de extenso: relacionamento entre casos
de uso no qual um caso de uso pode estender a
funcionalidade de outro caso de uso.
Diagrama de casos de uso
Globalcode open4education 17
Generalizao: relacionamento no qual um ator ou caso de
uso possui as mesmas caractersticas de um elemento
base, mais suas caractersticas especficas.
Diagrama de casos de uso
Globalcode open4education 18
Os diagramas de casos de uso visam dois objetivos
principais:
Definio de escopo: permitem que sejam visualizadas
as funcionalidades presentes no sistema.
Identificao de papis: permitem identificar quem
interage com o sistema e a que funcionalidades tem
acesso.
No permitem detalhar os passos necessrios para
implementao da funcionalidade.
Diagrama de casos de uso
Globalcode open4education 19
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 20
Texto que descreve as caractersticas relevantes do caso
de uso.
Apresenta informaes que no podem ser representadas
no diagrama de casos de uso.
Existem diversos modelos de documentos.
Documentos de casos de uso
Globalcode open4education 21
Algumas informaes importantes que devem fazer parte
do documento de caso de uso:
Nome
Contexto: uma breve descrio do caso de uso.
Ator primrio: qual o principal usurio do caso de uso.
Pr-condies: o que se espera que j tenha sido.
realizado antes da execuo do caso de uso.
Documentos de casos de uso
Globalcode open4education 22
Outras informaes importantes:
Ps-condies: condies esperadas no sistema aps a
execuo do caso de uso.
Cenrio principal de sucesso: lista de passos que
devem ser seguidos na situao normal para completar
o caso de uso.
Cenrios alternativos: lista de passos que devem ser
seguidos em situaes anormais ou alternativas.
Documentos de casos de uso
Globalcode open4education 23
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 24
Diagrama da UML utilizado para representar o fluxo de
atividades dentro de um processo.
No contexto da anlise de requisitos, pode ser utilizado
para detalhamento dos passos de um caso de uso.
Semelhantes a fluxogramas.
Diagrama de atividades
Globalcode open4education 25
Atividade: representa uma etapa em um processo.
Diagrama de atividades
Globalcode open4education 26
Transio: fluxo de uma atividade para outra.
Diagrama de atividades
Globalcode open4education 27
Condio de guarda:condio necessria para a realizao
da transio.
Diagrama de atividades
Globalcode open4education 28
Deciso: dependendo de uma condio, mostra as
diferentes transies.
Diagrama de atividades
Globalcode open4education 29
Ponto de juno: mostra a unio de atividades em um nico
fluxo.
Diagrama de atividades
Globalcode open4education 30
Incio e fim: indicam o incio e o trmino do fluxo de
atividades.
Diagrama de atividades
Globalcode open4education 31
Concorrncia: indica atividades executando em paralelo.
Diagrama de atividades
Globalcode open4education 32
Raia: separa as atividades de acordo com o ator que as
executa.
Diagrama de atividades
Globalcode open4education 33
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 34
Estabelecem um conjunto de tarefas para transformar os
requisitos do cliente em um software.
Alguns exemplos:
Modelo cascata
Processo Unificado (UP)
Modelos geis
Processos de desenvolvimento
Globalcode open4education 35
Modelo Cascata
Requisitos
Anlise
Projeto
Implementao
Testes
Globalcode open4education 36
Processo Unificado (UP)
Globalcode open4education 37
Modelos geis
Iterativos e incrementais
Diversas abordagens para requisitos:
Casos de uso (Crystal)
User stories (XP)
Indivduos e interaes Processos e ferramentas
Software funcionando Documentao completa
Colaborao com o
cliente
Negociao de contratos
Resposta a mudanas Seguir um plano
Globalcode open4education 38
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 39
Metodologia para estimativa de esforo de
desenvolvimento de sistemas de software.
Criada por Gustav Karner em 1993.
Baseada no princpio de que o tamanho do software est
relacionado as funcionalidades que o usurio enxerga no
sistema (casos de uso).
Semelhante ao mtodo de pontos de funo.
Pontos de caso de uso
Globalcode open4education 40
A metodologia envolve os seguintes passos:
1. Contagem do nmero de atores (UAW): somam-se os
atores envolvidos em todos os casos de uso aplicando-
se um peso de acordo com sua complexidade.
Classificao Peso Descrio
simples 1 Sistema com API bem definida
mdio 2 Sistema atravs de protocolo de
comunicao
complexo 3 Usurio via interface grfica
Contagem de atores
Globalcode open4education 41
Para um sistema com 1 ator mdio e 4 complexos:
UAW = 1 * 2 + 4 * 3 = 14
Contagem de atores
Globalcode open4education 42
2. Contagem dos casos de uso (UUCW) : somam-se os os
casos de uso aplicando-se um peso de acordo com sua
complexidade.
Classificao Peso Descrio
simples 5 3 ou menos transaes
mdio 10 4 a 7 transaes
complexo 15 Mais de 7 transaes
Contagem de casos de uso
Globalcode open4education 43
Para um sistema com 3 casos de uso simples, 6 mdios
e 1 complexos:
UUCW = 3 * 5 + 6 * 10 + 1 * 15 = 90
Contagem de casos de uso
Globalcode open4education 44
3. Estabelecer o fator de complexidade tcnica (TCF):
calculado aplicando-se um valor de 0 a 5 a cada um dos
fatores tcnicos e multiplicando pelo respectivo peso. O
valor encontrado (Tfactor) aplicado na frmula.
TCF = 0,6 + (0,01*Tfactor)
Fator Peso
Sistema distribudo 2
Tempo de resposta 1
Eficincia do usurio final 1
Processamento complexo 1
Complexidade tcnica
Globalcode open4education 45
Fator Peso
Cdigo reutilizvel 1
Facilidade de instalao 0,5
Facilidade de uso 0,5
Portabilidade 2
Facilidade de mudanas 1
Concorrente 1
Segurana 1
Acesso a sistemas de terceiros 1
Treinamento especial necessrio 1
Complexidade tcnica
Globalcode open4education 46
4. Estabelecer o fator de ambiente (EF): calculado
aplicando-se um valor de 0 a 5 a cada um dos fatores
de ambiente e multiplicando pelo respectivo peso. O
valor encontrado (Efactor) aplicado na frmula.
EF = 1,4 + (-0,03*Efactor)
Fator Peso
Familiaridade com processo 1,5
Experincia em desenvolvimento 0,5
Experincia em OO 1
Capacitao do analista lder 0,5
Fator de ambiente
Globalcode open4education 47
Fator Peso
Motivao 1
Estabilidade dos requisitos 2
Trabalhadores em tempo parcial -1
Linguagem de programao -1
Fator de ambiente
Globalcode open4education 48
5. Aplicar a frmula para o clculo do nmero de pontos
de caso de uso.
UCP = (UAW + UUCW) * TCF * EF
6. Transformar o nmero de pontos calculados em nmero
de horas. O mtodo original recomenda atribuir 20
horas a cada ponto. Experincias de mercado tem
mostrado que este valor fica entre 15 e 30 horas.
Clculo final
Globalcode open4education 49
Conceitos Gerais
Casos de Uso
Diagrama de Casos de Uso
Documentos de Casos de Uso
Diagrama de Atividades
Requisitos e processos de desenvolvimento
Pontos de Caso de Uso
Estudo de Caso
Agenda
Globalcode open4education 50
Apresentamos a seguir um exemplo de utilizao de casos
de uso para um sistema de vendas online.
Sistema de vendas online
Globalcode open4education 51
Diagrama de casos de uso
Globalcode open4education 52
Nome Comprar Produtos (VO-03)
Contexto O ator primrio deseja comprar produtos
oferecidos pelo catlogo da loja online.
Ator primrio Cliente
Pr-condies O cliente est logado no sistema.
Ps-
condies
criado um pedido de compras para o
cliente.
Exemplo de documento para o caso de uso Comprar
Produtos:
Documento de casos de uso
Globalcode open4education 53
Cenrio
principal de
sucesso
1 cliente solicita compra de produtos
2 cliente visualiza catalogo de produtos
(caso de uso VO-02)
3 cliente seleciona produto para compra.
4 sistema adiciona o produto no carrinho
de compras do cliente.
cliente repete passos 3 e 4 at indicar que
terminou
5 cliente efetua pagamento (caso de uso
VO-06).
6 sistema cria um pedido.
7 sistema confirma criao de pedido
para cliente.
Documento de casos de uso
Globalcode open4education 54
Cenrios
alternativos
3a cliente remove um produto da lista de
compras:
.1 sistema remove o produto do
carrinho de compras
4a carrinho de compras inexistente:
.1 sistema cria um carrinho de compras
para o cliente.
volta ao passo 4
Documento de casos de uso
Globalcode open4education 55
1. Contagem de atores: 1 ator complexo
UAW = 1*3 = 3
2. Contagem de casos de uso: 4 casos de uso simples e 4
mdios
UUCW = 4 * 5 + 4 * 10 = 60
Pontos de caso de uso
Globalcode open4education 56
3. Fator de complexidade tcnica :
Fator Peso Valor Valor
ajustado
Sistema distribudo 2 3 6
Tempo de resposta 1 2 2
Eficincia do usurio final 1 1 1
Processamento complexo 1 3 3
Cdigo reutilizvel 1 3 3
Facilidade de instalao 0,5 0 0
Facilidade de uso 0,5 0 0
Pontos de caso de uso
Globalcode open4education 57
Fator Peso Valor Valor
ajustado
Portabilidade 2 1 2
Facilidade de mudanas 1 3 3
Concorrente 1 1 1
Segurana 1 1 1
Acesso a sistemas de terceiros 1 1 1
Treinamento especial necessrio 1 0 0
TCF = 0,6 + (0,01 * 23) = 0,83
Pontos de caso de uso
Globalcode open4education 58
4. Fator de ambiente :
Fator Peso Valor Valor
ajustado
Familiaridade com processo 1,5 3 4,5
Experincia em desenvolvimento 0,5 5 2,5
Experincia em OO 1 5 5
Capacitao do analista lder 0,5 5 2,5
Motivao 1 4 4
Estabilidade dos requisitos 2 4 8
Pontos de caso de uso
Globalcode open4education 59
Fator Peso Valor Valor
ajustado
Trabalhadores em tempo parcial -1 0 0
Linguagem de programao -1 1 -1
EF = 1,4 + (-0,03 * 25,5) = 0,635
Pontos de caso de uso
Globalcode open4education 60
5. Clculo do nmero de pontos de caso de uso:
UCP = (3 + 60) * 0,83 * 0,635 = 33,20
6. Nmero de horas:
estimativa = 33,20 * 20 = 664 horas
Clculo final
Globalcode open4education 61
Alistair Cockburn Escrevendo Casos de Uso Eficazes
Pontos de Casos de Uso Kirsten Ribu
http://www.bfpug.com.br/Artigos/UCP/
Ribu-Estimating_O-O_SW_Projects_with_Use_Cases.pdf
Referncias

Você também pode gostar