Caso de Uso
Introdução
Este documento é de verificação do artefato Caso de Uso produzido pelo Grupo 2 que tem o projeto voltado ao site Booking. Com base nisso, seu caso de uso será verificado de acordo com os documentos disponibilizados na diciplina que são: Lucidchart Diagrama de caso de uso, os slides da Aula 11 da professora Milene e Maurício Serrano e o livro Engenharia de Requisitos. Todos estarão disponíveis na bibliografia.
Metodologia
Para a verificação do artefato, será feito uma checklist com base nos documentos já citados anteriormente. A mesma será composta por 5 perguntas que serão o padrão exigido para a documentação e em seguida perguntas envolvendo o conteúdo do artefato Caso de Uso. Na tabela 1 estão expostos todas as perguntas abordadas para verficação do artefato, a versão utilizada para a verificação será a 1.0, feita no dia 14 de maio de 2023, os campos de "Avaliação" e "Observações" serão preenchidos no desenvolvimento em que haverá uma discussão a respeito de alguns itens. Para tal será utilizado o ID da pergunta.
Desenvolvimento
Tabela 1 - Checklist preenchido.
ID | Descrição | Avaliação | Observações |
---|---|---|---|
1 | O artefato possui Introdução? | Sim | - |
2 | O artefato artefato possui uma Bibliografia/Referência Bibliográfica? | Sim | - |
3 | O artefato possui um Histórico de Versões com o id e descrição das versões, data, autores e revisores? | Sim | - |
4 | Todas as tabelas e imagens são chamadas no texto, possuem legendas e fontes? | Sim | Fora da ABNT. |
5 | Todos os textos estão na norma padrão | Não | Fora da ABNT. |
6 | Cada caso provem um resultado observável e de valor para os atores ou outros interessados no sistema? 3. | Sim | - |
7 | As elipses representam as ações caso de uso? (constituem internamente fluxos/cenários)? 2. | Sim | - |
8 | Há o uso de verbos no infinitivo e não substantivos? 1. | Sim | - |
9 | Há relacionamentos de extend, include e generalization? 3. | Sim | - |
10 | O caso de uso representa o usuário e suas interações com o sistema? 3. | Sim | - |
11 | O ator principal está posicionado ao lado esquerdo do sistema? 3. | Sim | - |
12 | O usuário reside fora das fronteiras da aplicação? 3. | Sim | - |
13 | O usuário possui um nome associado a ele? Como: cliente, analista de RH, estudante, etc.3. | Sim | Cada ator possui um nome próprio. |
14 | Quando o ator é um software ou um hardware, há a tag << system >>?3. | Não | - |
15 | O caso de uso produzido é uma funcionalidade completa que entrega algum valor? 3. | Sim | Todas as funcionalidades representadas atendem esses requisitos. |
16 | Os casos de uso são de requisitos funcionais? 3. | Sim | - |
17 | Foi usada alguma técnica para a produção dos casos de uso? 3. | Não | Não está citado no texto. |
18 | Os elementos de atores, sistema e metas estão presentes no caso de uso?2. | Sim | - |
19 | A especificação dos casos de uso consistem no detalhamento de execução dos casos de uso? 1. | Sim | - |
20 | Existem fluxos como: principal, alternativo e de exceção? 1. | Sim | - |
21 | Cada especificação de caso uso tem somente um fluxo principal? 1. | Sim | - |
22 | Os fluxos principais representam como usuário usaria a funcionalidade de forma primária? 1. | Sim | - |
23 | Os fluxos alternativos são possibilidades de cenários alternativos ao fluxo principal? 3. | Incompleto | Será justificado no texto. |
24 | Os fluxos de exceção demonstram como o sistema reagirá na presença de situações inesperadas? 3. | Sim | Muito bem feitos e pensados os fluxos. |
Fonte: Geovanna Maciel.
Com base na tabela preenchida, serão feitas considerações acerca de alguns itens da tabela.
Para o ID 14, foi usado o conceito disponível no livro Engenharia de requisitos que está presente no capítulo "Diagrama de uso", nele há a explicação dos componentes de um caso de uso de forma mais detalhada, podendo elucidar a aplicação da tag.
Para os IDs 24 e 25, foram usados conceitos disponíveis no livro Engenharia de Requisitos, os mesmos estão disponíveis no capítulo "Especificação de requisitos funcionais utilizando casos de uso", nele há uma explicação mais detalhada desses conceitos e sua aplicação.
ID 14 - Quando o ator é um software ou um hardware, há a tag << system>>?
No diagrama há um ator secundário "serviço de pagamento" e não há a tag de system referida a ele. De acordo com Reinehr "Quando se tratar de um hardware ou outro software, pode-se também usar um estereótipo, indicando que se trata de um sistema. Isto é feito com a tag << system>> e seu uso vai depender de como a ferramenta de modelagem UML faz essa implementação."
ID 17 - Foi usada alguma técnica para a produção dos casos de uso?
Há a citação de terem sido usados os requisitos identificados no projeto, mas não há sobre como o artefato foi produzido, se houve alguma técnica como brainstorming, questionário, entrevista com usuário e etc.
ID 24 - Os fluxos alternativos são possibilidades de cenários alternativos ao fluxo principal?
Alguns fluxos apresentam ambiguidade no fluxo alternativo e podem ser confundidos com fluxos de exceção. Por exemplo o UC03, UC05 e UC06. De acordo com Reinehr "Os fluxos alternativos, como o próprio nome sugere, são as possibilidades de cenários alternativos ao fluxo principal, conforme escolhas do usuário ou situações específicas do sistema. Não inclui fluxos para o tratamento de erro, mas sim escolhas que podem ser feitas pelo usuário."
Os fluxos alternativos desses casos de uso não estão errados, só pode haver alguma confusão caso quem for ler não entenda a diferença entre os dois conceitos.
ID 25 - Os fluxos de exceção demonstram como o sistema reagirá na presença de situações inesperadas?
Os fluxos de exceção foram muito bem pensados e produzidos, seguindo o conceito de ser o que dá errado no fluxo principal. Expressam tratamento de erro e a reação do sistema na presença de situações inesperadas.
Sugestões e melhorias
Antes de tudo vale ressaltar que o artefato foi bem produzido, atendento a maioria dos itens da checklist. Pode-se perceber como o Samuel Gomes teve um cuidado em estudar o tema para realizar a produção do artefato. Houve até mesmo uma validação, mas ficou confuso se era um usuário real ou se era um integrante do grupo interpretando alguém, por isso fica de melhoria a adição de uma pequena tabela especificando quem foram os participantes.
De sugestões e melhorias ficam:
- Colocar as tabelas e figuras nas normas da ABNT;
- Especificar os participantes da validação;
- Adicionar a técnica utilizada para a produção do caso de uso (se houver);
- Adicionar a tag << system>> para o usuário secundário "serviço de pagamento" caso convenha ao projeto.
Referências bibliográficas
1. Slides da aula “Requisitos – Aula 11” dos professores Milene Serrano e Maurício Serrano. Disponível em: https://aprender3.unb.br/pluginfile.php/2523100/mod_resource/content/1/Requisitos%20-%20Aula%20013a.pdf Acesso em: 05 de junho de 2023.
2.Lucidchart - Diagrama de caso de uso UML. Disponível em: https://www.lucidchart.com/pages/pt/diagrama-de-caso-de-uso-uml. Acesso em: 05 de junho de 2023.
3.REINEHR, Sheila. Engenharia de requisitos. [Insert Publisher Location]: Grupo A, 2020. E-book. ISBN 9786556900674. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9786556900674/. Acesso em: 07 junho 2023.
Histórico de versões
Versão | Data | Descrição | Autor(es) | Revisor(es) |
---|---|---|---|---|
1.0 | 05/06/2023 | Criação do documento | Geovanna Maciel | Gabriel Campello |
1.1 | 09/06/2023 | Colocando as referências nas tabelas | Geovanna Maciel | Gabriel Campello |