thesis: add class diagram section + images
Parents:
a12d3013 file(s) changed
- monografia/chapters/modeling.tex +39 -0
- monografia/images/casos-de-uso.png +0 -0
- monografia/images/diagrama-classes.png +0 -0
monografia/chapters/modeling.tex
1 1
\chapter{Modelagem}
2 2
3 3
De acordo com \cite{guedes:2022}, a modelagem de sistemas é uma etapa fundamental do
4 4
processo de desenvolvimento de software, pois permite representar graficamente
5 5
os principais elementos do sistema, seus comportamentos e interações. Essa
▸ 89 unchanged lines
95 95
pode servir tanto para consulta futura quanto para, em um futuro, gerar
96 96
indicadores. Ao conectar eventos e suas respostas, a funcionalidade fortalece o
97 97
papel do sistema como uma ferramenta alinhada com o EMA, gerando assim uma
98 98
narrativa emocional diária.
99 99
100 +
\section{Diagrama de Classes}
101 +
102 +
O diagrama de classes é fundamental para o processo de modelagem de sistemas e
103 +
constroem uma visão central tanto do relacionamento das entidades quanto de
104 +
como elas são organizadas. Olhando para \cite[p. 101]{guedes:2022}: ''O
105 +
principal enfoque é permitir a visualização das classes que o sistema e seus
106 +
respectivos métodos e atributos''. Portanto, a base fundamental do sistema e
107 +
seus relacionamentos, que será transformado posteriormente em código (ou
108 +
diagramas posteriores) encontra-se nesse estágio.
109 +
110 +
Sobre o diagrama em si, cada classe possui três partes: título, os atributos,
111 +
que representam as características da classe em si, e seus métodos, que são as
112 +
ações que o sistema deve realizar \cite{ibm:2021}. Na Figura 2, pode-se
113 +
observar os elementos descritos acima:
114 +
115 +
\begin{figure}[h]
116 +
\centering
117 +
\caption{Diagrama de Classes}
118 +
\label{fig:classes}
119 +
\includegraphics[width=0.9\linewidth]{diagrama-classes.png}
120 +
\source{O autor}
121 +
\end{figure}
122 +
123 +
% TODO: Rewrite this, it feels, weird
124 +
125 +
Essa representação não se delimita em apenas contribuir para a visualização dos
126 +
dados e seus comportamentos, mas auxilia também na implementação e evolução da
127 +
aplicação. A separação entre entidades como Humor, Gatilho, Ações de Cuidado e
128 +
Usuário, permite a extensão modular do sistema, respeitando os princípios de
129 +
coesão e baixo acoplamento no desenho da arquitetura.
130 +
131 +
Ressalta-se, contudo, que o diagrama não contempla, padrões arquiteturais
132 +
complementares, como \textit{Service Layer}, \textit{Repository} e \textit{Data
133 +
Access Object (DAO)}, os quais são incorporados na etapa de implementação para
134 +
garantir uma separação adequada de responsabilidades e facilitar a manutenção e
135 +
escalabilidade do código, conforme as propostas de \citet{Fowler_2013} e
136 +
\citet{Gamma:2011}. Esses elementos são importantes, considerando os princípios
137 +
de legibilidade, simplicidade e responsabilidades, muitos organizados por
138 +
\citet{Martin_2012}, asseguram que o código produzido seja limpo e sustentável.
monografia/images/casos-de-uso.png
Binary file
monografia/images/diagrama-classes.png
Binary file