-
Notifications
You must be signed in to change notification settings - Fork 0
Diagrama(s)
Nesta página, eu vou documentar o estudo que fiz sobre o Diagrama de Caso de Uso da UML e como eu o utilizei para planejar as funcionalidades do projeto GameSource.
Antes de definir a arquitetura ou escrever qualquer código, era fundamental para mim ter clareza sobre o que o aplicativo deveria fazer. Eu precisava de uma ferramenta para definir o escopo do projeto, os requisitos funcionais e como o usuário interagiria com o sistema.
A minha pesquisa indicou que o Diagrama de Caso de Uso é a ferramenta ideal para isso. Ele descreve a funcionalidade do sistema do ponto de vista do usuário, servindo como um "mapa" das funcionalidades que eu preciso construir, o que foi essencial para o meu planejamento.
Durante o estudo, eu aprendi os componentes essenciais para construir o diagrama:
-
Ator (Actor): É uma entidade externa que interage com o sistema. No meu caso, o
Usuárioé o ator principal, e as APIs (API da Steam,API RAWG.io) são atores de suporte. - Caso de Uso (Use Case): É uma funcionalidade específica que o sistema oferece para que um ator atinja um objetivo, como "Sincronizar Biblioteca de Jogos".
-
Relacionamentos: As conexões que mostram como as funcionalidades se relacionam. As mais importantes que usei foram:
-
Inclusão (
<<include>>): Mostra uma dependência obrigatória. Por exemplo, para "Sincronizar Biblioteca", é preciso antes "Autenticar Usuário". -
Extensão (
<<extend>>): Mostra uma funcionalidade opcional. Por exemplo, "Visualizar Lista de Jogos" pode ser estendida por "Filtrar e Ordenar Jogos".
-
Inclusão (
Com base nesse aprendizado, eu construí o seguinte diagrama para mapear todas as funcionalidades planejadas para o GameSource.
---
title: Diagrama de Caso de Uso - GameSource
---
graph TD
%% Atores Principais e de Suporte
AtorUsuario("Usuário (Ator)")
AtorSteamAuth("Sistema de Autenticação Steam")
AtorSteamAPI("API da Steam")
AtorRawgAPI("API RAWG.io")
%% Limite do Sistema (Nosso Aplicativo)
subgraph GameSource
direction LR
UC1(Autenticar Usuário)
UC2(Sincronizar Biblioteca de Jogos)
UC3(Visualizar Lista de Jogos)
UC4(Filtrar e Ordenar Jogos)
UC5(Buscar Jogo)
UC6(Visualizar Detalhes de um Jogo)
UC7(Gerenciar Categorias Personalizadas)
end
%% Relacionamentos do Usuário com os Casos de Uso
AtorUsuario -- "Inicia" --> UC1
AtorUsuario -- "Dispara" --> UC2
AtorUsuario -- "Interage com" --> UC3
AtorUsuario -- "Acessa" --> UC6
AtorUsuario -- "Cria/Usa" --> UC7
%% Relacionamentos entre Casos de Uso
UC2 -- "include" --> UC1
UC3 -- "extend" --> UC4
UC3 -- "extend" --> UC5
%% Relacionamentos com Atores de Suporte (APIs)
UC1 <--> AtorSteamAuth
UC2 <--> AtorSteamAPI
UC2 <--> AtorRawgAPI
UC6 <--> AtorRawgAPI
A criação deste Diagrama de Caso de Uso foi um passo fundamental no meu planejamento. Ele me deu uma visão clara do escopo da primeira versão do GameSource e servirá como um guia constante durante o desenvolvimento para garantir que estou construindo as funcionalidades corretas para o usuário.
- O que é Diagrama de Caso de Uso - Lucidchart: https://www.lucidchart.com/pages/pt/diagrama-de-caso-de-uso-uml
- UML Use Case Diagrams - TutorialsPoint: https://www.tutorialspoint.com/uml/uml_use_case_diagram.htm