Você está na página 1de 82

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE GOIÁS

UNIDADE DE ENSINO DESCENTRALIZADA DE JATAÍ


CURSO DE INFORMÁTICA

CONTROLE DE ESTOQUE PARA PEQUENAS EMPRESAS

PAULO CESAR DE MATOS BONIFÁCIO

JATAÍ – GO
2005
8

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE GOIÁS


UNIDADE DE ENSINO DESCENTRALIZADA DE JATAÍ
CURSO DE INFORMÁTICA

CONTROLE DE ESTOQUE PARA PEQUENAS EMPRESAS

Trabalho de Conclusão de
Curso apresentado ao CE-
FET-GO/UNED Jataí como
um dos pré-requisitos para
obtenção do título de Tec-
nólogo em Informática com
habilitação em Sistema de
Informação.

PAULO CESAR DE MATOS BONIFÁCIO


ALADIR FERREIRA DA SILVA JÚNIOR - ORIENTADOR

JATAÍ – GO
9

2005
CONTROLE DE ESTOQUE PARA PEQUENAS EMPRESAS

PAULO CESAR DE MATOS BONIFÁCIO

Trabalho de Conclusão de Curso defendido e _____________________ em 16 de


agosto de 2005, pela Banca Examinadora constituída pelos professores:

_________________________________
___
Prof. Aladir Ferreira da Silva Junior (O-
rientador)
CEFETGO/UNED-Jataí

_________________________________
___
Prof. Danillo Vaz Borges de Assis
CEFETGO/UNED-Jataí

_________________________________
___
Prof. Rodrigo Henrique Cunha Palácios
CEFETGO/UNED-Jataí
10

Dedico este trabalho ao meu


pai, minha mãe e a minha es-
posa, pessoas estas que
sempre estiveram do meu la-
do, me apoiando em todos os
momentos.
11

“A imaginação é mais importante do que o conhecimento.”


(Albert Einstein)
12

AGRADECIMENTOS

Agradeço a todos aqueles que, em qualquer momento, se colocaram a


disposição para que eu pudesse concluir a realização deste trabalho e pudesse apri-
morar todos os conhecimentos adquiridos em minha vida, principalmente a minha
esposa Joelma e meu filho Caio, pois são as duas pessoas mais importantes para a
minha vida. Agradeço também aos meus pais Carlos e Ramona, onde tudo o que sou
na vida, partiu da educação ensinada por eles.
Agradeço em especial aos professores do curso, que sempre estiveram a
disposição para ouvir-me e ensinar-me, mesmo que fora das salas de aula.
13

SUMÁRIO

Resumo .................................................................................................................. 08
Introdução............................................................................................................... 09
Desenvolvimento .................................................................................................... 10
1 – Linguagem de Programação ............................................................................. 10
2 – Banco de Dados ............................................................................................... 10
2.1 – Conceito......................................................................................................... 11
3 – Linguagem para a Análise ................................................................................ 14
3.1 – Definição........................................................................................................ 14
3.2 – Visões e Diagramas da UML.......................................................................... 15
3.3 – Vantagens...................................................................................................... 16
3.4 – Porque a UML é uma linguagem.................................................................... 17
4 – Documentação do Sistema ............................................................................... 18
4.1.- Memorial Descritivo ........................................................................................ 18
4.2 - Solução Proposta ........................................................................................... 19
4.3 - Diagrama de Caso de Uso.............................................................................. 21
4.4. – Descrição das Funções................................................................................. 24
4.5 - Diagrama de Classes...................................................................................... 32
4.6 – Diagrama de Seqüência................................................................................. 34
Conclusão............................................................................................................... 35
Anexos.................................................................................................................... 36
Anexo 1 – Diagrama de caso de uso ...................................................................... 36
Anexo 2 – Diagrama de classes.............................................................................. 39
Anexo 3 – Diagrama de seqüência ......................................................................... 40
Anexo 4 – Dicionário de dados ............................................................................... 78
Referência Bibliográfica .......................................................................................... 82
14

RESUMO

Este trabalho visa à implementação de um sistema simples de controle de


estoque, para pequenas empresas, cujas quais não possuam ou mesmo que possu-
am um sistema informatizado de controle de seu estoque e desejem algo mais sim-
ples para seu uso. Para o desenvolvimento deste sistema foi usada a linguagem UML
(elaboração da documentação do sistema), a linguagem visual Microsoft Visual Basic,
versão 6.0 (para a implementação do mesmo) e o Microsoft Access (como banco de
dados). O sistema visa a controlar o estoque de produtos ou a prestação serviços,
assim, como o destino de cada produto depois de realizada sua saída.
15

INTRODUÇÃO

O termo “estoque” é muito elástico. Do ponto de vista tradicional, pode-se

considerá-lo como um representativo de matérias primas, produtos semi-acabados,

componentes para montagem, sobressalentes, produtos acabados, materiais admi-

nistrativos e suprimentos variados. Em organizações atípicas quanto ao ponto de

vista da produção ou comercialização, o termo estoque poderá ter outros significa-

dos, como estoque de livros, de dinheiro em banco, de professores, de analistas e

assim por diante.

Segundo o dicionário Silveira Bueno, a palavra estoque significa “depósito

de mercadorias”. Define-se estoque, como sendo materiais, mercadorias ou produtos

acumulados para utilização posterior, de modo a permitir o atendimento regular das

necessidades dos usuários para a continuidade das atividades da empresa, sendo o

estoque gerado, consequentemente, pela impossibilidade de prever-se a demanda

com exatidão e também como reserva para ser utilizada em tempo oportuno.

Face ao exposto, toda empresa necessita controlar seu estoque, sendo

assim foi desenvolvido um sistema para este tipo de controle. O sistema baseia-se no

cadastro de produtos e/ou serviços, de fornecedores, entrada e saída de produtos, de

notas fiscais, de clientes e um cadastro de usuários, para controle de acesso ao sis-

tema, com restrições conforme o cadastro dos mesmos. Como resposta aos cadas-

tros, o sistema possui relatórios, para a consulta da situação atual do estoque da em-

presa, assim como o destino de cada produto.


16

DESENVOLVIMENTO

1 - Linguagem de programação

A linguagem escolhida para o desenvolvimento foi o Microsoft Visual Ba-

sic, versão 6.0. O Visual Basic 6.0 é uma ferramenta para o desenvolvimento rápido

de aplicações (RAD – Rapid Application Development) para o ambiente Windows. O

seu ambiente integrado de desenvolvimento (IDE – Integrated Development Envi-

ronment) proporciona a criação de aplicações visuais e orientadas a objetos, através

de dezenas de controles (ou ferramentas).

O Microsoft Visual Basic 6.0 proporciona o acesso a diversos tipos de

banco de dados como SQL Server, Microsoft Access, Oracle, Sybase, padrão Xbase

e diversos outros. Além disso, suporta padrões de conectividade mais sofisticados,

como o Dcom, da Microsoft e o Microsoft Jet.

O Microsoft Visual Basic 6.0, possui ferramentas para a programação pa-

ra a Internet, ferramentas que oferecem a possibilidade de conectar programas a

Internet. Na data do lançamento desta versão, alguns navegadores, passaram a in-

terpretar um tipo especial de Visual Basic, chamado VBScript. Com a utilização desta

linguagem, fica mais fácil inclusive a programação para a Internet. Com o VBScript, é

possível criar documentos e controles Active X a partir do Microsoft Visual Basic 6.0.

2 - Banco de dados

Para o desenvolvimento do sistema um banco de dados é essencial para

o armazenamento dos dados, foi escolhido o Microsoft Access, em virtude de ser do

mesmo fabricante da linguagem e possuir uma maior facilidade de integração com a

linguagem de programação.
17

2.1 – Conceito

Podemos entender por banco de dados qualquer sistema que reúna e

mantenha organizada uma série de informações relacionadas a um determinado as-

sunto em uma determinada ordem.

A lista telefônica é um exemplo, nela percebemos que todos os dados re-

ferentes a uma pessoa estão na mesma linha, a isso chamam-se registros..

O tipo ou categoria da informação (nome, telefone, etc.) sobre uma pes-

soa está separado em colunas, as quais chamam-se campos.

Um Sistema Gerenciador de banco de dados relacionais (SGBDR) é usa-

do para armazenar as informações de uma forma que permita às pessoas examiná-

las de diversas maneiras.

O Gerenciador relacional de bancos de dados do Visual Basic e do Ac-

cess é o Microsoft Jet, ele pertence a uma categoria diferente dos Gerenciadores

tradicionais, como o Dbase e o Paradox, pois possuem características em comum

com os bancos de dados cliente-servidor. Tais características comuns são:

• Todas as tabelas, índices, consultas, relatórios e código são armaze-

nados num único arquivo. (MDB)

• Os campos de data suportam informação de hora.

• Admite o armazenamento permanente de comandos SQL*.

• É possível forçar a integridade referencial entre as tabelas.

• Os campos suportam valores nulos (Null)

*Obs.: A linguagem SQL (Structured Query Language) é uma linguagem de alto nível

para manipulação de dados dentro do modelo relacional. Seu objetivo é fornecer uma

interface de alto nível ao usuário. É uma linguagem não procedural, e, não cabe ao
18

usuário definir como o gerenciador de banco de dados executará uma tarefa, mas

somente o ele que deve fazer.

No Dbase/Clipper banco de dados significa um arquivo que contém a es-

trutura de dados (campos) e os dados (Arquivo padrão DBF). Para o padrão MDB

este conjunto de dados e sua estrutura, denomina-se Tabela.

Portanto aquilo que o Dbase/Clipper considera um banco de dados o Ac-

cess e o Visual Basic considera como uma Tabela.

Pode se definir como tabela como um conjunto de dados dispostos em

forma de linhas e colunas. Como exemplo, vê-se a tabela de endereços abaixo:

Nome Endereço Telefone


Carlos Lima Bueno Rua Pindamonhangaba, 1200 226-2356
Rua Voluntários de São Paulo,
Carlos Lima Buel 224-1078
2785.
Carlos Luiz Moraes Rua D. Pedro II, 123 223-0991

As linhas da tabela são os registros (nome, endereço, telefone), e as co-

lunas são os campos. A interseção de uma linha com uma coluna define um atributo

representando um valor do campo. Para a tabela representada acima a interseção da

segunda linha com a coluna nome define o valor do campo nome como: Carlos Lima

Buel.

Para o Access e o Visual Basic todos os componentes do sistema estão

em um único arquivo com extensão MDB, a este "pacote" consideramos o banco de

dados, o qual é um conjunto das tabelas nele contidas.

Logo quando é aberto um arquivo MDB temos acesso a todos os compo-

nentes do sistema: tabelas, consultas, macros, relatórios, etc. A esses componentes

chamamos objetos do sistema e em resumo descreve-se a seguir:


19

Tabelas Onde são armazenadas as informações que deseja-se tratar.


Filtram as informações das tabelas e permitem sua visualização. Ge-
Consultas
ralmente são comandos SQL.
Formulários São janelas destinadas à edição e visualização dos dados.
Organizam os dados de tabelas e consultas de uma maneira que pos-
Relatórios
sam ser impressos
Rotinas que automatizam determinadas tarefas sem necessidade de
Macros
programação. (Utilizadas no Access)
Armazenam instruções e comandos da linguagem Access Basic/VBA e
Módulos
permitem melhorar e expandir os recursos do sistema.
Objetos de um banco de dados (Access)

Obs: Embora o Visual Basic utilize arquivos padrão MDB; Formulários,

Relatórios e Módulos são tratados de forma diferente pelo próprio Visual Basic e,

nativamente, o Visual Basic não utiliza Macros.

Alem disso no Access e Visual Basic utiliza-se outros arquivos além dos

arquivos MDB; como arquivos DBF do Dbase/Clipper, arquivos do Paradox, do Btrie-

ve, etc.

Os recursos de definição de dados do mecanismo Jet permitem a criação,

a modificação e a exclusão de tabelas, índices e consultas. O Jet também aceita a

validação de dados em nível de campo e registro. A integridade de dados tem supor-

te sob a forma de chaves primárias e integridade referencial entre tabelas.

Para manipulação de dados, o Jet admite o uso da SQL e de objetos de

acesso aos dados. Esses objetos permitem ao programador manipular informações

contidas no banco de dados, através da definição das propriedades dos objetos e

pela execução dos métodos associados aos objetos. A tabela abaixo relaciona esses

objetos e descreve resumidamente suas funções:


20

Objeto Descrição
O objeto que referencia o mecanismo de bancos de dados do Microsoft
DBengine
Jet
Workspace Uma área na qual o usuário pode trabalhar com os bancos de dados
Uma coleção de informações organizadas em tabelas, juntamente com
Database
informações a respeito de índices e relações sobre as tabelas.
TableDef Uma definição da estrutura física de uma tabela de dados
Uma consulta armazenada de SQL das informações contidas no banco
QueryDef
de dados.
Recordset Uma coleção de registros de informações sobre um único tópico
Field Uma única unidade de informações em um banco de dados
Uma lista ordenada de registros em um recordset, baseada em um
Index
campo chave definido.
Informações armazenadas a respeito do relacionamento entre duas ta-
Relation
belas
Objetos para manipulação de dados

3 - Linguagem para a Análise

A documentação do sistema, segue a linguagem UML (Unified Modeling

Language) – Linguagem de Modelagem Unificada.

“Vivemos uma grande evolução tecnológica e, com ela, um


aumento exponencial na demanda de novos softwares. Preci-
samos desenvolver mais — e em menos tempo. Nossos soft-
wares precisam carregar um "algo a mais". Assim, é hora de
repensar antigos modelos de desenvolvimento e gerência.”
(ANA CRISTINA MELO, LINHA DE CÓDIGO - 2005)

3.1 - Definição

A UML - Unified Modeling Language é uma linguagem gráfica padrão pa-

ra a elaboração da estrutura de projetos complexos de software. A UML pode ser

empregada para visualizar, especificar, construir e documentar os artefatos de siste-

mas de software.
21

A UML é o resultado da unificação da linguagem de modelagem de obje-

tos de 3 métodos líderes do mercado: Booch, Object Modeling Technique (OMT) e

Objected-Oriented Software Engineering (OOSE). Em 1997, a UML v1.1 foi adotada

pela OMG (Object Management Group) e desde então tornou-se o padrão da indús-

tria de software para a modelagem de objetos e componentes.

Embora a concepção da UML tenha sido influenciada por vários métodos

de análise e projeto orientados a objetos, há particularmente três notações das quais

a UML é derivada:

- OOD (Projeto Orientado a Objetos) – Grady Booch,

- OMT (Técnica de Modelagem de Objetos) – James Rumbaugh,

- OOSE (Engenharia de Software Orientada a Objetos) – Ivar Jacobson.

3.2 - Visões e Diagramas da UML

A arquitetura de um sistema pode ser descrita através de cinco visões in-

terligadas. Cada visão constitui uma projeção na organização e estrutura do sistema,

cujo foco está voltado para determinado aspecto desse sistema.

A UML é uma linguagem muito expressiva, abrangendo todas as visões

necessárias ao desenvolvimento e implantação de sistemas:

- Visão de caso de uso: focaliza os comportamentos de um sistema de-

vendo ser transparente a todos os envolvidos: gerentes, analistas, programadores e

usuários finais.

- Visão de Projeto: focaliza a estrutura de um sistema através da defini-

ção de classes, colaborações e as interfaces do sistema.

- Visão de Processo: focaliza as questões de desempenho e escalabili-

dade do sistema.

- Visão de Implementação: focaliza os artefatos físicos (programas, bi-

bliotecas, banco de dados) para a efetiva montagem do sistema.


22

- Visão de Implantação: focaliza a topologia do hardware, liberação e

instalação do sistema.

Um diagrama é a apresentação gráfica de um conjunto de elementos e

são desenhados para permitir a visualização de um sistema sob diferentes perspecti-

vas. A UML disponibiliza diagramas específicos para a modelagem visual das cinco

visões:

· Diagrama de casos de uso para ilustrar as interações do usuário com o

sistema

· Diagrama de classe para ilustrar a estrutura lógica

· Diagrama de objetos para ilustrar os objetos e suas interações

· Diagrama de estados para ilustrar comportamentos

· Diagrama de componentes para ilustrar a estrutura física do software

· Diagrama de Interações: composto de diagrama de seqüência e diagra-

ma de colaboração. Utilizado para ilustrar comportamentos

· Diagrama de Atividades para ilustrar o fluxo dos eventos.

3.3 - Vantagens

Utiliza-se a modelagem para compreender melhor o sistema que está

sendo desenvolvendo. Em um sentido mais amplo, um modelo é uma simplificação

da realidade. A modelagem visual com a UML torna a arquitetura do sistema mais

tangível, permitindo a avaliação em dimensões múltiplas.

A UML permite avaliar a aderência e a qualidade da arquitetura através de

iterações precoces com o usuário quando os defeitos podem ser corrigidos antes de

comprometer o sucesso do projeto.

Utilizando uma linguagem de modelagem padrão como a UML, os diferen-

tes membros da equipe tanto de desenvolvimento como business podem comunicar

suas decisões sem que haja ambigüidades ou diferenças de interpretação.


23

A modelagem visual permite que os detalhes do processo sejam expostos

ou escondidos conforme a necessidade, auxiliando o desenvolvimento de projetos

complexos e extensos. Além disto, a UML ajuda a manter a consistência entre a es-

pecificação e a implementação através do desenvolvimento iterativo e do planeja-

mento de testes em cada iteração. Com o desenvolvimento focado no usuário e no

business, o resultado final é diminuir o ciclo de vida e garantir a qualidade do sistema.

3.4 - Porque a UML é uma linguagem

Uma linguagem deve seguir uma gramática (em que todos os elementos

básicos de representação sejam indicados) e também a um conjunto de regras sintá-

ticas, tal qual o nosso português. Talvez faltasse aos outros diagramas essa rigidez

sintática que em outro diagrama (mesmo que no seu nível de abstração) devesse

obedecer à sua sintática e mantendo a semântica trazida de outro diagrama, ou seja,

um diagrama, efetivamente, não se encaixava no outro, a não ser que se fizesse um

grande esforço para se enxergar, por exemplo, o que um DFD tem a ver com seu

respectivo DER.

O Esforço da UML é permitir que desde a representação das funções bá-

sicas do sistema (e seus respectivos responsáveis) até o planejamento da arquitetura

de implementação, todo o processo aconteça de maneira coerente e com uma estrei-

ta ligação com o plano anterior.


24

4 – DOCUMENTAÇÃO DO SISTEMA

4.1 – Memorial Descritivo

O sistema constitui-se em um controle de estoque para pequenas

empresas comerciais.

O sistema oferecerá ao cliente um controle de estoque eficiente de

modo a definir as quantidades mínimas e máximas aceitáveis de cada produto

estocado, assim como a quantidade atual de seu estoque.

O usuário alimenta o sistema com o cadastro de produtos, que po-

de também ser um serviço. Este cadastro pode ser feito através de Nota Fis-

cal ou não, ou seja, o produto ou serviço poderá entrar para o estoque mesmo

sendo adquirido de fornecedores físicos e jurídicos.

O produto já cadastrado é visualizado pelo usuário podendo ser

consultado, alterado e excluído por este a qualquer momento.

O usuário cadastra também clientes, fornecedores, marcas, produ-

tos, categorias, saída e entrada dos produtos, unidades, notas fiscais e itens

podendo, também estes serem alterados, excluídos e consultados a qualquer

momento.

Serão etapas a serem geradas pelo sistema: relatórios com anota-

ções do usuário de entrada/saída de produtos, estoques mínimos e máximos

já definidos pelo usuário, relação de cadastro de clientes, de fornecedores e

produtos ou serviços, bem como determinar também o saldo, além de definir o

destino de cada produto nas vendas. Os relatórios contendo todas estas in-

formações serão gerados pelo sistema, permitindo ainda especificar dados da

venda de cada produto como o fornecedor de cada produto estocado.


25

4.2 – Solução Proposta

Após pesquisa de campo realizada, verificou-se a necessidade do

desenvolvimento de um sistema de controle de estoque, para posterior im-

plantação em pequenas empresas comerciais, facilitando o controle de esto-

que dessas empresas. Decidiu-se ainda pelas seguintes características técni-

cas:

 A plataforma Microsoft Windows, em virtude da plataforma

Linux, ainda ser pouco difundida, sendo mais difundida em

servidores;

 A base de dados construída e gerenciada pela ferramenta

Access versão 2000, ferramenta do mesmo desenvolvedor

de linguagem de desenvolvimento do sistema, isto é, facili-

tando comunicação e acesso entre as duas camadas;

 O desenvolvimento dos módulos será feito na linguagem de

programação Visual Basic versão 6.0. Ferramenta para o

desenvolvimento rápido de aplicações (RAD – Rapid Appli-

cation Development) para o ambiente Windows. Seu ambi-

ente integrado de desenvolvimento proporciona a criação de

aplicações visuais e orientadas a objetos, através da utiliza-

ção de dezenas de controles. Esta ferramenta proporciona o

acesso a diversos tipos de banco de dados, como o SQL

Server, Microsoft Access, Oracle, assim como bancos de

dados gratuitos, como o MySql e o Postgree.

O sistema foi desenvolvido seguindo as seguintes etapas:

 Análise;
26

 Construção de diagramas;

 Dicionário de dados;

 Base de dados;

 Implementação do sistema;

 Testes e manutenção.
27

4.3 – Diagrama de Caso de Uso

Os diagramas de caso de uso são um dos cinco diagramas disponí-

veis na UML para a modelagem de aspectos dinâmicos de sistemas. Os dia-

gramas de casos de uso têm um papel central para a modelagem do compor-

tamento de um sistema, de um sistema, de um subsistema ou de uma classe.

Cada um mostra um conjunto de casos de uso e atores e seus relacionamen-

tos.

Os diagramas de caso de uso são importantes para visualizar, es-

pecificar e documentar o comportamento de um elemento. Esses diagramas

fazem com que sistemas, subsistemas e classes fiquem acessíveis e compre-

ensíveis, por apresentarem uma visão externa sobre como esses elementos

podem ser utilizados no contexto. Os diagramas de casos de uso também são

importantes para testar sistemas executáveis por meio de engenharia de pro-

dução e para compreendê-los por meio de engenharia reversa.

Um diagrama de caso de uso é apenas um tipo especial de diagra-

mas e compartilha as mesmas propriedades comuns a todos os demais dia-

gramas – um nome e um conteúdo gráfico que são uma projeção em um mo-

delo. O que diferencia um diagrama de caso de uso dos outros tipos de dia-

gramas é o seu conteúdo particular.

Os diagramas de casos de uso costumam conter o seguinte:

- Casos de uso;

- Atores;

- Relacionamentos de dependência, generalização e associação.

Assim como os outros diagramas, os diagramas de casos de uso

podem conter notas e restrições.


28

Os diagramas de caso de uso também podem conter pacotes, utili-

zados para agrupar elementos do modelo em conjuntos maiores. Ocasional-

mente, você também desejará incluir instâncias de casos de uso em seus dia-

gramas, principalmente quando quiser visualizar sistema específico em exe-

cução.

Para fazer a modelagem do contexto de um sistema:

- Identifique os atores que se encontram ao redor do sistema, con-

siderando quais grupos precisam de ajuda do sistema para a realização de

suas tarefas; quais grupos são necessários para a execução de funções do

sistema; quais grupos interagem com algum hardware externo ou outros sis-

temas de software; e quais grupos realizam funções secundárias de adminis-

tração e de manutenção;

- Organize os atores semelhantes em uma hierarquia de generaliza-

ção/ especificação;

- Preencha um diagrama de caso de uso com esses atores e espe-

cifique os caminhos de comunicação de cada ator até os casos de uso do sis-

tema.

Ao definir um diagrama de caso de uso:

- Dê-lhe um nome capaz de comunicar seu propósito;

- Distribua seus elementos para minimizar o cruzamento de linhas;

- Organize seus elementos espacialmente, de maneira que os com-

portamentos e papéis semanticamente relacionados apareçam próximos fisi-

camente;

- Use notas e cores como indicações visuais e chamar atenção para

características importantes do diagrama;


29

- Tente não mostrar muitos tipos de relacionamentos. Em geral, se

você tiver relacionamentos de inclusão e estendidos complicados, coloque

esses elementos em outro diagrama.

O diagrama de caso de uso mostra como o sistema a ser desenvol-

vido vai interagir com seu ambiente. Na modelagem de caso de uso, o sistema

é visto como a caixa-preta que fornece situações de aplicação. O diagrama de

caso de uso oferece possíveis situações do mundo real para o teste do siste-

ma.

Um diagrama de caso de uso é um gráfico de atores, casos de uso

e as generalizações entre casos de uso. O diagrama não especifica os casos

de uso, mas só apresenta qual ator interage com qual caso e organiza os ca-

sos entre eles.

As características principais de um caso de uso são:

- Um caso de uso é sempre iniciado por um ator;

- Um caso de uso é completo;

- Um caso de uso fornece informação a um ator.

Com a implantação do sistema, o acompanhamento das atividades

de controle de estoque, será feito pelas seguintes funções:

1) Função cadastro Produtos;

2) Função cadastro de Clientes;

3) Função cadastro de Fornecedores;

4) Função cadastro de Categorias;

5) Função cadastro de Unidades;

6) Função cadastro de Marcas;

7) Função cadastro de Saídas de produto;


30

8) Função cadastro de Entradas de produto;

9) Função cadastro de Notas Fiscais e Itens;

10) Função cadastro de Usuários.

11) Função visualização de relatórios ou impressão de relatórios: de mo-

vimentação dos produtos (entrada e saída), produtos por destino, sal-

do, estoque mínimo, clientes, fornecedores e produtos.

4.4 - Descrição das Funções

Todas as funções possuem a característica de inserir, alterar, con-

sultar e excluir os dados digitados, com exceção das funções de cadastro de

entrada de produto e de saídas de produtos, onde a opção de alterar será de-

sabilitada. Todas as interfaces possuem uma mesma forma para facilitar a

utilização do STOKIM.

- Cadastro de Produtos

Para que não ocorra duplicidade no cadastramento de produtos,

estes produtos serão cadastrados anteriormente ao cadastro de entrada ou

saída e ao cadastro de notas fiscais. Além das funções básicas de cada inter-

face, quando um novo produto será cadastrado, este é verificado, caso já te-

nha sido cadastrado, os seus dados serão apresentados no formulário. Esta

função possui os seguintes campos:

• Código do produto: Código interno da empresa que esteja u-

tilizando o produto, este código difere do código interno do

sistema;
31

• Nome do produto: Nome do produto que será cadastrado;

• Descrição do produto (opcional): Uma possível descrição do

produto, como cor, matéria, textura e etc;

• Categoria: Seleção de uma categoria deste produto ou servi-

ço que está sendo cadastrado. Caso não seja cadastrada

nenhuma categoria anteriormente, será possível o cadastro

de uma nova, pelo botão próximo a esta caixa de listagem.

Se o usuário não selecionar nenhuma categoria, será cadas-

trado “SEM CATEGORIA”;

• Fornecedor: Seleção de um fornecedor deste produto ou

serviço que está sendo cadastrado. Caso não seja cadastra-

do nenhum fornecedor anteriormente, será possível o cadas-

tro de um novo, pelo botão próximo a esta caixa de listagem.

Se o usuário não selecionar nenhum fornecedor, será cadas-

trado “SEM FORNECEDOR”,

• Marca: Seleção de uma marca deste produto. Caso não seja

cadastrada nenhuma marca anteriormente, será possível o

cadastro de uma nova, pelo botão próximo a esta caixa de

listagem. Se o usuário não selecionar nenhuma marca, será

cadastrado “SEM MARCA”;

• Unidade: Seleção de uma unidade para este produto. Caso

não seja cadastrada nenhuma unidade anteriormente, será

possível o cadastro de uma nova, pelo botão próximo a esta

caixa de listagem. Se o usuário não selecionar nenhuma ca-

tegoria, será cadastrado “SEM UNIDADE”;


32

• Quantidade Máxima do produto: O usuário deverá informar a

quantidade máxima deste produto em seu estoque, quando

a entrada ultrapassar esse valor, uma mensagem aparecerá;

• Quantidade Mínima do produto: O usuário deverá informar a

quantidade mínima deste produto em seu estoque, quando a

saída ultrapassar esse valor, uma mensagem aparecerá;

• Status: Caso este produto já tenha sido excluído de sua ga-

ma de produtos vendidos, este poderá ser atualizado, como

um produto inativo, aparecendo na lista de produtos inativos,

no mesmo formulário. A opção padrão é “ATIVO”.

• Foto do produto (opcional): Poderá ser informada uma foto

do produto cadastrado, selecionando a mesma em seu com-

putador, caso não seja cadastrado nenhuma foto, o sistema

apresenta uma foto “SEM FOTO”.

- Cadastro de Clientes

Esta função tem como objetivo principal, cadastrar os clientes desta

empresa, como dados básicos de endereço, e-mail e telefones. Quando um

novo cliente é cadastrado, o sistema procura se o mesmo, já não foi cadastra-

do, caso seja positivo essa procura, os dados do mesmo são apresentados no

formulário. É composta dos seguintes campos.

• Nome do cliente;

• Endereço: Composto de logradouro, número, bairro e com-

plemento;
33

• Telefones (Comercial, Fax e Celular);

• E-mail (opcional);

• Observações (opcional).

- Cadastro de Fornecedores

Função responsável para o cadastro de fornecedores de produtos

para esta empresa. Formada por:

• Nome da Empresa;

• Contato: Nome de uma pessoa responsável na empresa;

• Telefones (Comercial e Fax);

• Categoria dos produtos oferecidos: Será selecionada uma

categoria, que previamente já foi cadastrada;

• Cidade do fornecedor;

• Unidade Federativa do fornecedor;

• E-mail (opcional);

• Website (opcional);

• Status: Caso este fornecedor não continue a fornecedor

seus produtos, este poderá ser atualizado, como um forne-

cedor inativo, aparecendo na lista de fornecedores inativos,

no mesmo formulário. A opção padrão é “ATIVO”.

- Cadastro de Notas Fiscais e Itens


34

Esta função serve para o cadastro de notas fiscais no sistema. As-

sim que as notas fiscais são cadastradas, assim como seus respectivos itens,

estes são automaticamente adicionados ao saldo atual de cada produto.

Quando um fornecedor é selecionado, suas notas fiscais são relacionadas no

formulário e relacionando também todos os produtos desta nota. É formado

por:

• Fornecedor: Seleção de um fornecedor que está sendo ca-

dastrado. Caso não seja cadastrado nenhum fornecedor an-

teriormente, será possível o cadastro de um novo, pelo botão

próximo a esta caixa de listagem. Deverá ser informado o

fornecedor, para que possa ser cadastrada uma nova nota

fiscal. Quando o nome de um fornecedor for selecionado, os

produtos por ele vendidos formam a caixa de seleção de

produtos.

• Numero da nota fiscal;

• Data da nota fiscal: Será informada a data da nota fiscal,

sendo padrão a data do sistema, mas podendo ser alterada;

• Valores da nota fiscal (valor total, valor do frete e valor do

imposto): São campos numéricos, não calculados;

• Descrição do produto (opcional);

• Quantidade adquirida conforme a nota;

• Valor unitário do produto;

• Valor total do produto (campo calculado a partir da quantida-

de e do valor unitário).
35

- Cadastro de Usuários

Todas as restrições de cadastro no sistema são informadas no ca-

dastro de usuários, assim como os relatórios que o usuário pode acessar.

Quando um novo usuário for cadastrado, seu nome e seu login são verificados

para evitar duplicidade. É composto por:

• Nome do usuário;

• Login;

• Senha;

• Formulários a serem acessados;

• Relatórios a serem acessados.

- Cadastro de Categorias

Permite informar quais as categorias de produto ou serviços serão

cadastrados. É formado por:

• Nome da categoria;

• Descrição da categoria (opcional).

- Cadastro de Unidades

Permite informar quais as unidades possíveis para cada produto a

ser cadastrado. É formado por:

• Nome da unidade;

• Descrição da unidade (opcional).


36

- Cadastro de Marcas

Permite informar quais as marcas possíveis para cada procuro a

ser cadastrado. É formado por:

• Nome da marca;

• Descrição da marca (opcional).

- Cadastro de Entrada de Produto

Assim que um novo produto é adquirido, este deverá dar entrada

no estoque. Esta função não possui a função de alterar. Assim que a entrada

for salva o saldo atual deste produto é alterado. É composto por:

• Fornecedor: Seleção de um fornecedor que está sendo ca-

dastrado. Deverá ser informado o fornecedor, para que pos-

sa ser cadastrada a entrada de um produto. Quando o nome

de um fornecedor for selecionado, os produtos por ele ven-

didos formam a caixa de seleção de produtos.

• Produto: Seleção do produto a ser cadastrado;

• Quantidade;

• Local (opcional): Local onde poderá ser armazenado o pro-

duto. Ex.: Prateleira, gaveta, etc.

• Valores (custo, imposto e total): Campos numéricos não cal-

culados,
37

- Cadastro de Saída de Produto

Quando um produto sair do estoque (venda, serviço realizado, etc.),

este deverá dar saída no estoque. Esta função não possui a função de alterar.

Assim que a saída for salva o saldo atual deste produto é alterado. É compos-

to por:

• Fornecedor: Seleção de um fornecedor que está sendo ca-

dastrado. Deverá ser informado o fornecedor, para que pos-

sa ser cadastrada a entrada de um produto. Quando o nome

de um fornecedor for selecionado, os produtos por ele ven-

didos formam a caixa de seleção de produtos.

• Produto: Seleção do produto a ser cadastrado;

• Data de saída: Será informada a data de saída do produto,

sendo padrão a data do sistema, mas podendo ser alterada;

• Quantidade;

• Destino: Deverá ser informado o destino do produto, se ser-

viço, venda, transferência ou outro destino. Se o destino for

venda, será habilitado o campo nome do cliente, qualquer

outra forma, será habilitado o campo local.

• Requisição (opcional): Número da requisição, caso houver.


38

4.5 - Diagrama de Classes

A UML é adequada para a modelagem de sistemas, cuja abrangên-

cia pode incluir sistemas de informação corporativos a serem distribuídos para

aplicações baseadas em Web e até sistemas complexos embutidos em tempo

real.

Em qualquer aplicação orientada a objetos, classes são importantes

por quatro motivos:

• Na verdade, é a real estrutura de dados, ou seja, é o objetivo

final para o início da etapa de programação;

• Dar ao programador a noção de domínio do problema;

• Projetar uma solução de implementação ao problema;

• Traçar perspectivas de escalabilidade ao sistema (onde e

como o sistema pode crescer em termos funcionais).

A princípio, para quem apenas possui experiência com a modela-

gem de dados, o Diagrama de Classes pode parecer uma simples coleção de

entidades mais complexas, no entanto esta é uma idéia errada, pois o modelo

de classe especializa-se na representação do comportamento e não apenas

nos dados.

A construção de um Diagrama de Classes está, obviamente, basea-

da no conceito de Classe. Desse fato, pode-se concluir que Diagrama de

Classes são estáticos, ou seja, devem apenas esboçar o q interage e não o q

acontece quando as classes interagem. Portanto, para que se crie um Dia-


39

grama de Classe, é imprescindível conhecer todos os conceitos do Paradigma

de Orientação a Objetos relacionados à noção de classes.

Uma classe é uma abstração de um conjunto de coisas que possu-

em características e operações em comum. Ou seja, uma classe é um conjun-

to de objetos. No paradigma de Objetos, um objeto é uma entidade fundamen-

tal.

Uma classe não é um ponto isolado e totalmente autônomo dentro

de um sistema de software. Para que uma classe obtenha sucesso e realmen-

te execute suas tarefas, invariavelmente, ações vindas de outras classes são

necessárias.

Este diagrama lista todos os conceitos do domínio que serão im-

plementados no sistema. Por exemplo, no domínio de reservas de assentos,

os conceitos importantes seriam: lugar, data, e cliente; no domínio de edição

de textos, os conceitos importantes seriam: caracteres, linhas, páginas, pala-

vras, fonte de caracteres, etc. O diagrama lista também as relações entre os

conceitos: um cliente “reserva”' x lugar (es) para a data y. Em geral, conceitos

são substantivos e relações são verbos.

O diagrama de classe é muito importante porque define a estrutura

do sistema a desenvolver. A maioria dos outros diagramas vai usar as classes

definidas no diagrama de classe. Por exemplo, o diagrama de colaboração,

mostra as interações entre classes do sistema.


40

4.6 – Diagrama de Seqüência

Diagramas que mostram interação entre objetos organizados se-

qüencialmente no tempo, mostram a sucessão de mensagens trocadas entre

objetos.

A implementação de mensagens pode tomar várias formas, como

por exemplo, uma chamada de procedimento, o envio de um sinal entre linhas

ativas, comunicação de eventos e assim por diante.

Cada mensagem no Diagrama de Seqüência corresponde a uma

operação no Diagrama de Classe.

Mensagens são operações invocadas, portanto, as operações de-

vem estar presentes nos objetos de destino.


41

CONCLUSÃO

Para o desenvolvimento de um sistema é essencial uma avaliação do que

poderá se fazer e do que irá se fazer antes da implementação do mesmo. Verifica-se

que a UML, dá suporte para um melhor desenvolvimento do sistema, assim como

para o cliente, já que ocorre uma interação, uma facilidade de entendimento, em fun-

ção dos diagramas pertencentes à mesma.

A linguagem Microsoft Visual Basic 6.0, é de fácil programação por já pos-

suir controles e componentes, que facilitam o desenvolvimento mais rápido de um

sistema.

Como banco de dados, o Microsoft Access, possui facilidades de um

SGBD, na sua versão 2002, aceitado consultas desenvolvidas nele próprio, assim

como consultas utilizando a linguagem SQL. No sistema, serão utilizadas instruções

SQL, para a inserção, exclusão, consulta e alteração dos dados.

Nos anexos presentes tem se os diagramas pertencentes à UML, para a

documentação do desenvolvimento de um sistema chamado Stokim, que tem como

objetivo principal controlar o estoque de pequenas empresas comerciais, podendo

estas empresas serem prestadoras de serviços ou não.

Os diagramas criados na fase de analise foram os diagramas de Casos de

Uso (Anexo I), Diagrama de Classes (Anexo II) e Diagramas de Seqüência (Anexo

III). Foi incluído o Dicionário de Dados (Anexo IV), com a descrição dos campos exis-

tentes no banco de dados.


42

Anexo 1 - Diagrama de Caso de Uso

Armazena da-
Efetua Cadastro de Empresa Cadastrar dos da empresa
Empresa do
Usuário
Efetua Cadastro de Cliente Armazena os
Cadastrar dados clientes
Clientes
Usuário Sistema
Armazena as
Efetua Cadastro Marca Marcas
Cadastrar
Marca

Efetua Cadastro de Cadastrar Armazena os


Produto Produto Produtos

Efetua Cadastro Categoria Armazena as


Cadastrar Categorias
Categoria
Efetua Cadastro de Saída Armazena as
Saídas
Cadastrar
Saída
Armazena os
Efetua Cadastro de Fornecedor Fornecedores
Cadastrar
Fornecedor
Armazena as
Efetua Cadastro de Unidade Unidades
Efetua Cadastro de Entrada Cadastrar
Unidade
Efetua Cadastro de Entrada
Armazena as Entradas
Cadastrar
Entrada

Efetua Cadastro de Nota Fiscal Armazena as Notas Fiscais


Cadastrar
Nota Fiscal

Armazena as Itens
Efetua Cadastro de Itens Cadastrar
Itens

Efetua Relatórios Impressão de Relatórios


Relatórios

Impressora
43

Detalhamento do Diagrama de Caso de Uso

Nº Caso de Uso Quem inicia a Descrição do Caso de Uso


ação
01 Cadastro de Clientes Usuário O usuário irá cadastrar os clientes com
seus dados pessoais e endereço.

02 Cadastro de Produ- Usuário O usuário irá cadastrar os dados dos pro-


tos dutos, para posterior inclusão no esto-
que.

03 Cadastro de Forne- Usuário O usuário irá cadastrar os dados dos for-


cedores necedores, para inclusão no cadastro de
produtos.

04 Cadastro de Marca Usuário O usuário cadastrará as marcas proveni-


entes do comércio de seus produtos.

05 Cadastro de Unida- Usuário O usuário irá cadastrar as unidades pro-


des váveis de seus produtos.

06 Cadastro de Catego- Usuário O usuário irá cadastrar as categorias que


rias seu produto pode ter, tais como Serviços
de limpeza, Serviços de informática, etc.

07 Cadastro de Usuá- Administrador O administrador do sistema (usuário


rios do sistema pleno) poderá cadastrar novos usuário e
dar permissão para acesso aos determi-
nados cadastros.

08 Cadastro de dados Administrador O administrador do sistema poderá ca-


da empresa do sistema dastrar os dados da empresa na primeira
vez que este acessar o sistema ou alterar
a qualquer momento os mesmos.

09 Cadastrar Entrada de Usuário O usuário cadastrará a entrada dos pro-


Produtos dutos assim que os mesmos forem com-
prados, adquiridos ou mesmo se já per-
tencerem a loja, onde sua aquisição não
se tem dados de informação.
09 Cadastrar Login Sistema Automaticamente será cadastrado o re-
gistro de cada usuário, assim que o
mesmo acessa ao sistema.

10 Cadastrar Saída de Usuário O usuário cadastrará a saída dos produ-


Produtos tos do estoque assim que os mesmos
forem vendidos, utilizados de qualquer
forma.
44

11 Movimentação do Usuário Poderá ser informado em qualquer mo-


produto mento sobre a movimentação (entrada ou
saída) dos produtos, sendo informado o
período que se deseja essa informação.

12 Estoque Mínimo Usuário Este relatório exibe o estoque mínimo de


todos os produtos cadastrados no siste-
ma.

13 Produtos por Desti- Usuário Exibe os produtos por seu destino, isto é,
no após sua saída, por venda, utilização em
um serviço, etc., poderá ser visualizada
essa informação.

14 Saldo Atual Usuário Informa o saldo atual, de todos os produ-


tos cadastrados.
15 Clientes Cadastrados Usuário Exibe todos os clientes cadastrados no
sistema.
16 Fornecedores Cadas- Usuário Todos os dados cadastrados dos fornece-
trados dores aparecem nessa relação.
17 Produtos Cadastra- Usuário Lista todos os produtos cadastrados no
dos sistema.
45

Anexo 2 – Diagrama de Classes

SALDO
PRODUTO : PRODUTO
SALDO : INTEGER
SALDOANTERIOR : INTEGER
DCAD : DATE
DALT : DATE
HALT : DATE
USUARIO : STRING SAIDA
ALTERAR_SALDO() PRODUTO: PRODUTO
ENTRADA INSERIR_SALDO() DSAIDA: DATETIME
CONSULTAR_SALDO() 1 QUANT_SAIDA: INTEGER
PRODUTO: PRODUTO SITUACAO: STRING
QUANT: INTEGER 1 1 DESTINO: STRING
VAL_CUSTO: CURRENCY 1 REQUISICAO: STRING
VAL_IMPOSTO: CURRENCY DCADSAI : DATE
VAL_TOTAL: CURRENCY DALTSAI : DATE
ARMAZENAMENTO: STRING HALTSAI : DATE
UNIDADE DCADENT: DATE USUARIO: STRING
UNIDADE : STRING DALTENT: DATE
DESCRICAO : STRING HALTENT: DATE INSERIR_SAIDA()
DCADUNI : DATE USUARIO: STRING ALTERAR_SAIDA()
DALTUNI : DATE EXCLUIR_SAIDA()
HALTUNI : DATE INSERIR_ENTRADA() CONSULTAR_SAIDA()
USUARIO : STRING ALTERAR_ENTRADA()
EXCLUIR_ENTRADA() CATEGORIA
INSERIR_UNIDADE() CONSULTAR_ENTRADA() *
ALTERAR_UNIDADE() * CATEGORIA : STRING
EXCLUIR_UNIDADE() DESCRICAO : STRING
CONSULTAR_UNIDADE() DCADCAT : DATE
DALTCAT : DATE
HALTCAT : DATE
1 USUARIO : STRING
INSERIR_CATEGORIA()
MARCA ALTERAR_CATEGORIA()
MARCA : STRING EXCLUIR_CATEGORIA()
FABRICANTE : STRING CONSULTAR_CATEGORIA()
DCADMAR : DATE 1
DALTMAR : DATE
HALT : DATE *
USUARIO : STRING 1
1
INSERIR_MARCA() PRODUTO
ALTERAR_MARCA() CATEGORIA : CATEGORIA
EXCLUIR_MARCA() 1 UNIDADE : UNIDADE
CONSULTAR_MARCA() 1
FORNECEDOR : FORNECEDOR
MARCA : MARCA 1
NOME_PRODUTO : STRING FORNECEDOR
DESC_PRODUTO : STRING CATEGORIA : CATEGORIA
COD_PRODUTO : STRING 1 FANTASIA : STRING
1 ESTMAX : INTEGER CIDADE : STRING
ESTMIN : INTEGER UF : STRING
STSPRODUTO : BOOLEAN TELEFONE : STRING
DIRETORIO : STRING FAX : STRING
DCADPRO : DATE EMAIL : STRING
DALTPRO : DATE WEB : STRING
HALTPRO : DATE * CONTATO : STRING
NOTA_FISCAL USUARIO : STRING 1 STATUS : BOOLEAN
FORNECEDOR : FORNECEDOR DCADFOR : DATE
DENTRADA : DATE 1 INSERIR_PRODUTO() DALTFOR; DATE
VALOR_TOTAL : CURRENCY ALTERAR_PRODUTO() HALTFOR : DATE
VALOR_IMPOSTO : CURRENCY EXCLUIR_PRODUTO() USUARIO : STRING
VALOR_FRETE : CURRENCY * CONSIULTAR_PRODUTO()
NRNOTA_FISCAL : INTEGER INSERIR_FORNECEDOR()
DCADNF : DATE ALTERAR_FORNECEDOR()
DALTNF : DATE EXCLUIR_FORNECEDOR()
HALTNF : DATE CONSULTAR_FORNECEDOR()
USUARIO : STRING
INSERIR_NOTA()
ALTERAR_NOTA()
EXCLUIR_NOTA()
CONSULTAR_NOTA() LOGIN
1 USUARIO : USUARIO
USUARIOS DLOGIN : DATE
HLOGIN : DATE
NOME_USUARIO : STRING
LOGIN : STRING CLIENTE
INSERIR_LOGIN()
SENHA : STRING CONSULTAR_LOGIN() NOME : STRING
TODOS : BOOLEAN ENDERECO : STRING
CLIENTES : BOOLEAN NUMERO : STRING
ENTRADA : BOOLEAN *
BAIRRO : STRING
* NOTA : BOOLEAN CEP : INTEGER
ITEM SAIDA : BOOLEAN COMPLEMENTO : STRING
FORNECEDOR : BOOLEAN COMERCIAL : STRING
PRODUTO: PRODUTO MARCA : BOOLEAN 1
NF : NOTA_FISCAL FAX : STRING
CATEGORIA : BOOLEAN CELULAR : STRING
DISCRIMINACAO : STRING
QUANTIDADE : INTEGER UNIDADE : BOOLEAN OBSERVACAO : STRING
UNITARIO : CURRENCY USUARIOS : BOOLEAN EMAIL : STRING
PRODUTOS : BOOLEAN DCAD : DATE
TOTAL : CURRENCY DADOS : BOOLEAN
DCAD_ITEM : DATE DADOS DALT : DATE
RELATORIO : BOOLEAN HALT : DATE
DALT_ITEM : DATE FANTASIA : STRING
HALT_ITEM : DATE RELENTRADA : BOOLEAN USUARIO : STRING
RELASAIDA : BOOLEAN RAZAO : STRING
USUARIO : STRING TELEFONE : STRING
RELFORNECEDOR : BOOLEAN INSERIR_CLIENTE()
RELESTMIN : BOOLEAN FAX : STRING
INSERIR_ITEM() CIDADE : STRING ALTERAR_CLIENTE()
RELPRODUTO : BOOLEAN EXCLUIR_CLIENTE()
ALTERAR_ITEM() RELSALDO : BOOLEAN UF : STRING
EXCLUIR_ITEM() ENDERECO : STRING CONSULTAR_CLIENTE()
CONSULTAR_ITEM() RELPRODDESTINO : BOOLEAN
DCADUSU : DATE NUMERO : STRING
DALTUSU : DATE COMPLEMENTO : STRING
HALTUSU : DATE BAIRRO : STRING
USUARIO : STRING CNPJ : INTEGER
CPF : INTEGER
INSERIR_USUARIO()
ALTERAR_USUARIO() INSERIR_DADOS()
EXCLUIR_USUARIO() ALTERAR_DADOS()
CONSULTAR_USUARIO() CONSULTAR_DADOS()
46

Anexo 3 – Diagrama de Seqüência

CADASTRAR MARCA

SCRIPT
Interface : Marca
“O usuário cadas-
tra marcas”

Usuário
1. Cadastrar
Marca( )
T
E
M
P 2. Encontrar (Marca) ()
O |Encontrar = “Falso”|

3. Inserir (Marca) ()
47

ALTERAR MARCA

SCRIPT

“O usuário altera
as marcas já ca- Interface : Marca
dastradas, confor-
me seja necessá-
rio”
Usuário
1. Alterar
Marca( )
T
E
M
P 2. Encontrar (Marca) ()
O |Encontrar = “Verdadeiro”|

3. Alterar (Marca) ()
48

EXCLUIR MARCA

SCRIPT

“O usuário exclui
Marcas já cadastra- Interface : Marca
das, conforme seja
necessário”

Usuário
1. Excluir
T Marca( )
E
M
P 2. Encontrar (Marca) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Marca) ()
49

CONSULTAR MARCA

SCRIPT

“O usuário consul-
ta marcas já ca- Interface : Marca
dastradas, confor-
me seja necessá-
rio”
Usuário
1. Consulta
Marca( )
T
E
M
P 2. Encontrar (Marca) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Marca)()
50

CADASTRAR PRODUTO/ SERVIÇO

SCRIPT

“O usuário cadas-
tra produtos/ ser- Interface : Produto
viços”

Usuário

T 1. Cadastrar
Produto( )
E
M
P
O 2. Encontrar (Produto) ()
|Encontrar = “Falso”|

3. Inserir (Produto)()
51

ALTERAR PRODUTO/ SERVIÇO

SCRIPT

“O usuário altera Interface : Produto


os produtos/ servi-
ços já cadastrados,
conforme seja ne-
cessário”
Usuário

T 1. Alterar
Produto( )
E
M
P
O
2. Encontrar (Produto) ()

|Encontrar = “Verdadeiro”|

3. Alterar (Produto) ()
52

EXCLUIR PRODUTO/ SERVIÇO

SCRIPT

“O usuário exclui
: Produtos
os produtos/ servi- Interface
ços já cadastrados,
conforme seja ne-
cessário”

Usuário

1. Excluir
T Produtos( )
E
M
P
O 2. Encontrar (Produtos) ()
|Encontrar = “Verdadeiro”|

3. Excluir (Produtos) ()
53

CONSULTAR PRODUTO/ SERVIÇOS

SCRIPT

“O usuário consul-
ta os produtos/ Interface
: Produtos
serviços já cadas-
trados, conforme
seja necessário”

Usuário

T 1. Consultar
Produtos( )
E
M
P 2. Encontrar (Produtos)
O |Encontrar = “Verdadeiro”|

3. Consultar (Produtos)
54

CADASTRAR CLIENTE

SCRIPT

“O usuário cadas-
tra clientes” Interface : Cliente

Usuário

T 1. Cadastrar
Cliente( )
E
M
P
O 2. Encontrar (Cliente) ()
|Encontrar = “Falso”|

3. Inserir (Cliente)()
55

ALTERAR CLIENTE

SCRIPT

“O usuário altera
os cliente já cadas- Interface : Cliente
trados, conforme
seja necessário”

Usuário

T 1. Alterar
Cliente( )
E
M
P
O
2. Encontrar (Cliente) ()

|Encontrar = “Verdadeiro”|

3. Alterar (Cliente) ()
56

EXCLUIR CLIENTE

SCRIPT

“O usuário exclui
: Clientes
os clientes já ca- Interface
dastrados, confor-
me seja necessá-
rio”

Usuário

1. Excluir
T Clientes( )
E
M
P
O 2. Encontrar (Clientes) ()
|Encontrar = “Verdadeiro”|

3. Excluir (Clientes) ()
57

CONSULTAR CLIENTES

SCRIPT

“O usuário consul-
ta os clientes já Interface
: Clientes
cadastrados, con-
forme seja neces-
sário”

Usuário

T 1. Consultar
Clientes( )
E
M
P 2. Encontrar (Clientes)
O |Encontrar = “Verdadeiro”|

3. Consultar (Produtos)
58

CADASTRAR CATEGORIA

SCRIPT
“O usuário
cadastra as
categorias con- Interface : Categoria
forme sejam
necessárias”

Usuário
1. Cadastrar
T Categoria( )
E
M
P 2. Encontrar (Categoria) ()
O |Encontrar = “Falso”|

3. Inserir (Categoria)()
59

ALTERAR CATEGORIA

SCRIPT

“O usuário
altera catego-
rias já cadas-
tradas confor-
me seja neces- Interface : Categoria
sário”

Usuário
1. Alterar
T Categoria( )
E
M
P 2. Encontrar (Categoria)()
O |Encontrar = “Verdadeiro”|

3. Alterar (Categoria) ()
60

EXCLUIR CATEGORIA

SCRIPT

“O usuário
exclui a cate- Interface : Categoria
goria já cadas-
trada, confor-
me seja neces-
sário” Usuário
1. Excluir Cate-
T goria( )
E
M
P 2. Encontrar (Categoria) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Categoria)()
61

CONSULTAR CATEGORIA

SCRIPT

“O usuário
consulta as Interface : Categoria
categorias já
cadastradas,
conforme seja
necessário” Usuário
1. Consultar
T Categoria( )
E
M
P 2. Encontrar (Categoria) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Categoria) ()
62

CADASTRAR FORNECEDOR

SCRIPT
“O usuário
cadastra os
fornecedores Interface : Fornecedores
conforme seja
necessário”

Usuário
1. Cadastrar
T Fornecedores( )
E
M
P 2. Encontrar (Fornecedores) ()
O |Encontrar = “Falso”|

3. Inserir (Fornecedor)()
63

ALTERAR FORNECEDOR

SCRIPT

“O usuário
altera os for-
necedores já
cadastrados
conforme seja Interface : Fornecedor
necessário”

Usuário
1. Alterar
T Fornecedor( )
E
M
P 2. Encontrar (Fornecedor)()
O |Encontrar = “Verdadeiro”|

3. Alterar (Fornecedor) ()
64

EXCLUIR FORNECEDOR

SCRIPT

“O usuário
exclui os for- Interface : Fornecedor
necedores já
cadastrados,
conforme seja
necessário” Usuário
1. Excluir For-
T necedor( )
E
M
P 2. Encontrar (Fornecedor) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Fornecedor)()
65

CONSULTAR FORNECEDOR

SCRIPT

“O usuário
consulta os Interface : Fornecedor
fornecedores já
cadastrados,
conforme seja
necessário” Usuário
1. Consultar
T Fornecedor( )
E
M
P 2. Encontrar (Fornecedor) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Fornecedor) ()
66

CADASTRAR UNIDADE

SCRIPT
“O usuário
cadastra as
unidades con- Interface : Unidade
forme seja ne-
cessário”

Usuário
1. Cadastrar
T Unidade( )
E
M
P 2. Encontrar (Unidade) ()
O |Encontrar = “Falso”|

3. Inserir (Unidade)()
67

ALTERAR UNIDADE

SCRIPT

“O usuário
altera as uni-
dades já cadas-
tradas confor-
me seja neces- Interface : Unidade
sário”

Usuário
1. Alterar
T Unidade( )
E
M
P 2. Encontrar (Unidade)()
O |Encontrar = “Verdadeiro”|

3. Alterar (Unidade) ()
68

EXCLUIR UNIDADE

SCRIPT

“O usuário
exclui as uni- Interface : Unidade
dades já cadas-
trada, confor-
me seja neces-
sário” Usuário
1. Excluir Uni-
T dade( )
E
M
P 2. Encontrar (Unidade) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Unidade)()
69

CONSULTAR UNIDADE

SCRIPT

“O usuário
consulta as Interface : Unidade
unidades já
cadastrados,
conforme seja
necessário” Usuário
1. Consultar
T Unidade( )
E
M
P 2. Encontrar (Unidade) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Unidade) ()
70

CADASTRAR ITEM

SCRIPT
“O usuário
cadastra os
finais conforme Interface : Item
seja necessá-
rio”

Usuário
1. Cadastrar
T Item( )
E
M
P 2. Encontrar (Item) ()
O |Encontrar = “Falso”|

3. Inserir (Item)()
71

ALTERAR ITEM

SCRIPT

“O usuário
altera os itens
já cadastrados
conforme seja
necessário” Interface : ITEM

Usuário
1. Alterar
T Item( )
E
M
P 2. Encontrar (Item)()
O |Encontrar = “Verdadeiro”|

3. Alterar (Item) ()
72

EXCLUIR ITEM

SCRIPT

“O usuário
exclui os itens Interface : Item
já cadastrada,
conforme seja
necessário”
Usuário
1. Excluir
Itens( )
T
E
M
P 2. Encontrar (Iem) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Item)()
73

CONSULTAR ITEM

SCRIPT

“O usuário
consulta os Interface : Itens
itens já cadas-
trados, con-
forme seja ne-
cessário” Usuário
1. Consultar
T Item( )
E
M
P 2. Encontrar (Item) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Item) ()
74

CADASTRAR NOTA FISCAL

SCRIPT
“O usuário
cadastra as
Notas Fiscais Interface : Nota Fiscal
conforme seja
necessário”

Usuário
1. Cadastrar
T Nota Fiscal( )
E
M
P 2. Encontrar (Nota Fiscal) ()
O |Encontrar = “Falso”|

3. Inserir (Nota Fiscal)()


75

ALTERAR NOTA FISCAL

SCRIPT

“O usuário
altera as Notas
Fiscais já ca-
dastradas con-
forme seja ne- Interface : Nota Fiscal
cessário”

Usuário
1. Alterar
T Nota Fiscal( )
E
M
P 2. Encontrar (Nota Fiscal)()
O |Encontrar = “Verdadeiro”|

3. Alterar (Nota Fiscal) ()


76

EXCLUIR NOTA FISCAL

SCRIPT

“O usuário
exclui as Notas Interface : Nota Fiscal
Fiscais já ca-
dastradas, con-
forme seja ne-
cessário” Usuário
1. Excluir Nota
T Fiscal( )
E
M
P 2. Encontrar (Nota Fiscal) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Nota Fiscal)()


77

CONSULTAR NOTA FISCAL

SCRIPT

“O usuário
consulta as Interface : Nota Fiscal
notas fiscais já
cadastrados,
conforme seja
necessário” Usuário
1. Consultar
T Nota Fiscal( )
E
M
P 2. Encontrar (Nota Fiscal) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Nota Fiscal) ()


78

CADASTRAR ENTRADA

SCRIPT
“O usuário
cadastra as
entradas con- Interface : Entrada
forme seja ne-
cessário”

Usuário
1. Cadastrar
T Entrada( )
E
M
P 2. Encontrar (Entrada) ()
O |Encontrar = “Falso”|

3. Inserir (Entrada)()
79

EXCLUIR ENTRADA

SCRIPT

“O usuário
exclui as en- Interface : Entrada
tradas já ca-
dastrada, con-
forme seja ne-
cessário” Usuário
1. Excluir
T Entrada( )
E
M
P 2. Encontrar (Entrada) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Entrada)()
80

CONSULTAR ENTRADA

SCRIPT

“O usuário
consulta as Interface : Entrada
entradas já
cadastrados,
conforme seja
necessário” Usuário
1. Consultar
T Entrada( )
E
M
P 2. Encontrar (Entrada) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Entrada) ()
81

CADASTRAR SAÍDA

SCRIPT
“O usuário
cadastra as
saídas confor- Interface : Saídas
me seja neces-
sário”

Usuário
1. Cadastrar
T Saída( )
E
M
P 2. Encontrar (Saída) ()
O |Encontrar = “Falso”|

3. Inserir (Saída)()
82

EXCLUIR SAÍDA

SCRIPT

“O usuário
exclui as saí- Interface : Saída
das já cadas-
trada, confor-
me seja neces-
sário” Usuário
1. Excluir
T Saída( )
E
M
P 2. Encontrar (Saída) ()
O |Encontrar = “Verdadeiro”|

3. Excluir (Saída)()
83

CONSULTAR SAÍDA

SCRIPT

“O usuário
consulta as Interface : Saída
saídas já ca-
dastrados, con-
forme seja ne-
cessário” Usuário
1. Consultar
T Saída( )
E
M
P 2. Encontrar (Saída) ()
O |Encontrar = “Verdadeiro”|

3. Consultar (Saída) ()
84

Anexo 4 – Dicionário de Dados

Nome da Tabela: Categoria


Chaves Nome Tipo Tamanho Observações
PK IDCategoria Integer Auto incremento
Categoria Varchar 30 Nome da Categoria
Descrição Varchar 256 Descrição da Categoria
DCadCat Datetime 8 Data de cadastro de Categoria
DAltCat Datetime 8 Data de alteração do cadastro
HAltCad Datetime 8 Hora de alteração do cadastro
Usuario Varchar 40 Usuário que efetuou o cadastro

Nome da Tabela: Unidade


Chaves Nome Tipo Tamanho Observações
PK IDUnidade Integer Auto incremento
Unidade Varchar 40 Nome da Unidade
Descrição Varchar 256 Descrição da Unidade
DCadUni Datetime 8 Data de cadastro de Unidade
DAltUni Datetime 8 Data de alteração do cadastro
HAltUni Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Marca


Chaves Nome Tipo Tamanho Observações
PK IDMarca Integer Auto incremento
Marca Varchar 30 Nome da Marca
Fabricante Varchar 50 Nome do Fabricante
DCadMar Datetime 8 Data de cadastro da Marca
DAltMar Datetime 8 Data de alteração do cadastro
HAltMar Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Produto


Chaves Nome Tipo Tamanho Observações
PK IDProduto Integer Auto incremento
FK IDUnidade Varchar 30 Chave estrangeira da Unidade
FK IDFornecedor Varchar 50 Chave estrangeira do Fornecedor
FK IDMarca Datetime 8 Chave estrangeira da Marca
Nome_Produto Datetime 8 Nome do Produto
Desc_Produto Datetime 8 Descrição do Produto
Cod_Produto Varchar 30 Código interno do Produto
EstMax Integer Estoque Máximo
EstMin Integer Estoque Mínimo
StsProduto Bit 1 Status do Produto (Ativo/Inativo)
Diretório Varchar 50 Diretório da Imagem do Produto
DCadPro Datetime 8 Data de cadastro do Produto
DAltPro Datetime 8 Data de alteração do cadastro
HAltPro Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro
85

Nome da Tabela: Fornecedor


Chaves Nome Tipo Tamanho Observações
PK IDFornecedor Integer Auto incremento
FK IDCategoria Integer Chave estrangeira da Categoria
Cidade Varchar 30 Cidade do Fornecedor
UF Varchar 2 Unidade Federativa
Telefone Varchar 15 Telefone do Fornecedor
Fax Varchar 15 Fax do Fornecedor
Email Varchar 50 Email
Web Varchar 50 Home site
Contato Varchar 50 Nome do contato na empresa
Status Bit 1 Status do Produto (Ativo/Inativo)
DCadFor Datetime 8 Data de cadastro do Fornecedor
DAltFor Datetime 8 Data de alteração do cadastro
HAltFor Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Saldo


Chaves Nome Tipo Tamanho Observações
FK IDProduto Integer Chave estrangeira do Produto
Saldo Integer Saldo atual
SaldoAnterior Integer Saldo anterior
DCad Datetime 8 Data de cadastro do Saldo
DAlt Datetime 8 Data de alteração do cadastro
HAlt Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Usuários


Chaves Nome Tipo Tamanho Observações
PK IDUsuario Integer Auto incremento
FK Nome_Usuario Integer Nome do Usuário
Login Varchar 20 Login do Usuário
Senha Varchar 6 Senha do Usuário
Todos Bit 1 Acesso a todos os cadastros
Clientes Bit 1 Acesso ao cadastro de Clientes
Entrada Bit 1 Acesso ao cadastro de Entrada
Nota Bit 1 Acesso ao cadastro de Notas
Saída Bit 1 Acesso ao cadastro de Saída
Fornecedor Bit 1 Acesso ao cadastro de Fornecedor
Marca Bit 1 Acesso ao cadastro de Marcas
Categoria Bit 1 Acesso ao cadastro de Categorias
Unidade Bit 1 Acesso ao cadastro de Unidades
Usuários Bit 1 Acesso ao cadastro de Usuários
Produtos Bit 1 Acesso ao cadastro de Produtos
Dados Bit 1 Acesso ao cadastro de Dados
Relatório Bit 1 Acesso a todos os Relatórios
RelEntrada Bit 1 Acesso ao relatório de Entrada
86

RelSaida Bit 1 Acesso ao relatório de Saída


RelFornecedor Bit 1 Acesso ao relatório de Fornecedor
RelEstMin Bit 1 Acesso ao relatório de Est. Mín.
RelProduto Bit 1 Acesso ao relatório de Produtos
RelSaldo Bit 1 Acesso ao relatório de Saldo Atual
RelProdDestino Bit 1 Acesso ao relatório de Prod./Dest.
DCadUsu Datetime 8 Data de cadastro do Usuários
DAltUsu Datetime 8 Data de alteração do cadastro
HAltUsu Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Login


Chaves Nome Tipo Tamanho Observações
PK IDLogin Integer Auto incremento
FK IDUsuario Integer Chave estrangeira de Usuário
DLogin Integer Data de Login
HLogin Money Hora de Login

Nome da Tabela: Saída


Chaves Nome Tipo Tamanho Observações
PK IDSaida Integer Auto incremento
FK IDProduto Integer Chave estrangeira de Produto
DSaida Datetime 8 Data de saída
Quant_Saida Integer Quantidade de Saída
Situacao Varchar 50 Motivo da Saída
Destino Varchar 50 Destino do Produto
Requisição Integer Número da requisição
DCadSai Datetime 8 Data de cadastro da Saída
DAltSai Datetime 8 Data de alteração do cadastro
HAltSai Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Cliente


Chaves Nome Tipo Tamanho Observações
PK IDCliente Integer Auto incremento
Nome Varchar 50 Nome do Cliente
Endereco Varchar 30 Endereço do Cliente
Bairro Varchar 30 Bairro do endereço
CEP Varchar 9 CEP
Complemento Varchar 50 Complemento do endereço
Comercial Varchar 15 Telefone comercial
Fax Varchar 15 Número do fax
Celular Varchar 15 Número do celular
Observação Varchar 256 Obs. Geral
Email Varchar 30 E-mail do Cliente
DCad Datetime 8 Data de cadastro do Cliente
DAlt Datetime 8 Data de alteração do cadastro
HAlt Datetime 8 Hora de alteração do cadastro
87

Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Nota Fiscal


Chaves Nome Tipo Tamanho Observações
PK IDNF Integer Auto incremento
FK IDFornecedor Integer Chave estrangeira do Fornecedor
Valor_Total Money Valor total da Nota Fiscal
Valor_Imposto Money Valor do Imposto
Valor_Frete Money Valor do Frete
NrNotaFiscal Integer Número da Nota Fiscal
DCadNF Datetime 8 Data de cadastro da Nota Fiscal
DAltNF Datetime 8 Data de alteração do cadastro
HAltNF Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Item


Chaves Nome Tipo Tamanho Observações
PK IDItem Integer Auto incremento
FK IDProduto Integer Chave estrangeira do Produto
IDNF Integer Chave estrangeira da Nota Fiscal
Discriminacao Varchar 40 Discriminação da Nota Fiscal
Quantidade Integer Quantidade do produto
Unitario Money Valor Unitário
Total Money Valor Total
DCad_Item Datetime 8 Data de cadastro do Item
DAlt_Item Datetime 8 Data de alteração do cadastro
HAlt_Item Datetime 8 Hora de alteração do cadastro
Usuario Varchar 50 Usuário que efetuou o cadastro

Nome da Tabela: Dados


Chaves Nome Tipo Tamanho Observações
PK IDDados Integer Auto incremento
Dados_Fantasia Varchar 50 Nome Fantasia da empresa
Dados_Razao Varchar 50 Razão Social da empresa
Dados_Telefone Varchar 12 Telefone da empresa
Dados_Fax Varchar 12 Fax da empresa
Dados_Cidade Varchar 20 Cidade da empresa
Dados_UF Varchar 2 Unidade Federativa da empresa
Dados_Endereco Varchar 50 Endereço da empresa
Dados_Numero Varchar 6 Número do endereço
Dados_Complemento Varchar 30 Complemento
Dados_Bairro Varchar 30 Bairro da empresa
Dados_CPF Varchar 18 CPF
Dados_CNPJ Varchar 14 CNPJ
88

REFERÊNCIA BIBLIOGRÁFICA

TAVARES, Carlos. UML - Interações. Disponível em


http://www.inf.ucp.br/profs/tavares/2001_02/aula06/18. Acessado em
28/08/2005.

JORGE, Rodrigo Funabashi. Introdução a Análise Orientada a Objetos Uti-


lizando UML – Unified Modeling Language. Disponível em
http://www.usc.edu.br/rodrigoj/aulas/Seminarios/Apostila%20sobre%20A
n%E1lise%20Orientada%20a%20Objetos.pdf. Acessado em 28/08/2004.

MELO, Ana Cristina. Buscando novos caminhos por meio da UML. Dispo-
nível em http://www.linhadecodigo.com.br/artigos.asp?id_ac=76&sub=0,
Acessado em 10/09/2005.

CAMARGO, Vicente Paulo de – Microsoft Visual Basic 6.0. Goiânia: Editora


Terra.

SILER, Brian; SPOTTS Jeff. Usando Especial Visual Basic 6.0 – A fonte de
referencia para soluções abrangentes. Rio de Janeiro: Campos, 1999.

GRIVER, Alan Yair et al. Visual Basic para UML - Guia do programador e
padrões de design. São Paulo: Market Books, 2000.

PRETOUTSOS, Evangelus. Dominando o Visual Basic 6 - “A Bíblia”. São


Paulo: Makron Books, 1999.