Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo do Sistema

Sistema de Gestão para Rede de Padarias

Projeto desenvolvido para a disciplina de Programação Orientada a Objetos
Universidade Federal da Paraíba (UFPB)


📖 Projeto de Análise e Projeto de Sistemas - UFPB

Sobre o Projeto

Somos alunos do curso de Sistemas de Informação da Universidade Federal da Paraíba (UFPB).

Este projeto foi desenvolvido na disciplina de Programação Orientada a Objetos, ministrada pelo Professor Dr. Dorgival Netto, com o objetivo de aplicar conceitos de Engenharia de Software, Arquitetura em Camadas, Modelagem UML e Padrões de Projeto na construção de um sistema de gestão para uma rede de padarias.


🎯 Visão Geral do Projeto

O projeto tem como objetivo desenvolver um Sistema de Gestão para uma Rede de Padarias, permitindo centralizar o gerenciamento das unidades da rede e melhorar o controle dos recursos utilizados em cada uma delas.

O sistema busca oferecer:

  • Controle de estoque;
  • Cadastro e gerenciamento de insumos;
  • Registro de movimentações de entrada e saída;
  • Controle das unidades da rede;
  • Gerenciamento de demandas de reposição;
  • Redução de desperdícios;
  • Maior organização das informações.

✨ Funcionalidades

  • ✅ Cadastro de Unidades
  • ✅ Cadastro de Insumos
  • ✅ Adição de Insumos ao Estoque
  • ✅ Registro de Movimentações (Entrada e Saída)
  • ✅ Criação de Demandas de Reposição
  • ✅ Consulta de Estoque por Unidade
  • ✅ Listagem de Demandas de Reposição
  • ✅ Consulta de Unidade
  • ✅ Consulta de Insumo
  • 🔄 Persistência de dados utilizando SQLite

🏗 Arquitetura do Projeto

O sistema foi desenvolvido utilizando Arquitetura em Camadas (Layered Architecture), separando as responsabilidades da aplicação para facilitar manutenção, escalabilidade e organização do código.

Controller
     │
     ▼
Service
     │
     ▼
Repository
     │
     ▼
SQLite

Model representa as entidades do sistema.
View representa a interface em console responsável pela interação com o usuário.

🧩 Padrões de Projeto Utilizados

O sistema utiliza alguns padrões de projeto para melhorar sua organização e manutenção.

  • MVC (Model-View-Controller): separação entre interface, regras de negócio e dados.
  • Factory: responsável pela criação das implementações dos repositórios.
  • Strategy: utilizada para representar os diferentes tipos de movimentação do estoque (Entrada e Saída).

📂 Organização do Projeto

src
│
├── controller
├── factory
├── model
├── repository
├── service
├── strategy
├── view
└── Main.java

📦 Principais Classes

  • Unidade
  • Insumo
  • Estoque
  • Movimentacao
  • DemandaReposicao

🔄 Fluxo Básico do Sistema

O sistema é utilizado por meio de um menu em console com as seguintes opções:

1 - Cadastrar Unidade
2 - Consultar Unidade
3 - Cadastrar Insumo
4 - Consultar Insumo
5 - Adicionar Insumo ao Estoque
6 - Registrar Movimentação (Entrada/Saída)
7 - Criar Demanda de Reposição
8 - Consultar Estoque de uma Unidade
9 - Listar Demandas de Reposição
0 - Sair

👨‍💻 Equipe

Foto Nome E-mail
Arthur Neto Coutinho da Silva arthur.coutinho@dcx.ufpb.br
João Alisson de Oliveira Freitas joao.freitas@dcx.ufpb.br
Kaany Araújo Feitosa Rolin kaany.rolin@dcx.ufpb.br
Maria Gabriella de Oliveira Barbosa maria.oliveira@dcx.ufpb.br

🛠 Tecnologias Utilizadas

  • Java 21
  • SQLite
  • IntelliJ IDEA
  • Git
  • GitHub
  • UML
  • Notion
  • Draw.io
  • Programação Orientada a Objetos (POO)
  • Arquitetura MVC

📚 Artefatos do Projeto

  • ✅ Criação da Página no GitHub
  • ✅ Compreensão do Sistema
  • ✅ Definição da Arquitetura
  • ✅ Modelagem de Classes
  • ✅ Padrões de Projeto
  • ✅ Diagramas de Sequência
  • ✅ Implementação

📑 Documentação

Documento Entrega
📁 Repositório no GitHub Etapa 00
📁 Compreensão do Sistema Etapa 01
📁 Definição da Arquitetura Etapa 02
📁 Modelagem de Classes Etapa 03
📁 Padrões de Projeto Etapa 04
📁 Diagramas de Sequência Etapa 05

🚀 Como Executar

Clone o repositório:

git clone https://github.com/Arthurne/Projeto-APS.git

Em seguida:

  1. Abra o projeto no IntelliJ IDEA.
  2. Configure o JDK 21 (ou versão compatível).
  3. Execute a classe Main.java.
  4. Utilize o menu do sistema para acessar as funcionalidades disponíveis.

📄 Licença

Este projeto foi desenvolvido exclusivamente para fins acadêmicos na disciplina de Programação Orientada a Objetos da Universidade Federal da Paraíba (UFPB).

About

Sistema de Gestão para Rede de Padarias desenvolvido na disciplina de Programação Orientada a Objetos - UFPB.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages