Diagrama de Pacotes
Introdução
O diagrama de pacotes é uma ferramenta essencial na linguagem de modelagem unificada (UML), utilizada para organizar e estruturar elementos semanticamente relacionados dentro de um sistema projetado no nível dos pacotes. É especialmente útil em diagramas de classes, onde as classes são organizadas dentro de pacotes, mas também pode ser aplicado a outros tipos de modelos UML para organizar elementos como classes, entidades de dados e casos de uso. A integração dos pacotes em diversos diagramas UML facilita a simplificação e a compreensão do modelo.
Metodologia
Para elaboração do nosso Diagrama de Pacote tivemos como base nosso Diagrama de Classes e por meio de uma reunião realizada via plataforma Discord, para a produção do diagrama inicialmente consideramos a adoção do padrão arquitetural Modelo-Visão-Controladora (MVC) como uma abordagem para melhor visualização e organização do sistema. Foi utilizado a ferramenta de construção Draw.io e a linguagem foi a UML. Cada membro do subgrupo ficou participou nas seguintes etapas simultaneamente (via Discord):
Criação da Documentação
Elaboração e Discussão do Diagrama de Pacote (Via Discord)
Conforme o feedback da entrega faremos modificações no diagrama.
Notações do Diagrama de Pacotes
Pacote
O pacote é um namespace usado para agrupar elementos que estão semanticamente relacionados e podem mudar juntos.
Elemento empacotável
O Elemento empacotável é um elemento nomeado, possivelmente de propriedade direta de um pacote. Pode incluir eventos, componentes, casos de uso e os próprios pacotes.
Dependência
A dependência é uma relação entre elementos nomeados, que na UML inclui muitos elementos diferentes, por exemplo, classes, interfaces, componentes, artefatos, pacotes, etc.
Importação de elemento
A importação de elementos é uma relação direcionada entre um namespace de importação e um elemento empacotável importado.
Importação de pacote
A importação de pacotes é uma relação direcionada entre um namespace de importação e um pacote importado, que permite o uso de nomes não qualificados para se referir aos membros do pacote do(s) outro(s) namespace(s).
Mesclagem de pacotes
Uma mesclagem de pacotes é uma relação direcionada entre dois pacotes que indica que o conteúdo de um pacote é estendido pelo conteúdo de outro pacote.
A Figura 1 ilustra a notação padrão empregada para representar os componentes do diagrama.
Figura 1 - Componentes do diagrama de pacotes
Fonte: Yankee, 2024
Diagrama de Pacote
Versão 1.0
Na figura abaixo encontra-se o Diagrama confeccionado inicialmente pelo subgrupo Yankee:
Figura 2 - Diagrama de Pacotes 1.0
Fonte: Yankee, 2024
Versão 2.0
Para a entrega final, o subgrupo Yankee analisou o feedback da professora sobre a primeira versão do diagrama e reuniu-se para alterá-lo visando a sua inclusão no documento de Visão Lógica.
Figura 3 - Diagrama de Pacotes 2.0
Fonte: Yankee, 2024
Conclusão
Através da elaboração do Diagrama de Pacote, o grupo pôde visualizar e organizar de forma mais clara e estruturada os elementos do sistema projetado. A adoção do padrão arquitetural Modelo-Visão-Controladora (MVC) proporcionou uma melhor compreensão das relações entre os componentes. Além disso, a integração dos pacotes em outros diagramas UML facilitou a simplificação e a compreensão do modelo como um todo. Com base no feedback recebido, o grupo está preparado para fazer modificações no diagrama, aprimorando ainda mais a representação do sistema.
Bibliografia
UML DIAGRAMS. UML Package Diagrams Overview, 2023. Disponível em: https://www.uml-diagrams.org/package-diagrams-overview.html. Acesso em: 08/07/2024.
Tudo sobre diagramas de pacotes UML. Disponível em: https://www.lucidchart.com/pages/pt/diagrama-de-pacotes-uml#
Histórico de Versão
Versão | Data | Descrição | Autor(es) | Revisor(es) |
---|---|---|---|---|
1.0 |
08/07/2024 | Criação do documento | Yankee | Whiskey |
1.1 |
08/07/2024 | Adição do Diagrama | Yankee | Papa |
1.2 |
09/07/2024 | Revisão Final e correção de padrão | João Lucas | Foxtrot |
1.3 |
15/08/2024 | Adição de versão 2.0 | Yankee | Foxtrot |