Você está na página 1de 7

UNIVERSIDADE FEDERAL DE JUIZ DE FORA

INSTITUTO DE CINCIAS EXATAS


DEPARTAMENTO DE CINCIA DE COMPUTAO
DCC171 - LABORATRIO DE PROGRAMAO 3 TURMA - A
DOCENTE: IGOR DE OLIVEIRA KNOP

Controle de Pedidos
Verso 2.0.0

ALUNO (A): ANA CAROLINA FIDELIS GONALVES 200935002

Sobre o sistema
O Sistema de controle de pedidos busca atender restaurantes e bares no controle de pedidos
dos clientes.
Possui as seguintes funcionalidades:

Cadastro de mesas;
Cadastro de itens;
Cadastros de pedidos;

Para utilizao do sistema necessrio cadastrar as mesas e os itens de consumo e seus preos.
O sistema restringe qualquer forma de pedido feitos na mesa quando esta contm um pedido
em aberto.
Os pedidos so feitos sendo obrigatria a insero de itens no pedido e sendo possvel incluir
itens no pedido enquanto este est em aberto.
Alm das funcionalidades mencionadas acima que so da primeira verso do sistema est nova
verso traz a implementao da camada de persistncia e uma nova interface de iterao com
o usurio.
O Sistema foi desenvolvido utilizando Java na verso 8 e utilizando os conceitos de OO.

Modelo de dados
Aqui apresentado o modelo de classes utilizados como base para construo dos modelos de
objetos do sistema.

Neste modelo os mtodos gets e sets utilizados na implementao das classes para acesso aos
dados sendo apresentados aqui somente os mtodos que so implementados com alguma
funcionalidade na classe.

Melhorias da nova verso


1. Implementao da camada de persistncia dos dados de trs formas:
a. Banco de dados: Os dados neste caso so armazenados em uma base de dados
relacional via JDBC.
b. Arquivos de textos: Os dados so armazenados em arquivos de textos, neste
caso cada classe possui um arquivo .txt com os dados armazenados.
c. Arquivo Binrio: Os objetos so serializados e armazenados em um arquivo
binrio neste caso tambm adotado que cada classe do modelo ter um
arquivo binrio que armazenara os objetos.
2. Os arquivos do projeto tambm esto armazenados em pacotes de forma muito
parecida com o padro MVC, segue abaixo os pacotes:
a. br.ufjf.dcc.lab3.dao: Este pacote armazena as classes responsveis pela
persistncia a base de dados para cada classe do modelo. O pacote contm sub
pacotes com o nome das classes modelos onde ficam as Interfaces que
permitem as vrias formas de persistncia dos dados.
b. br.ufjf.dcc.lab3.model: Armazena as classes modelo dos objetos.
c. br.ufjf.dcc.lab3.view: Classes responsveis pelas views (Classes dos
formulrios do sistema)
d. br.ufjf.dcc.lab3: Classe com o mtodo main, para chamada e execuo do
sistema.

3. Nesta nova verso o sistema foi apelidado de SisPed.


4. Mudanas na interface do sistema (as telas sero mostradas mais frente).

Desenvolvimento
Persistncia com o banco de dados: O modelo de dados adotados para essa
persistncia mostrado abaixo.

Com quatro tabelas representando o modelo. Foi utilizado o SGBD JavaDB. O nome do banco de
dados lp3-pedidos-ana com usurio root e senha 123.
So classes dessa camada de persistncia:

PedidoDAOJDBC;
PedidoItemJDBC;

Persistncia com Arquivo: Neste tipo de persistncia os objetos so armazenados dentro


de arquivos textos que so restaurados e salvos durante a execuo do SisPed. Para cada classe
do pacote br.ufjf.dcc.lab3.model existe um arquivo .txt que armazena seus objetos. So as
classes deste tipo de persistncia:

PedidoDAOArquivo;
PedidoItemArquivo;

Persistncia com Serializao: Para esta persistncia os objetos so armazenados em


um arquivo .db e cada objeto para cada classe do pacote br.ufjf.dcc.lab3.modelexiste este
arquivo. As classes desta camada de persistncia so:

PedidoDAOSerialize;
PedidoItemSerialize;

O tipo de persistncia escolhido no incio de cada interao.


Para simplificar o problema foi retirado a classe Mesa.

Telas
Tela do SisPad

Detalhes do pedido

Detalhe de inserir novo pedido

Escolha dos itens e do tipo de persistncia

Pontos de melhoria
Abaixo sigo as melhorias que podem ser implementadas nas prximas verses:
A. Cadastro de clientes: Est opo torna-se interessante se voc deseja permitir que
clientes cadastrados possam pagar seus pedidos em outra data.

B. Relatrios: Apesar de exibir os itens consumidos em o total de seu pedido a cada pedido
finalizado interessante que o sistema gere os relatrios.
C. Controle de estoque: Tambm interessante que o sistema controle a entrada e sada
de produtos do restaurante ou bar.
D. Controle de usurios: interessante para que se tenha controle ao acesso de usurios.

Você também pode gostar