🏗️ Definição da Arquitetura

📌 Objetivo

A arquitetura do sistema foi definida com o objetivo de garantir organização, separação de responsabilidades, facilidade de manutenção e evolução do software, seguindo os princípios da Programação Orientada a Objetos (POO).

O sistema foi desenvolvido na linguagem Java utilizando o padrão arquitetural MVC (Model-View-Controller) em conjunto com uma Arquitetura em Camadas (Layered Architecture).


📌 Arquitetura Adotada

A solução utiliza uma arquitetura em camadas para organizar os componentes do sistema, reduzir o acoplamento entre as partes da aplicação e facilitar sua manutenção.

O padrão MVC é responsável por separar a interface do usuário, o controle da aplicação e a representação das entidades do domínio.

Além disso, o projeto utiliza os padrões de projeto Factory e Strategy para tornar o código mais modular e facilitar futuras evoluções.

As camadas definidas para o projeto são:


📐 Modelagem da Arquitetura

Estrutura Geral

View
 ↓
Controller
 ↓
Service
 ↓
Repository
 ↓
SQLite

Organização do Projeto