Académique Documents
Professionnel Documents
Culture Documents
Objetivos
Descrever os conceitos referente aos casos de uso. Introduzir tcnicas para a identificao dos casos de uso. Descrever validao dos casos de uso para requisitos elicitados. Discutir o gerenciamento dos casos de uso.
Introduo
O modelo de casos de uso uma representao das funcionalidades externamente observveis do sistema e dos elementos externos ao sistema que interagem com o mesmo. O modelo de casos de uso modela os requisitos funcionais do sistema.
Introduo
O diagrama da UML utilizado na modelagem de casos de uso o diagrama de casos de uso. Este modelo direciona diversas das tarefas posteriores do ciclo de vida do sistema de software. Alm disso, o modelo de casos de uso fora os desenvolvedores a moldar o sistema de acordo com o usurio.
Copyright 2002, 2003 Eduardo Bezerra 4
Casos de uso
Um caso de uso a especificao de uma sequncia de interaes entre um sistema e os agentes externos. Define parte da funcionalidade de um sistema, sem revelar a estrutura e o comportamento internos deste sistema. Um modelo de casos de uso tpico formado de vrios casos de uso.
Casos de uso
Um caso de uso representa quem faz o que (interage) com o sistema, sem considerar o comportamento interno do sistema.
Componentes do modelo
O modelo de casos de uso de um sistema composto de:
Cenrios Atores Casos de uso Relacionamentos entre os elementos anteriores.
Cenrios
Um caso de uso tem diversas maneiras de ser realizado. Um cenrio a descrio de uma das maneiras pelas quais um caso de um pode ser realizado. Um cenrio tambm chamado de instncia de um caso de uso. Normalmente h diversos cenrios para um mesmo um caso de uso. teis durante a modelagem de interaes.
Copyright 2002, 2003 Eduardo Bezerra 8
Cenrios
Um Cliente telefona para a empresa. Um Vendedor atende ao telefone. Cliente declara seu desejo de fazer um pedido de compra. Vendedor pergunta a forma de pagamento. Cliente indica que vai pagar com carto de crdito. Vendedor requisita o nmero do carto, a data de expirao e o endereo de entrega. Vendedor pede as informaes do primeiro item. Cliente fornece o primeiro item. Vendedor pede as informaes do segundo item. Cliente fornece o segundo item Vendedor pede as informaes do terceiro item Cliente e informa o terceiro item. Vendedor informa que o terceiro item est fora de estoque. Cliente pede para que O Vendedor feche o pedido somente com os dois primeiros itens. Vendedor fornece o valor total, a data de entrega e uma identificao do pedido. Cliente agradece e desliga o telefone. Vendedor contata a Transportadora para enviar o pedido de O Cliente.
Atores
Os atores representam os papis desempenhados pelos diversos usurios que podero utilizar o sistema Um ator pode representar um hardware especial ou mesmo outro sistema Em suma: qualquer agente externo que interaja com o sistema
Atores
Categorias de atores:
pessoas (Empregado, Cliente, Gerente, Almoxarife, Vendedor, etc); organizaes (Empresa Fornecedora, Agncia de Impostos, Administradora de Cartes, etc); outros sistemas (Sistema de Cobrana, Sistema de Estoque de Produtos, etc). equipamentos (Leitora de Cdigo de Barras, Sensor, etc.)
Copyright 2002, 2003 Eduardo Bezerra 11
Representao de Atores
Atores
Um ator corresponde a um papel representado em relao ao sistema.
O mesmo indivduo pode ser o Cliente que compra mercadorias e o Vendedor que processa vendas. Uma pessoa pode representar o papel de Funcionrio de uma instituio bancria que realiza a manuteno de um caixa eletrnico, mas tambm pode ser o Cliente do banco que realiza o saque de uma quantia.
O nome dado a um ator deve lembrar o seu papel, ao invs de lembrar quem o representa.
Copyright 2002, 2003 Eduardo Bezerra 13
Exemplo: para que o Usurio (ator primrio) requisite uma pgina a um Browser (sistema), um outro ator (secundrio) est envolvido, o Servidor Web.
Copyright 2002, 2003 Eduardo Bezerra 14
Casos de Uso
Referem-se aos servios, tarefas ou funes que podem ser utilizadas de alguma maneira pelos usurios do sistema Representados na forma de elipses com texto interno descrevendo a que servio o caso de uso se refere
Descries narrativas
Cada caso de uso definido atravs da descrio narrativa das interaes que ocorrem entre o(s) elemento(s) externo(s) e o sistema. H vrias formas de se descrever casos de uso.
Descrio Contnua Descrio Numerada Descrio Particionada Descrio por Diagramas
16
17
Sistema
Apresenta solicitao de senha.
19
Reservar Livro
Usurio
Relacionamento de comunicao
Copyright 2002, 2003 Eduardo Bezerra 20
Detalhamento
O grau de detalhamento a ser utilizado na descrio de um caso de uso tambm pode variar. Um caso de uso sucinto descreve as interaes sem muitos detalhes. Um caso de uso expandido descreve as interaes em detalhes.
21
Grau de abstrao
O grau de abstrao de um caso de uso diz respeito existncia ou no de meno tecnologia a ser utilizada na descrio deste caso de uso. Um caso de uso essencial no faz meno tecnologia a ser utilizada. Um caso de uso real apresenta detalhes da tecnologia a ser utilizada na implementao deste caso de uso .
Copyright 2002, 2003 Eduardo Bezerra 22
Grau de abstrao
Exemplo de descrio essencial (e numerada):
1) Cliente fornece sua identificao. 2) Sistema identifica o usurio. 3) Sistema fornece operaes disponveis. 4) Cliente solicita o saque de uma determinada quantia. 5) Sistema fornece a quantia desejada da conta do Cliente. 6) Cliente recebe dinheiro e recibo.
23
24
Notao
A notao para um ator em um DCU a figura de um boneco
Cada caso de uso representado por uma elipse.
com o nome do ator definido abaixo desta figura. O nome do caso de uso posicionado abaixo ou dentro da elipse.
Um relacionamento de comunicao representado por um segmento de reta ligando ator e caso de uso. Pode-se tambm representar a fronteira do sistema em um diagrama de casos de uso.
Copyright 2002, 2003 Eduardo Bezerra
25
Exemplo (Notao)
Ator Caso de uso
Reservar Livro
Usurio
Relacionamento de comunicao
Copyright 2002, 2003 Eduardo Bezerra 26
Exemplo (Notao)
Sistema de Vendas de Livros por Correio Vendedor Realizar Pedido
Cliente
Empresa Transportadora
27
Notao
Os relacionamentos de incluso, extenso e herana so representados por uma seta direcionada de um caso de uso para outro. A seta (tracejada) de um relacionamento de incluso recebe o esteretipo <<inclui>>. A seta (tracejada) de um relacionamento de extenso recebe o esteretipo <<estende>>. A seta (slida) de um relacionamento de herana no recebe esteretipo.
28
Notao
Obter Extrato inclui
Fornecer Identificao
29
Notao
Reservar Livro
Notao
31
Associaes
Representam as interaes ou relacionamentos entre:
Os casos de uso
Comunicao Incluso Extenso Generalizao/Especializao
Exemplo de Associaes
Associaes
As associaes entre atores e casos de uso podem conter setas indicando a navegabilidade desta
Sentido em que as informaes trafegam
Relacionamento de comunicao
Representa a informao de quais atores esto associados a que casos de uso O fato de um ator estar associado a um caso de uso significa que esse ator interage (troca informaes) com o sistema. Um ator pode se relacionar com mais de um caso de uso. o mais comum dos relacionamentos.
Copyright 2002, 2003 Eduardo Bezerra 35
Relacionamento de Incluso
Utilizado quando existem servios utilizados por mais de um caso de uso. Evita-se, portanto descrever uma mesma seqncia de passos em mais de um caso de uso
Relacionamento de Incluso
Os relacionamentos de incluso indicam uma obrigatoriedade
Quando um caso de uso A possui relacionamento de incluso com outro caso de uso B, a execuo de A implica na execuo de B Pode ser comparado com a chamada de uma subrotina
Relacionamento de incluso
Existe somente entre casos de uso. Quando dois ou mais casos de uso incluem uma seqncia de interaes comum, esta seqncia comum pode ser descrita em um outro caso de uso.
38
Relacionamento de incluso
Vantagem:
evita a descrio de uma mesma sequncia de interaes mais de uma vez. torna a descrio dos casos de uso mais simples.
39
Relacionamento de incluso
Um exemplo: considere um sistema de controle de transaes bancrias. Alguns casos de uso deste sistema so Obter Extrato, Realizar Saque e Realizar Deposito.
H uma seqncia de interaes em comum: a seqncia de interaes para validar a senha do cliente.
40
Relacionamento de Incluso
Relacionamento de Incluso
Relacionamento de Extenso
Utilizadas para descrever cenrios opcionais em um caso de uso Os casos de uso entendidos descrevem cenrios que somente ocorrero em um situao especfica, se uma condio for satisfeita
Relacionamento de extenso
Cada uma das diferentes sequncias representa um comportamento opcional, que s ocorre sob certas condies ou cuja realizao depende da escolha do ator.
44
Relacionamento de Extenso
Relacionamento de extenso
Quando um ator opta por executar a sequncia de interaes definida no extensor, este executado.
Aps a sua execuo, o fluxo de interaes volta ao caso de uso estendido, recomeando logo aps o ponto em que o extensor foi inserido.
46
Relacionamento de extenso
Exemplo: considere um processador de textos. Considere que um dos casos de uso deste sistema seja Editar Documento. No cenrio tpico deste caso de uso, o ator abre o documento, modifica-o, salva as modificaes e fecha o documento. Mas, em outro cenrio, o ator pode desejar que o sistema faa uma verificao ortogrfica no documento. Em outro, o ele pode querer realizar a substituio de um fragmento de texto por outro.
Copyright 2002, 2003 Eduardo Bezerra 47
Relacionamento de extenso
estende Substituir Texto
48
Relacionamento de extenso
Interaes de Substituir Texto:
1. Em qualquer momento durante Editar Documento, o ator pode optar por substituir um fragmento de texto por outro. 2. O ator fornece o texto a ser substitudo e o texto substituto. 3. O ator define os parmetros de substituio (substituir somente palavras completas ou ocorrncias dentro de palavras; substituir no documento todo ou somente na parte selecionada; ignorar ou considerar letras maisculas e minsculas). 4. O sistema substitui todas as ocorrncias encontradas no texto.
Copyright 2002, 2003 Eduardo Bezerra 49
Pontos de Extenso
Identifica um ponto no comportamento de um CDU a partir do qual esse comportamento poder ser estendido pelo comportamento de um outro caso de uso, se a condio para que isto ocorra for satisfeita
Pontos de Extenso
Pontos de Extenso
Relacionamento de Generalizao/Especializao
Relaciona casos de uso com caractersticas semelhantes e pequenas diferenas entre si
Nesses casos definido um caso de uso geral e definir casos de uso que so especializaes deste Evita-se a redao das partes genricas em mais de um caso de uso, a redao dos casos de uso especializados se concentra nas diferenas
Relacionamento de generalizao
Relacionamento no qual o reuso mais evidente. Este relacionamento permite que um caso de uso (ou um ator) herde caractersticas de um caso de uso (ator) mais genrico. O caso de uso (ator) herdeiro pode especializar o comportamento do caso de uso (ator) base. Pode existir entre dois casos de uso ou entre dois atores.
Copyright 2002, 2003 Eduardo Bezerra 55
Relacionamento de generalizao
Na generalizao entre casos de uso, sejam A e B dois casos de uso.
Quando B herda de A, as seqncias de comportamento de A valem tambm para B. Quando for necessrio, B pode redefinir as seqncias de comportamento de A. Alm disso, B participa em qualquer relacionamento no qual A participa.
Vantagem: comportamento do caso de uso original reutilizado pelos casos de uso herdeiros.
Somente o comportamento que no faz sentido ou diferente para um herdeiro precisa ser redefinido.
Copyright 2002, 2003 Eduardo Bezerra 56
Relacionamento de generalizao
A generalizao entre atores significa que o herdeiro possui o mesmo comportamento que o ator do qual ele herda. Alm disso, o ator herdeiro pode participar em casos de uso em que o ator do qual ele herda no participa. Um exemplo: considere uma biblioteca na qual pode haver alunos e professores como usurios.
Ambos podem realizar emprstimos de ttulos de livros e reservas de exemplares. No entanto, somente o professor pode requisitar a compra de ttulos de livros biblioteca.
Copyright 2002, 2003 Eduardo Bezerra
57
Relacionamento de Generalizao/Especializao
Pode tambm ocorrer entre atores do sistema, pois serve para facilitar a legibilidade do diagrama
Todas as associaes feitas pelo ator genrico, so herdadas pelos atores especializados
Relacionamento de Generalizao/Especializao
Multiplicidade
Determina o nmero de vezes que um ator pode utilizar um determinado Caso de Uso.
Fronteira do Sistema
Permite identificar um subsistema, ou mesmo o sistema completo, alm de destacar o que est contido no sistema e o que no est.
Fronteira do Sistema