Prévia do material em texto
Brenno Rodrigues
Faculdade Anhanguera Osasco
Analise e Desenvolvimento de Sistemas
PROJETO INTEGRADO INOVAÇÃO - ADS
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Osasco
2025
Brenno Rodrigues
PROJETO INTEGRADO INOVAÇÃO - ADS
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Trabalho apresentado à Universidade, como requisito
parcial para a obtenção de média semestral nas
disciplinas norteadoras do semestre letivo.
Tutor (a): Dorival Magro Junior
Osasco
2025
1
SUMÁRIO
3.CONCLUSÃO..........................................................................................................19
REFERÊNCIAS BIBLIOGRÁFICAS..........................................................................20
1 INTRODUÇÃO...........................................................................................................3
2 MÉTODOS E RESULTADOS....................................................................................5
2.1 Passo 1....................................................................................................................5
2.2 Passo 2....................................................................................................................9
2.3 Passo 3..................................................................................................................11
2.4 Passo 4..................................................................................................................16
2
1 INTRODUÇÃO
O rápido crescimento das empresas de comércio eletrônico traz consigo uma série
de desafios operacionais, entre os quais a gestão eficiente do estoque se destaca
como um dos mais críticos. Uma gestão inadequada do estoque pode resultar em
diversos problemas, incluindo a falta de produtos disponíveis para venda, excesso
de itens armazenados sem demanda, e dificuldades para rastrear a localização dos
produtos nos depósitos. Esses problemas não apenas afetam a eficiência
operacional da empresa, mas também impactam diretamente a satisfação do cliente
e, consequentemente, a competitividade no mercado.
Neste contexto, uma empresa de comércio eletrônico em franca expansão
enfrenta exatamente esses desafios. Para resolver esses problemas e otimizar
suas operações, a empresa decidiu desenvolver um Sistema de Gerenciamento
de Estoque. O sistema proposto visa proporcionar uma solução integrada e
eficiente para a gestão de produtos, desde o cadastro até o rastreamento de sua
localização nos depósitos. A situação problema definida para este projeto
engloba os seguintes requisitos essenciais:
Cadastro de Produtos: O sistema deve permitir o cadastro de novos produtos,
incluindo informações detalhadas como nome, categoria, quantidade em estoque,
preço e localização no depósito. Este recurso é fundamental para a organização e
fácil acesso às informações dos produtos.
Atualização de Estoque: O sistema deve permitir a atualização precisa da
quantidade de produtos em estoque, tanto para novos itens recebidos quanto para
produtos vendidos. A atualização em tempo real é crucial para manter o controle
exato do inventário.
Rastreamento de Localização: Para facilitar a logística, o sistema deve
possibilitar o rastreamento da localização dos produtos dentro dos depósitos. Este
recurso ajudará a agilizar os processos de armazenamento e retirada de produtos.
Relatórios: O sistema deve gerar relatórios detalhados sobre o estado do
estoque, destacando produtos com baixo estoque, excesso de estoque e
movimentação de produtos. Relatórios informativos são essenciais para a tomada
de decisões estratégicas.
3
Além desses requisitos funcionais, o desenvolvimento do sistema incluirá a criação
de uma Tabela Verdade, que definirá as combinações de valores (True e False)
para as variáveis booleanas da situação problema, garantindo a lógica correta do
sistema. Também será elaborado um Diagrama de Caso de Uso para representar
visualmente as interações dos usuários com o sistema e os principais casos de
uso.O objetivo deste Projeto Integrado de Análise e Desenvolvimento de Sistemas é,
portanto, desenvolver uma solução robusta e eficaz que não apenas resolva os
problemas atuais da empresa de comércio eletrônico, mas também prepare a
organização para um crescimento sustentável e escalável. Através de uma
abordagem metodológica bem estruturada e a aplicação de boas práticas de
desenvolvimento de software, o sistema de gerenciamento de estoque será uma
ferramenta essencial para a otimização das operações logísticas da empresa,
promovendo uma gestão mais precisa e eficiente do seu estoque.
4
2 MÉTODOS E RESULTADOS
Sprint 3: Desenvolvimento do Cadastro de Produtos
Objetivo: Implementar o módulo de cadastro de produtos.
Sprint 2: Estruturação e Modelagem de Dados
Objetivo: Definir a estrutura de dados e modelar o banco de dados.
Duração: 2 semanas
Sprint 1: Planejamento e Definição de Requisitos
Objetivo: Definir requisitos e planejar o desenvolvimento do sistema.
Duração: 2 semanas
2.1 Passo 1
Figura 2 – Sprint 2.
5
Texto do seu parágrafoTexto do seu parágrafo
Texto do seu parágrafoTexto do seu parágrafoTexto do seu parágrafoTexto do seu parágrafo
Figura 1 – Sprint 1
Duração: 3 semanas
Sprint 4: Desenvolvimento da Atualização de Estoque
Objetivo: Implementar o módulo de atualização de estoque.
Duração: 3 semanas
Sprint 5: Desenvolvimento do Rastreamento de Localização
Objetivo: Implementar o módulo de rastreamento de localização de
produtos.
Figura 3 – Sprint 3.
Figura 4 – Sprint 4.
6
Duração: 3 semanas
Sprint 6: Desenvolvimento de Relatórios
Objetivo: Implementar o módulo de geração de relatórios.
Duração: 3 semanas
Figura 5 – Sprint 5.
7
Figura 6 – Sprint 6.
Sprint 7: Testes Finais e Deploy
Objetivo: Realizar testes finais e implantar o sistema.
Duração: 2 semanas
8
Figura 7 – Sprint 7.
2.2 Passo 2
Definimos as seguintes variáveis booleanas para os requisitos:
P (Cadastro de Produtos)
E (Atualização de Estoque)
L (Rastreamento de Localização)
R (Relatórios)
9
A coluna "Solução Completa" será verdadeira (T) apenas quando todas as
variáveis (P, E, L, R) forem verdadeiras, ou seja, todos os requisitos forem
atendidos. A expressão lógica que representa a solução completa (todos os
requisitos atendidos) é: P /\ E /\ L /\ R
A operação lógica "E" (AND) é representada por “/\”.
Conforme Tabela 1:
Interpretação:
P (Produtos): Verdadeiro (T) se o sistema permite o cadastro de novos
produtos.
E (Estoque): Verdadeiro (T) se o sistema permite a atualização da quantidade
de produtos em estoque.
L (Localização): Verdadeiro (T) se o sistema possibilita o rastreamento da
localização dos produtos.
R (Relatórios): Verdadeiro (T) se o sistema gera relatórios sobre o estado do
estoque.
A coluna "Solução Completa" indica se todos os requisitos são atendidos. Será
verdadeira (T) apenas quando P, E, L e R forem todos verdadeiros, isto é, todos
os requisitos do sistema forem implementados e funcionais.
P
F
F
F
F
F
F
F
F
T
T
T
T
T
T
T
T
Tabela 1 – Tabela verdade criada.
L
F
F
T
T
F
F
E
F
F
F
F
T
T
T
T
F
F
F
F
T
T
T
T
R
F
T
F
T
F
T
F
T
F
T
F
T
F
T
F
T
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
T
Solução completa
10
T
T
e
xt
o
d
o
s
e
u
p
ar
á
gr
af
o
T
F
F
T
T
F
F
T
T
2.3 Passo 3
Criam-se as funções para definição das estruturas de dados, bem como
algoritmos de cadastro e consulta dos produtos, movimentações de estoque e
relatórios.
Estruturas para Produtos, Categorias e Movimentações:
# Estrutura de Dados para Produtos
class Produto:
def __init__(self, id_produto, nome, categoria, quantidade, preco,
localizacao):
self.id_produto = id_produto
self.nome = nome
self.categoria = categoria
self.quantidade = quantidade
self.preco = preco
self.localizacao = localizacao
# Estrutura de Dados para Categorias
class Categoria:
def __init__(self, id_categoria, nome):
self.id_categoria = id_categoria
self.nome = nome
# Estrutura de Dados para Movimentações de Estoque
class Movimentacao:
def __init__(self, id_movimentacao, id_produto, tipo, quantidade, data):self.id_movimentacao = id_movimentacao
self.id_produto = id_produto
self.tipo = tipo # 'entrada' ou 'saida'
self.quantidade = quantidade
self.data = data
11
Funções para Consulta de Categorias:
Algoritmos de Cadastro e Consulta:
Funções para Cadastro de Produtos e Categorias:
def consultar_categoria(id_categoria):
return categorias.get(id_categoria, "Categoria não encontrada.")
produtos = {}
categorias = {}
movimentacoes = []
id_produto_counter = 1
id_categoria_counter = 1
id_movimentacao_counter = 1
def cadastrar_categoria(nome):
global id_categoria_counter
categoria = Categoria(id_categoria_counter, nome)
categorias[id_categoria_counter] = categoria
id_categoria_counter += 1
return categoria
def cadastrar_produto(nome, id_categoria, quantidade, preco, localizacao):
global id_produto_counter
if id_categoria not in categorias:
raise ValueError("Categoria não encontrada.")
produto = Produto(id_produto_counter, nome, id_categoria, quantidade,
preco, localizacao)
produtos[id_produto_counter] = produto
id_produto_counter += 1
return produto
def consultar_produto(id_produto):
return produtos.get(id_produto, "Produto não encontrado.")
12
Relatórios e Consultas:
Funções para Gerar
Movimentações :
Relatórios e Consultar o
Algoritmos de Movimentação:
Funções para Registrar Entradas e Saídas de Produtos:
Histórico de
def gerar_relatorio_estoque():
relatorio = []
for id_produto, produto in produtos.items():
def registrar_movimentacao(id_produto, tipo, quantidade, data):
global id_movimentacao_counter
if id_produto not in produtos:
raise ValueError("Produto não encontrado.")
if tipo not in ['entrada', 'saida']:
raise ValueError("Tipo de movimentação inválido.")
produto = produtos[id_produto]
if tipo == 'saida' and produto.quantidadeIntrodução a Programação com Python: Algoritmos e Lógica de
Programação para Iniciantes. São Paulo. Novatec, 2010.
PRESSMAN, Roger S. Engenharia de Software: Uma Abordagem Profissional. 7ed, Porto
Alegre: AMGH, 2011.
SOMMERVILLE, Ian. Engenharia de Software. 9.ed, São Paulo: Pearson, 2011.
20