Um caso de uso é uma descrição escrita de como os utilizadores irão executar tarefas no seu website. Descreve, do ponto de vista de um utilizador, o comportamento de um sistema à medida que este responde a um pedido. Cada caso de utilização é representado como uma sequência de passos simples, começando com o objectivo do utilizador e terminando quando esse objectivo é atingido.
Benefícios dos Casos de Utilização
Casos de Utilização acrescentam valor porque ajudam a explicar como o sistema se deve comportar e, no processo, ajudam também a fazer uma tempestade de ideias sobre o que pode correr mal. Fornecem uma lista de objectivos e esta lista pode ser utilizada para estabelecer o custo e a complexidade do sistema. As equipas de projecto podem então negociar quais as funções que se tornam requisitos e que são construídas.
What Use Cases Include | What Use Cases Do NOT Include |
---|---|
>ul>
|
>ul>
|
Elementos de um Caso de Uso
Dependente da profundidade e complexidade que se pretende ou necessita obter, os casos de uso descrevem uma combinação dos seguintes elementos
- Actor – qualquer pessoa ou qualquer coisa que realize um comportamento (quem usa o sistema)
- Interessado – alguém ou algo com interesses adquiridos no comportamento do sistema em discussão (SUD)
- Actor primário – interveniente que inicia uma interacção com o sistema para atingir um objectivo
- Condições prévias – o que deve ser verdade ou acontecer antes e depois da execução do caso de utilização.
- Triggers – este é o evento que provoca o início do caso de utilização.
- Principais cenários de sucesso – caso de utilização em que nada corre mal.
- Caminhos alternativos – estes caminhos são uma variação sobre o tema principal. Estas excepções são o que acontece quando as coisas correm mal ao nível do sistema.
Como escrever um caso de utilização
Escrever os passos de um caso de utilização numa narrativa de fácil compreensão. Kenworthy (1997) descreve os seguintes passos:
- Identificar quem vai utilizar o sítio web.
- Pick one of those users.
- Definir o que esse utilizador quer fazer no sítio. Cada coisa que o uso faz no sítio torna-se um caso de uso.
- Para cada caso de uso, decidir sobre o curso normal dos eventos quando esse utilizador está a usar o sítio.
- Descrever o curso básico na descrição do caso de uso. Descreva-o em termos do que o utilizador faz e do que o sistema faz em resposta ao que o utilizador deve estar ciente.
- Quando o curso básico for descrito, considere cursos alternativos de eventos e adicione-os para “alargar” o caso de utilização.
- Lo>Lo>Cuidar com os pontos comuns entre os casos de utilização. Extraí-los e anotá-los como casos de uso comum do curso.
- Repetir os passos 2 a 7 para todos os outros utilizadores.
Casos de uso de exemplo
Below, são exemplos de três casos de uso com níveis de complexidade crescentes. Para os nossos fins, definimo-los como casos de utilização simples, de peso médio e de peso pesado para lavar a roupa. Em cada um destes tipos de casos de uso verá que:
- Uma governanta lava a roupa numa quarta-feira
- La passa a ferro alguns artigos.
li>La lava cada carga.La seca cada carga.La dobra certos artigos.
>Li>Deita fora certos artigos.
Mala de uso simples para lavar a roupa
br>>th>Use Case 1p>Fazer lavandariabr>>th>Actorp>Housekeeperbr>>>th>Basic Flowp>Às quartas-feiras, a governanta apresenta-se na lavandaria. Ela ordena a lavandaria que lá se encontra. Em seguida, lava cada carga. Ela seca cada carga. Ela dobra os artigos que precisam de ser dobrados. Ela passa a ferro e pendura os artigos que se encontram enrugados. Deita fora qualquer peça de roupa que esteja irrevogavelmente encolhida, suja ou queimada.>br>>h3>Caixa de uso de lavandaria de peso médiobr>>>th>Use Case 1>p>Fazer lavandariabr>>>th>>Actor
Housekeeper
br>>p>Basic Flowp>Às quartas-feiras, a governanta apresenta-se na lavandaria. Ela ordena a lavandaria que lá se encontra. Em seguida, lava cada carga. Ela seca cada carga. Ela dobra os artigos que precisam de ser dobrados. Ela deita fora qualquer peça de roupa que esteja irrevogavelmente encolhida, suja ou queimada.>br>>th>Alternative Flow 1
Se notar que algo está enrugado, passa a ferro e depois pendura-o num cabide.
br>>th>Alternative Flow 2p>Se notar que algo ainda está sujo, lava-o novamente.>br>Fluxo Alternativo 3
Se ela reparar que algo encolheu, deita-o fora.
>br>>h3>Mala de Lavandaria de Peso Pesadobr>>th>Use Case 1p>Housekeeper does laundrybr>>th>Actorp>Housekeeperbr>>>th>Use Case Overviewp>É quarta-feira e há lavandaria na lavandaria. A governanta ordena, depois procede à lavagem de cada carga. Ela dobra a roupa seca enquanto a retira da máquina de secar. Ela passa a ferro os artigos que precisam de ser engomados.br>>>th>Subject Area
Domestics
br>>th>Actor(es)p>The housekeeperbr>>th>Triggerp>Dirty laundry is transported to the laundry room on Wednesday.>br>>th>>Precondição 1
É quarta-feira
br>>th>Precondição 2p>Há roupa suja na lavandaria.br>>h4>Basic Flow: Do Laundrybr>>th>Descriptionp> Este cenário descreve a situação em que apenas é necessário separar, lavar e dobrar. Este é o principal cenário de sucesso.>br>>th>>1
Housekeeper classifica os artigos de lavandaria.
br>>th>>2
Housekeeper lava cada carga.
>br>>>th>>3
Housekeeper lava cada carga.
br>>th>>4p>Housekeeper verifica que a roupa não precisa de ser engomada, está limpa e não encolhida.>br>5
Housekeeper verifica que a peça de roupa é dobrável.
>br>>>th>>6
Housekeeper dobra o artigo de roupa
br>>th>>7p>Housekeeper faz isto até que não haja mais artigos de roupa a dobrar br>>th>Termination outcomep>Laundry is clean and foldedbr>>h4>Alternative Flow 4A: O artigo de roupa precisa de ser engomado.>br>>>th>Descriçãop>Este cenário descreve a situação em que um ou mais artigos precisam de ser engomados antes ou em vez de dobradosbr>>>th>>4A1p>Housekeeper verifica que a peça de roupa precisa de ser engomada e que está limpa e não encolhidobr>>>4A2p>Housekeeper ferra a peça de roupa sujabr>>>th>4A3p>Housekeeper coloca a peça de roupa suja num cabidebr>>th>>Resultado da terminaçãop>Laundry que necessita de engomar é engomado e pendurado.>br>>h4>Fluxo alternativo 4B: O artigo de lavandaria está sujo.>br>>th>Descriçãop>Este cenário descreve a situação em que o artigo de lavandaria não ficou limpo da primeira vez através da lavagem.>br>>
p>Housekeeper verifica que a roupa não está limpa.br>>>th>4B2p>Housekeeper lava novamente a roupabr>>th>th>Termination outcomep>Dirty laundry is rewashed.br>h4>Alternative flow 4C: A peça de roupa encolheu.>br>>th>Descriçãop>Este cenário descreve a situação em que a peça de roupa encolheu.br>>th>>4C1p>Housekeeper verifica que a peça de roupa encolheubr>>th>4C2p>Housekeeper descarta a peça de roupa suja.>br>>>th>Termination outcome
Laundry item já não existe.
br>>h4>Alternative flow 5A: Laundry item needs hanger.>br>>>th>Descrição
Este cenário descreve a situação em que o artigo de roupa precisa de ser pendurado em vez de dobrado.
br>>th>5A1p>Housekeeper verifica que o artigo de roupa precisa de ser pendurado.>br>>>th>5A2
Housekeeper coloca a peça de roupa num cabide.
br>>th>th>Termination outcome
Laundry that needs hanging is hung up.
br>>p>p>Pós condições de pendurar: Toda a roupa limpa e dobrada ou pendurada.
Regras de negócio:
- Laundry só pode ser feita às quartas-feiras.
- Todas as peças de roupa engomadas são penduradas em cabides
- Qualquer peça de roupa que esteja irrevogavelmente suja, encolhida, queimada, etc. é expulsa.