81
Faculdade CBTA RIO CLARO Tecnólogo em Análise e Desenvolvimento de Sistemas Levantamento de Requisitos, Documentação, Construção do Banco de Dados e Desenvolvimento de um Projeto de Software para uma Loja de Informática Francisco Gomes da Silva Michel Adriano Medeiros

Projeto De Software Para Uma Loja De Informática

Embed Size (px)

DESCRIPTION

Documentação de um projeto de software para uma loja de informática feito por Michel Adriano Medeiros na faculdade CBTA - Rio Claro - SP. Código fonte do projeto está em http://www.4shared.com/file/4Tvi32uN/projeto_cbta_2010.html

Citation preview

Page 1: Projeto De Software Para Uma Loja De Informática

Faculdade CBTA RIO CLARO

Tecnólogo em Análise e Desenvolvimento de Sistemas

Levantamento de Requisitos, Documentação, Construção

do Banco de Dados e Desenvolvimento de um Projeto de

Software para uma Loja de Informática

Francisco Gomes da Silva

Michel Adriano Medeiros

Rio Claro-SP

2010

Page 2: Projeto De Software Para Uma Loja De Informática

1

Lista de Figuras

Figura 1. Fase de um desenvolvimento de sistemas.................................................11

Figura 2. Fases genéricas de um software ...............................................................12

Figura 3. Diagrama de caso de uso...........................................................................45

Figura 4. Diagrama de classe.....................................................................................46

Figura 5. Tela de login................................................................................................55

Figura 6. Cadastro de cliente.....................................................................................55

Figura 7. Cadastro de funcionário..............................................................................56

Figura 8. Cadastro de fornecedor...............................................................................56

Figura 9. Cadastro de produto....................................................................................57

Figura 10. Cadastro de serviço..................................................................................57

Figura 11. Venda de produto e serviço......................................................................58

Figura 12. Editar vendas............................................................................................58

Figura 13. Registrar novo cargo.................................................................................59

Figura 14. Registrar novo departamento....................................................................59

Figura 15. Registrar novo tipo de usuário..................................................................60

Page 3: Projeto De Software Para Uma Loja De Informática

2

Sumário

1. Introdução........................................................................................................3

1.1.

Metodologia...........................................................................................3

1.2. Objetivos...............................................................................................4

2. Revisão Bibliográfica......................................................................................4

2.1. Sistema da Informação.........................................................................5

2.2. Engenharia de Software........................................................................7

3. Escopo do Projeto.........................................................................................13

3.1. Funções do Sistema da Loja...............................................................13

3.2. Definições de Requisitos Funcionais..................................................14

4. Diagrama de Caso de Uso............................................................................45

5. Diagrama de Classe.......................................................................................46

6. Script do Banco de Dados............................................................................47

7. Telas de Interface do Sistema......................................................................55

8. Conclusão.......................................................................................................6

0

9. Bibliografia.....................................................................................................60

Page 4: Projeto De Software Para Uma Loja De Informática

3

1. Introdução

Este projeto consiste em criar um software para que a loja de informática

Compuponto venha a ter um melhor controle de estoque e finaceiro.

A loja já usa um software para este objetivo, mais este será personalizado para a

loja com funções que o proprietário pediu e não tem no software que ele usa no

momento.

Para a criação do software foram levantados requisitos do sistema por meio de

entrevista com o proprietário.

Com os requisistos levantados foram usadas técnicas de engenharia de software

para a escolha da metodologia usada para a criação da documentação do software.

1.1. Metodologia

Foi levantados requisitos do sistema junto ao proprietário da loja Compuponto.

O projeto seguirá o modelo de prototipação, pois neste modelo sempre será

mostrado para o proprietário da loja um modelo do programa visual, ficando mais

fácil saber se o projeto está caminhando para o caminho certo.

Sempre que houver dúvida reuniremos com o proprietário da loja para tirar as

dúvidas sobre requisitos do sistema.

Page 5: Projeto De Software Para Uma Loja De Informática

4

Deverá ter um sistema aberto de conversa entre proprietário e projetistas para

estarem sempre em contato para ajudar na melhoria do software e com isso diminuir

as chances de erro.

1.2. Objetivos

Melhorar o gerenciamento da loja, pois no momento a loja usa vários programas

para fazer tal função.

Com este sistema vamos unir quase todas as funções da loja em um só software e

assim ajudar no controle de estoque e financeiro da loja.

2. Revisão Bibliográfica

2.1. Sistemas de Informação

Para O’BRIEN (2002, p.6) "[...] sistema de informação é um conjunto organizado de

pessoas, hardware, software, redes de comunicação e recursos de dados que

coleta, transforma e dissemina informações em uma organização [...]".

Já para Laudon e Laudon (2004, p.7) “[...] sistema de informação pode ser definido

tecnicamente como um conjunto de componentes inter-relacionados que coleta (ou

recupera), processa, armazena e distribui informações destinadas a apoiar a tomada

de decisões, a coordenação e o controle de uma organização”.

“O SI (Sistema de Informação) é algo maior que um software, pois além de incluir o

hardware e o software, também inclui os processos (e seus agentes) que são

executados fora das máquinas”. (Loh, 2009)

Page 6: Projeto De Software Para Uma Loja De Informática

5

“No ambiente real, os aspectos sociais interferem e muito no funcionamento do SI. Os

processos podem ser modificados em razão de aspectos sociais não bem

controlados. Por esta razão, é que existem muitos sistemas que depois de

implantados acabam não sendo utilizados ou até mesmo trazendo prejuízos ou

dificultando o trabalho nas organizações”. (Loh, 2009)

Segundo BATISTA (2004, p. 39), “... o objetivo de usar os sistemas de

informação é a criação de um ambiente empresarial em que as

informações sejam confiáveis e possam fluir na estrutura organizacional”.

Para serem efetivos, os sistemas de informação precisam, segundo PEREIRA e

FONSECA (1997, p. 242), corresponder às seguintes expectativas:

Atender as reais necessidades dos usuários;

Estar centrados no usuário (cliente) e não no profissional que o criou;

Atender ao usuário com presteza;

Apresentar custos compatíveis;

Adaptar-se constantemente às novas tecnologias de informação;

Estar alinhados com as estratégias de negócios da empresa.

As empresas sempre estão tentando melhorar o seu desempenho e fazer as

escolhas mais certas possíveis, daí a importância de um sistema de informação

confiável que traga uma ajuda para realizar um processo decisório.

LAUDON e LAUDON (1999, p. 26), afirmam que “a razão mais forte pelas

quais as empresas constroem os sistemas, então, é para resolver

problemas organizacionais e para reagir a uma mudança no ambiente”.

Page 7: Projeto De Software Para Uma Loja De Informática

6

Para PEREIRA e FONSECA (1997, p. 241), os sistemas de informação têm

por finalidade “... a captura e/ou a recuperação de dados e sua análise em

função de um processo de decisão. Envolve, de modo geral, o decisor, o

contexto, o objetivo da decisão e a estrutura de apresentação das

informações”.

Existem vários tipos de sistemas de informações, basicamente são classificados em

dois grupos, os sistemas gerenciais e os operacionais.

Os sistemas operacionais são responsáveis por informações mais abrangentes,

interna e externa de uma empresa, mas não consegue trazer informações

específicas, para isso precisa do apoio dos sistemas gerenciais.

O’BRIEN (2002, p.29), afirma que “quando os sistemas de informação se

concentram em fornecer informação e apoio à tomada de decisão eficaz pelos

gerentes, eles são chamados sistemas de apoio gerencial”.

OLIVEIRA (2002, p.54) afirma que o sistema de informação gerencial pode,

sob determinadas condições, trazer os seguintes benefícios para as

empresas:

Redução dos custos das operações;

Melhoria no acesso às informações, proporcionando relatórios mais precisos

e rápidos, com menor esforço;

Melhoria na produtividade;

Melhoria nos serviços realizados e oferecidos;

Page 8: Projeto De Software Para Uma Loja De Informática

7

Melhoria na tomada de decisões, por meio do fornecimento de informações

mais rápidas e precisas;

Estímulo de maior interação dos tomadores de decisão;

Fornecimento de melhores projeções dos efeitos das decisões;

Melhoria na estrutura organizacional, para facilitar o fluxo de informações;

Melhoria na estrutura de poder, proporcionando maior poder para aqueles

que entendem e controlam os sistemas;

Redução do grau de centralização de decisões na empresa; e

Melhoria na adaptação da empresa para enfrentar os acontecimentos não

previstos.

Se uma empresa consegue atingir todos esses requisitos com o seu sistema de

informação, ela com certeza é uma empresa bem gerida e competitiva.

2.2. Engenharia de Software

Com a grande evolução tecnológica e o uso cada vez mais dos computadores e a

automação de funções, há uma grande procura de desenvolvedores de softwares.

Antigamente o desenvolvimento de software era feito só pensando no problema que

ele poderia resolver e isso funcionava, pois os softwares daquela época não tinham

muita complexidade.

Mas hoje há a necessidade de softwares mais complexos, que tenham qualidades e

rápido desenvolvimento com isto surgiu métodos para desenvolvê-los que se

encontra na Engenharia de Software.

Page 9: Projeto De Software Para Uma Loja De Informática

8

“A Engenharia de Software (ES) surgiu em meados dos anos 1970 numa tentativa de

contornar a crise do software e dar um tratamento de engenharia (mais sistemático e

controlado) ao desenvolvimento de sistemas de software complexos. Um sistema de

software complexo se caracteriza por um conjunto de componentes abstratos de

software (estruturas de dados e algoritmos) encapsulados na forma de

procedimentos, funções, módulos, objetos ou agentes interconectados entre si,

compondo a arquitetura do software, que deverão ser executados em sistemas

computacionais”. (Silva, 2005)

Segundo Fritz Bauer, autor da primeira definição do termo, "Engenharia de software

é a criação e a utilização de sólidos princípios de engenharia a fim de obter software

de maneira econômica, que seja confiável e que trabalhe eficientemente em

máquinas reais".

“Engenharia de software é uma área do conhecimento da computação voltada para a

especificação, desenvolvimento e manutenção de sistemas de software aplicando

tecnologias e práticas de gerência de projetos e outras disciplinas, objetivando

organização, produtividade e qualidade”. (Sommerville, 2007)

É uma disciplina que se preocupa com os problemas práticos inerentes ao

desenvolvimento de sistemas de grande porte. (Souza, 2008)

Não é simplesmente programação;

Também não é só ciência da computação;

Usam de teorias (resultados), métodos, e ferramentas na resolução de

problemas.

A Engenharia de software abrange. (Passos, 2007)

Planejamento

Especificação

Page 10: Projeto De Software Para Uma Loja De Informática

9

Desenho

Implementação

Validação

Teste

Medição

Manutenção

Aprimoramento

O principal objetivo da Engenharia de Software é produzir, a um custo baixo,

software de qualidade. (Souza, 2008)

Custo é “fácil” de ser medido. Qualidade não é.

O processo de planejamento é crucial na engenharia de software.

A implementação é só uma parte do processo.

A Engenharia de Software engloba todo o ciclo de vida do software

(concepção, implementação, uso e manutenção).

Para se desenvolver sistemas é necessária a utilização de um processo de

desenvolvimento, também chamado de paradigmas, os quais são apresentados a

seguir: (Silva, 2005)

Modelos

Seqüencial ou Cascata (do inglês waterfall) - com fases distintas de especificação,

projeto e desenvolvimento.

Evolucional - especificação, projeto e desenvolvimento são entrelaçados.

Page 11: Projeto De Software Para Uma Loja De Informática

10

Espiral - evolução através de vários ciclos completos de especificação, projeto e

desenvolvimento.

Componentizado - reuso através de montagem de componentes já existentes.

Formal - implementação a partir de modelo matemático formal.

RAD - Linear de alta-velocidade. Normalmente utilizados para sistemas de

informação e bem entendidos.

Todo software hoje em dia tem um método de desenvolvimento por que um método

é bom.

Um método uniformiza o trabalho, fazendo com que todas as pessoas executem as

tarefas da mesma forma. Independentemente do método, só o fato dele existir e ser

utilizado já proporciona vantagens, mesmo que ele não seja o melhor possível, ou

não tire proveito de todo potencial de sistematização do processo. (Fuess, 2009)

As vantagens da utilização de um método para elaboração de sistemas de

informação só podem ser avaliadas pelos resultados efetivos produzidos. Nesse

sentido o método pode trazer. (Fuess, 2009)

Aumento de produtividade em médio prazo;

Aumento da Qualidade;

Sistemas independentes de pessoas;

Maior controle dos projetos.

Page 12: Projeto De Software Para Uma Loja De Informática

11

Quando a engenharia de software não é bem empregada ha o perigo de acontecer o

que representa a figura abaixo.

Page 13: Projeto De Software Para Uma Loja De Informática

12

Figura 1. Fase de um desenvolvimento de sistemas

(http://werther.desenvolvatec.com/desenvolvimento/a-velha-piada/, 2009)

Não importa o modelo que você siga para desenvolver um software, mas sempre é

bom ter em mente as fases genéricas de um software.

Page 14: Projeto De Software Para Uma Loja De Informática

13

Figura 2. Fases genéricas de um software

(http://www.programei.org/index.php/13/09/2009/processos-de-software-e-modelos-

de-processos/, 2009)

3. Escopo do Projeto

3.1. Funções Do Sistema Da Loja

Page 15: Projeto De Software Para Uma Loja De Informática

14

Menu

Cadastrar

o Cadastrar Cliente

o Cadastrar Fornecedor

o Cadastrar Funcionário

o Cadastrar Produto

o Cadastrar Serviço

Criar

o Novo

Cargo

Departamento

Tipo De Usuário

Venda

o Produto/Serviço

Logoff

o Deslogar

3.2. Definições De Requisitos Funcionais

Page 16: Projeto De Software Para Uma Loja De Informática

15

Quando sistema for acionado pela primeira vez o login e senha de acesso serão

admin.

Quando sistema for acionado pela primeira vez o usuário deve fazer o cadastro de

seus dados em funcionário, este primeiro funcionário será o administrador do

sistema invalidando o acesso do sistema pelo login e senha admin.

Administrador do sistema poderá criar usuários do sistema com funções específicas

de acesso ao sistema.

Em todo lugar do sistema que precise preencher o código de funcionário, o sistema

o preencherá automaticamente já que o funcionário estará logado no sistema para

realizar qualquer operação.

RF 1 – Autenticação de usuário no sistema

RF 2 – Permitir cadastrar cliente no sistema

RF 3 – Permitir cadastrar fornecedor no sistema

RF 4 – Permitir cadastrar funcionário no sistema

RF 5 – Permitir cadastrar produto no sistema

RF 6 – Permitir cadastrar serviços no sistema

RF 7 – Permitir criar novo cargo no sistema

RF 8 – Permitir criar novo departamento no sistema

RF 9 – Permitir criar novo tipo de usuário no sistema

RF 10 – Registrar vendas de produtos e serviços

Page 17: Projeto De Software Para Uma Loja De Informática

16

RF 11 – Editar vendas de produtos e serviços

RF 12 – Permitir deslogar do sistema

Caso de Uso

Autenticação

Objetivo Permitir que atores entrem no sistema.

Requisitos RF 1

Atores Funcionários

Condição de início

Assim que inicia o sistema.

Fluxo Principal

1. O Sistema apresenta a tela de login do sistema contendo as informações:

Login

Senha

As opções:

*Logar

2. O ator entre com o login e a senha.

3. O sistema verifica se as informações são válidas. [A1]

4. O sistema confirma autenticação do login.

5. O caso de uso é encerrado.

Fluxo Alternativo

[A2] Autenticação inválida

1. Campos obrigatórios não preenchidos.

2. Sistema mostra que usuário ou senha estão errados.

Regras de Negócio

[RN1] Administrador e gerentes podem atribuir uma nova senha para funcionário.

[RN2] Para entrar no sistema a primeira tela que deverá aparecer será a tela de login. Quando o programa rodar pela primeira vez a senha e o nome do usuário do administrador será admin e a senha admin.

Page 18: Projeto De Software Para Uma Loja De Informática

17

Todo funcionário terá que logar para fazer qualquer operação no sistema e logo após se deslogar.

Caso de Uso

Cadastrar Cliente

Objetivo Permitir que ator cadastre cliente no sistema da loja

Requisitos RF 2

Atores Funcionários

Condição de Início

Acessar cadastro de clientes

Fluxo Principal

1. O Sistema apresenta tela de cadastro de usuários contendo as informações:

Código

Sexo

Nome

Endereço

Bairro

Cidade

Estado

CEP

Caixa Postal

CPF

RG

Data de nascimento

Telefone Residencial

Telefone Comercial

Telefone Recado

Page 19: Projeto De Software Para Uma Loja De Informática

18

Celular

E-mail

Data do Registro

Código do Funcionário

Haverá caixas de seleção com todos os itens anteriores mais uma com o nome de todos. [RN2]

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

*Limpar

*Sair

*Pesquisar

2. O ator preenche a ficha do cliente e seleciona a opção salvar. [A1]

3. Sistema verifica se usuário já está cadastrado no sistema. [A2]

4. Sistema verifica se as informações para cadastro são válidas. [A3] [RN1]

5. Sistema confirma cadastro do usuário.

6. O caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de cliente.

2. Caso de uso é encerrado.

[A2] Usuário já cadastrado

1. Sistema informa que usuário já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

Page 20: Projeto De Software Para Uma Loja De Informática

19

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum cliente selecionado, o sistema mostrará uma mensagem que ator deve selecionar um cliente para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum cliente selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

1. Limpa o formulário de preenchimento dos dados do cliente, menos o código do cliente, código do funcionário e a data de registro.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

1. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

1. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Os campos (sexo, nome, endereço, bairro, estado, CEP, CPF, RG, data de nascimento e código do funcionário) são obrigatórios.

O campo código do cliente será dado pelo sistema.

Page 21: Projeto De Software Para Uma Loja De Informática

20

Haverá duas opções de escolha no sexo masculino e feminino.

Data do registro deve ser automaticamente preenchida pelo sistema.

Código do funcionário será preenchido automaticamente pelo sistema com o código do funcionário que estiver fazendo o cadastro.

[RN2] Se funcionário não digitar nada, sistema mostrará uma mensagem que digite algo para a pesquisa.

Haverá caixas de seleção com todos os itens do formulário, estas caixas dão a possibilidade de funcionário escolher dados que ele queira que apareça na pesquisa. Se quiser que apareçam todos os dados haverá uma caixa com o nome de todos que possibilita que apareçam todos os dados do cliente.

Caso de Uso

Cadastro de fornecedor

Objetivo Permitir que ator cadastre fornecedores

Requisitos RF 3

Atores Funcionário

Condição de Início

Acessar cadastro de fornecedor

Fluxo Principal

1. O Sistema apresenta tela de cadastro de fornecedor contendo as informações:

Código do fornecedor

Empresa

CNPJ

Endereço

Bairro

Estado

CEP

Page 22: Projeto De Software Para Uma Loja De Informática

21

Caixa Postal

Telefone 1

Telefone 2

Fax

E-mail

Site

Data do registro

Código do funcionário

Haverá caixas de seleção com todos os itens anteriores mais uma com o nome de todos. [RN2]

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

*Limpar

*Sair

*Pesquisar

2. O ator preenche a ficha do fornecedor e seleciona a opção salvar. [A1]

3. Sistema verifica se fornecedor já está cadastrado no sistema. [A2]

4. Sistema verifica se as informações para cadastro são válidas. [A3] [RN1]

5. Sistema confirma cadastro de fornecedor.

6. O caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de fornecedor.

Page 23: Projeto De Software Para Uma Loja De Informática

22

2. Caso de uso é encerrado.

[A2] Fornecedor já cadastrado

1. Sistema informa que fornecedor já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum fornecedor selecionado, o sistema mostrará uma mensagem que ator deve selecionar um fornecedor para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

3. Se não estiver nenhum fornecedor selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

4. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

3. Limpa o formulário de preenchimento dos dados do fornecedor, menos o código do fornecedor, código do funcionário e a data de registro.

4. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

3. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

4. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

3. Usuário digita o que quer procurar e resultado é mostrado

Page 24: Projeto De Software Para Uma Loja De Informática

23

em uma tabela.

O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Os campos (caixa postal, fax, e-mail, site e código do funcionário) não são obrigatórios todos os outros são.

O campo código do fornecedor será dado pelo sistema.

Data do registro deve ser automaticamente preenchida pelo sistema.

Código do funcionário será preenchido automaticamente pelo sistema com o código do funcionário que estiver fazendo o cadastro.

[RN2] Se funcionário não digitar nada, sistema mostrará uma mensagem que digite algo para a pesquisa.

Haverá caixas de seleção com todos os itens do formulário, estas caixas dão a possibilidade de funcionário escolher dados que ele queira que apareça na pesquisa. Se quiser que apareçam todos os dados haverá uma caixa com o nome de todos que possibilita que apareçam todos os dados do cliente.

Caso de Uso

Cadastrar funcionário

Objetivo Permitir que ator cadastre funcionários

Requisitos RF 4

Atores Funcionários

Condição de início

Ator seleciona a opção cadastrar funcionário

Fluxo Principal

1. O Sistema apresenta a tela de cadastro de funcionário contendo as informações:

Código do funcionário

Login

Senha

Page 25: Projeto De Software Para Uma Loja De Informática

24

Sexo

Nome

Endereço

Bairro

Estado

CEP

Caixa Postal

CPF

RG

Data de nascimento

Telefone Residencial

Telefone Recado

Celular

E-mail

Cargo

Departamento

Data de admissão

Data do Registro

Tipo de funcionário

Código do funcionário

Haverá caixas de seleção com todos os itens anteriores mais uma com o nome de todos. [RN2]

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

Page 26: Projeto De Software Para Uma Loja De Informática

25

*Limpar

*Sair

*Pesquisar

2. O ator preenche a ficha do funcionário e seleciona a opção salvar.

3. Sistema verifica se funcionário já está cadastrado no sistema. [A2]

4. Sistema verifica se as informações para cadastro são válidas. [A3] [RN1]

5. Sistema confirma cadastro do funcionário.

6. O caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de funcionário.

2. Caso de uso é encerrado.

[A2] Funcionário já cadastrado

1. Sistema informa que funcionário já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

3. Se não estiver nenhum funcionário selecionado, o sistema mostrará uma mensagem que ator deve selecionar um funcionário para deletar.

4. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

5. Se não estiver nenhum funcionário selecionado, o sistema mostrará uma mensagem que não há dados para serem

Page 27: Projeto De Software Para Uma Loja De Informática

26

editados.

6. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

5. Limpa o formulário de preenchimento dos dados do funcionário, menos o código do fornecedor, código do funcionário e a data de registro.

6. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

5. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

6. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

4. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Os campos (Caixa postal, e-mail e telefones) não são obrigatórios, todos os outros são.

O campo código será dado pelo sistema.

Haverá duas opções de escolha no sexo, masculino e feminino.

Haverá opções em tipo de funcionário, cargo e departamento.

Data do registro deve ser automaticamente preenchida pelo sistema.

Código do funcionário será preenchido automaticamente pelo sistema com o código do funcionário que estiver fazendo o cadastro.

[RN2] Se funcionário não digitar nada, sistema mostrará uma mensagem que digite algo para a pesquisa.

Haverá caixas de seleção com todos os itens do formulário, estas caixas dão a possibilidade de funcionário escolher dados que ele queira que apareça na pesquisa. Se quiser que apareçam todos os dados haverá uma caixa com o nome de todos que possibilita

Page 28: Projeto De Software Para Uma Loja De Informática

27

que apareçam todos os dados do cliente.

Caso de Uso

Cadastrar Produto

Objetivo Permitir que ator registre compra feita para abastecer a loja.

Requisitos RF 5

Atores Funcionários

Condição de início

Ator seleciona a opção cadastrar produto

Fluxo Principal

1. O sistema apresenta na tela de cadastro de produtos as informações:

Código do produto

Data de Registro

Produto

Preço

Código do Fornecedor

Fornecedor

Quantidade Estoque

Quantidade Mínima Estoque

Código Funcionário

Descrição

Haverá caixas de seleção com todos os itens anteriores mais uma com o nome de todos. [RN2]

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

Page 29: Projeto De Software Para Uma Loja De Informática

28

*Limpar

*Sair

*Pesquisar

2. O ator preenche os dados do produto.

3. Sistema verifica se campos estão corretos. [A2] [A3]

4. Produto é cadastrado na tabela de produto.

5. Sistema retorna ao passo 1 do fluxo principal.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de produto.

2. Caso de uso é encerrado.

[A2] Produto já cadastrado

1. Sistema informa que produto já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum produto selecionado, o sistema mostrará uma mensagem que ator deve selecionar um produto para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum produto selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Page 30: Projeto De Software Para Uma Loja De Informática

29

[A6] Ator seleciona limpar.

1. Limpa o formulário de preenchimento dos dados do produto, menos o código do produto, código do funcionário e a data de registro.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

1. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

1. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Todos os campos são obrigatórios menos o campo descrição. Quando autor preencher o valor do produto e este produto tiver um valor fracionado, o valor deve ser preenchido com pontos e não vírgula.

O código do produto é atribuído automaticamente pelo sistema.

A data é preenchida automaticamente pelo sistema.

Com esta função também poderá ser feito a atualização do estoque.

Quando ator escolhe o código do fornecedor o nome do fornecedor é mostrado na combobox do fornecedor.

[RN2] Se funcionário não digitar nada, sistema mostrará uma mensagem que digite algo para a pesquisa.

Haverá caixas de seleção com todos os itens do formulário, estas caixas dão a possibilidade de funcionário escolher dados que ele queira que apareça na pesquisa. Se quiser que apareçam todos os dados haverá uma caixa com o nome de todos que possibilita que apareçam todos os dados do cliente.

Page 31: Projeto De Software Para Uma Loja De Informática

30

Caso de Uso

Cadastrar Serviço

Objetivo Permitir cadastrar novos serviços

Requisitos RF 6

Atores Funcionários

Condição de início

Ator seleciona a opção cadastrar serviço

Fluxo Principal

1. O Sistema apresenta na tela os dados para se criar um novo serviço.

Código do Serviço

Serviço

Preço

Código Funcionário

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

*Limpar

*Sair

*Pesquisar

2. O ator preenche os dados do serviço.

3. Sistema verifica se campos estão corretos. [A2] [A3]

4. Serviço é cadastrado na tabela de serviço.

5. Sistema retorna ao passo 1 do fluxo principal.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de serviço.

Page 32: Projeto De Software Para Uma Loja De Informática

31

2. Caso de uso é encerrado.

[A2] Serviço já cadastrado

1. Sistema informa que serviço já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum serviço selecionado, o sistema mostrará uma mensagem que ator deve selecionar um serviço para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum serviço selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

1. Limpa o formulário de preenchimento dos dados do serviço, menos o código do serviço, código do funcionário e a data de registro.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

3. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

4. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

2. Usuário digita o que quer procurar e resultado é mostrado

Page 33: Projeto De Software Para Uma Loja De Informática

32

em uma tabela.

O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Todos os campos são obrigatórios. Quando autor preencher o valor do serviço e este serviço tiver um valor fracionado, o valor deve ser preenchido com pontos e não vírgula.

O código do serviço é atribuído automaticamente pelo sistema.

[RN2] Se a opção estiver selecionada em mostrar todos os dados e ator digitar algo, sistema mostrará uma mensagem que está opção não realiza pesquisa, apenas carrega todos os dados da tabela serviço e exibe para o ator.

Se a opção pesquisar estiver selecionado, esta opção é que será usada para pesquisar a tabela serviço.

Caso de Uso

Cadastrar Novo Cargo

Objetivo Registrar um novo cargo no sistema.

Requisitos RF 7

Atores Funcionários

Condição de início

Ator seleciona novo cargo.

Fluxo Principal

1. O Sistema apresenta a tela de cadastro de novo cargo contendo as informações:

Código do Cargo

Cargo

Código do Funcionário

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

Page 34: Projeto De Software Para Uma Loja De Informática

33

*Limpar

*Sair

*Pesquisar

1. O ator entre com os dados do cargo e seleciona finalizar.

2. Sistema checa as informações e retorna cadastrado realizado. [A2] [A3]

3. Caso de uso encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de novo cargo.

2. Caso de uso é encerrado.

[A2] Serviço já cadastrado

1. Sistema informa que este cargo já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum cargo selecionado, o sistema mostrará uma mensagem que ator deve selecionar um cargo para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum cargo selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

Page 35: Projeto De Software Para Uma Loja De Informática

34

1. Limpa o formulário de preenchimento dos dados do cargo, menos o código do cargo, código do funcionário.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

1. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

1. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Todos os campos são obrigatórios.

O código do cargo é atribuído automaticamente pelo sistema.

[RN2] Se a opção estiver selecionada em mostrar todos os dados e ator digitar algo, sistema mostrará uma mensagem que está opção não realiza pesquisa, apenas carrega todos os dados da tabela cargo e exibe para o ator.

Se a opção pesquisar em todos os campos estiver selecionado, esta opção irar percorrer toda a tabela a procura da pesquisa digitada.

Se a opção código cargo estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo código cargo.

Se a opção nome cargo estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo nome cargo.

Se a opção código funcionário estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo código funcionário.

Caso de Uso

Cadastrar Novo Departamento

Objetivo Registrar um novo departamento no sistema.

Page 36: Projeto De Software Para Uma Loja De Informática

35

Requisitos RF 8

Atores Funcionários

Condição de início

Ator seleciona novo departamento.

Fluxo Principal

1. O Sistema apresenta a tela de cadastro de novo departamento contendo as informações:

Código do Departamento

Departamento

Código do Funcionário

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

*Limpar

*Sair

*Pesquisar

4. O ator entre com os dados do cargo e seleciona finalizar.

5. Sistema checa as informações e retorna cadastro realizado. [A2] [A3]

6. Caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de novo departamento.

2. Caso de uso é encerrado.

[A2] Departamento já cadastrado

1. Sistema informa que este departamento já se encontra cadastrado

Page 37: Projeto De Software Para Uma Loja De Informática

36

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum departamento selecionado, o sistema mostrará uma mensagem que ator deve selecionar um departamento para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum departamento selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

1. Limpa o formulário de preenchimento dos dados do departamento, menos o código do departamento, código do funcionário.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

1. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

1. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Todos os campos são obrigatórios.

Page 38: Projeto De Software Para Uma Loja De Informática

37

O código do departamento é atribuído automaticamente pelo sistema.

[RN2] Se a opção estiver selecionada em mostrar todos os dados e ator digitar algo, sistema mostrará uma mensagem que está opção não realiza pesquisa, apenas carrega todos os dados da tabela departamento e exibe para o ator.

Se a opção pesquisar em todos os campos estiver selecionado, esta opção irar percorrer toda a tabela a procura da pesquisa digitada.

Se a opção código departamento estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo código departamento.

Se a opção nome departamento estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo nome departamento.

Se a opção código funcionário estiver selecionada, esta opção irar percorrer toda a tabela a procura da pesquisa digitada, mas só pesquisando o campo código funcionário.

Caso de Uso

Cadastrar Novo Tipo de Usuário

Objetivo Registrar um novo tipo de usuário no sistema.

Requisitos RF 9

Atores Funcionários

Condição de início

Ator seleciona novo tipo de usuário.

Fluxo Principal

1. O Sistema apresenta a tela de cadastro de novo tipo de usuário contendo as informações:

Código do Tipo de Usuário

Tipo de usuário

Código do Funcionário

Haverá caixas de seleção com todos os itens que um funcionário poderá acessar quando se logar no sistema.

Page 39: Projeto De Software Para Uma Loja De Informática

38

[RN2]

As opções:

*Salvar

*Deletar

*Editar

*Cancelar

*Limpar

*Sair

*Pesquisar [RN3]

2. O ator entre com os dados do tipo de usuário e seleciona finalizar.

3. Sistema checa as informações e retorna cadastro realizado. [A2] [A3]

4. Caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de novo tipo de usuário.

2. Caso de uso é encerrado.

[A2] Tipo de usuário já cadastrado

1. Sistema informa que este tipo de usuário já se encontra cadastrado

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro.

2. Campos que são para preencher com números são preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona deletar.

1. Se não estiver nenhum tipo de usuário selecionado, o sistema mostrará uma mensagem que ator deve selecionar

Page 40: Projeto De Software Para Uma Loja De Informática

39

um tipo de usuário para deletar.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona editar.

1. Se não estiver nenhum tipo de usuário selecionado, o sistema mostrará uma mensagem que não há dados para serem editados.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar.

1. Limpa o formulário de preenchimento dos dados do tipo de usuário, menos o código do tipo de usuário, código do funcionário.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona cancelar.

1. O sistema chama o item [A6] com a diferença que as variáveis usadas também serão zeradas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona pesquisar.

1. Usuário digita o que quer procurar e resultado é mostrado em uma tabela.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Todos os campos são obrigatórios.

O código do tipo de usuário é atribuído automaticamente pelo sistema.

[RN2] As caixas que estarão no formulário, funcionarão para que o funcionário que estiver registrando o novo funcionário escolha as opções que este funcionário poderá acessar no sistema.

As opções são:

Acessar Cliente

Acessar Fornecedor

Acessar Funcionário

Page 41: Projeto De Software Para Uma Loja De Informática

40

Acessar Produto

Acessar Serviço

Acessar Novo Cargo

Acessar Novo Departamento

Acessar Novo Tipo de Usuário

Acessar Vendas

[RN3] Se clicar em pesquisar e não digitar nada será mostrado todos os resultados da tabela tipo de usuário.

Caso de Uso

Registrar vendas de produtos e serviços

Objetivo Registrar vendas de produtos e serviços

Requisitos RF 10

Atores Funcionários

Condição de início

Ator seleciona Venda Produto/Serviço

Fluxo Principal

1. O Sistema apresenta a tela de cadastro de venda de produto/serviço contendo as informações:

Código da Venda

Código do Produto

Produto

Código do Serviço

Serviço

Código do Cliente

Cliente

Valor do produto/serviço

Quantidade Produto

Quantidade Serviço

Page 42: Projeto De Software Para Uma Loja De Informática

41

Forma de Pagamento

Valor Total

Nota Fiscal

Data da Venda

Código do Funcionário

As opções:

*Adicionar Venda

*Finalizar Venda

*Editar Venda

*Limpar Formulário

*Limpar Tabela

*Sair

*Pesquisar [A7]

2. O ator entra com os dados da venda e seleciona finalizar.

3. Sistema checa as informações e retorna venda realizada. [A2] [A3]

4. Caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção sair

1. Fecha o formulário de cadastro de venda.

2. Caso de uso é encerrado.

[A2] Venda já cadastrada

1. Sistema informa que este código de venda já está em uso.

2. Sistema permite ator digitar novo código.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A3] Informações de cadastro inválidas

1. Campos obrigatórios não preenchidos no cadastro de venda.

2. Campos que são para preencher com números são

Page 43: Projeto De Software Para Uma Loja De Informática

42

preenchidos com letras.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A4] Ator seleciona adicionar venda.

1. Ator clica em adicionar venda, venda é adicionada na tabela que se encontra no formulário de venda.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A5] Ator seleciona limpar formulário.

1. Limpa os campos do formulário de venda e zera as variáveis.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A6] Ator seleciona limpar tabela.

1. Limpa os campos do formulário de venda, zera as variáveis e limpa a tabela de vendas.

2. O caso de uso retorna ao passo 1 do fluxo principal.

[A7] Ator seleciona pesquisar.

1. Há três tipos de pesquisa no formulário.

Pesquisa de produto

Pesquisa de serviço

Pesquisa de cliente

2. Qualquer resultado que seja clicado na tabela que traz o resultado é enviada ao seu campo correspondente.

3. O caso de uso retorna ao passo 1 do fluxo principal.

[A8] Ator seleciona editar.

1. Abre um formulário para editar vendas já cadastradas.

2. É chamado o RF 11.

Regras de Negócio

[RN1] Todos os campos são obrigatórios.

Só é possível digitar valores em código de produto, serviço, cliente. Só é possível digitar valores em quantidade de produto e serviço. Os outros valores serão trazidos de forma automática.

Page 44: Projeto De Software Para Uma Loja De Informática

43

[RN2] Só são retirados do estoque os produtos vendidos após ator clicar em finalizar venda.

Caso de Uso

Editar vendas de produtos e serviços

Objetivo Editar vendas de produtos e serviços

Requisitos RF 11

Atores Funcionários

Condição de início

Ator seleciona Venda Produto/Serviço e dentro deste formulário ator clica em editar.

Fluxo Principal

1. O Sistema apresenta a tela de edição de venda de produto/serviço contendo as informações:

Código da Venda

Código do Produto

Produto

Código do Serviço

Serviço

Código do Cliente

Cliente

Valor do produto/serviço

Quantidade Produto

Quantidade Serviço

Forma de Pagamento

Valor Total

Nota Fiscal

Data da Venda

Código do Funcionário

As opções:

Page 45: Projeto De Software Para Uma Loja De Informática

44

*Atualizar

*Cancelar

*Pesquisar

2. O ator pesquisa venda que quer editar.

3. Seleciona a venda na tabela encontrada na pesquisa.

4. Ao clicar no item selecionado na tabela os dados são enviados para os seus respectivos campos.

5. Ator edita os dados necessários e clica em atualizar. [A1]

6. Dados são atualizados na tabela de vendas do banco de dados.

7. Caso de uso é encerrado.

Fluxo Alternativo

[A1] O ator seleciona a opção cancelar.

1. Limpa o formulário de edição de venda e zera as variáveis do software.

2. O caso de uso retorna ao passo 1 do fluxo principal.

Regras de Negócio

[RN1] Os únicos dados possíveis de ser editados são código do produto, serviço e cliente. A quantidade de produto também é editável.

Se ator adicionar ou subtrair a quantidade de produto o seu estoque também deve ser atualizado.

Caso de Uso

Permitir deslogar do sistema

Objetivo Sair do sistema

Requisitos RF 12

Atores Funcionários

Condição de início

Ator seleciona logoof e depois deslogar

Fluxo Principal

1. O Sistema chama o RF1

Page 46: Projeto De Software Para Uma Loja De Informática

45

Fluxo Alternativo

Regras de Negócio

4. Diagrama de Caso de Uso

Page 47: Projeto De Software Para Uma Loja De Informática

46

Figura 3. Diagrama de caso de uso

5. Diagrama de Classe

Page 48: Projeto De Software Para Uma Loja De Informática

47

Figura 4. Diagrama de classe

6. Script do Banco de Dados

Page 49: Projeto De Software Para Uma Loja De Informática

48

CREATE DATABASE IF NOT EXISTS COMPUPONTO;

CREATE TABLE CARGO (

CODIGO_CARGO INT NOT NULL PRIMARY KEY,

NOME_CARGO VARCHAR (30) NOT NULL

)TYPE INNODB;

CREATE TABLE DEPARTAMENTO (

CODIGO_DEPARTAMENTO INT NOT NULL PRIMARY KEY,

NOME_DEPARTAMENTO VARCHAR (30) NOT NULL

)TYPE INNODB;

CREATE TABLE TIPO_USUARIO (

CODIGO_TIPO_USUARIO INT NOT NULL PRIMARY KEY,

NOME_TIPO_USUARIO VARCHAR (30) NOT NULL,

ACESSAR_CLIENTE VARCHAR (3),

ACESSAR_FORNECEDOR VARCHAR (3),

ACESSAR_FUNCIONARIO VARCHAR (3),

ACESSAR_PRODUTO VARCHAR (3),

ACESSAR_SERVICO VARCHAR (3),

ACESSAR_NOVO_CARGO VARCHAR (3),

ACESSAR_NOVO_DEPARTAMENTO VARCHAR (3),

ACESSAR_NOVO_TIPO_USUARIO VARCHAR (3),

ACESSAR_VENDA_TOTAL VARCHAR (3)

)TYPE INNODB;

CREATE TABLE FUNCIONARIO (

Page 50: Projeto De Software Para Uma Loja De Informática

49

CODIGO_FUNCIONARIO INT NOT NULL PRIMARY KEY,

LOGIN_FUNCIONARIO VARCHAR (12) NOT NULL,

SENHA_FUNCIONARIO VARCHAR (12) NOT NULL,

SEXO VARCHAR (10) NOT NULL,

NOME VARCHAR (50) NOT NULL,

ENDERECO VARCHAR (50) NOT NULL,

BAIRRO VARCHAR (30) NOT NULL,

CIDADE VARCHAR (30) NOT NULL,

ESTADO VARCHAR (30) NOT NULL,

CEP VARCHAR (10) NOT NULL,

CAIXA_POSTAL VARCHAR (20),

CPF VARCHAR (20) NOT NULL,

RG VARCHAR (20) NOT NULL,

NASCIMENTO VARCHAR (10) NOT NULL,

TEL_RESIDENCIAL VARCHAR (20),

TEL_RECADO VARCHAR (20),

CELULAR VARCHAR (20),

EMAIL_FUNCIONARIO VARCHAR (30),

DATA_REGISTRO VARCHAR (10) NOT NULL,

CODIGO_FUNCIONARIO_REGISTRO INT NOT NULL

)TYPE INNODB;

INSERT INTO funcionario (CODIGO_FUNCIONARIO, LOGIN_FUNCIONARIO, SENHA_FUNCIONARIO) VALUES ('1', 'ADMIN', 'ADMIN');

INSERT INTO CARGO VALUES ('1', 'NENHUM');

INSERT INTO DEPARTAMENTO VALUES ('1', 'NENHUM');

Page 51: Projeto De Software Para Uma Loja De Informática

50

INSERT INTO TIPO_USUARIO VALUES ('1', 'ADMINISTRADOR', 'SIM', 'SIM', 'SIM', 'SIM', 'SIM', 'SIM', 'SIM', 'SIM', 'SIM');

ALTER TABLE CARGO ADD CODIGO_FUNCIONARIO INT NOT NULL ;

ALTER TABLE DEPARTAMENTO ADD CODIGO_FUNCIONARIO INT NOT NULL ;

ALTER TABLE TIPO_USUARIO ADD CODIGO_FUNCIONARIO INT NOT NULL AFTER NOME_TIPO_USUARIO;

ALTER TABLE FUNCIONARIO ADD CODIGO_CARGO INT NOT NULL AFTER DATA_REGISTRO;

ALTER TABLE FUNCIONARIO ADD NOME_CARGO VARCHAR (30) NOT NULL AFTER CODIGO_CARGO;

ALTER TABLE FUNCIONARIO ADD CODIGO_DEPARTAMENTO INT NOT NULL AFTER NOME_CARGO;

ALTER TABLE FUNCIONARIO ADD NOME_DEPARTAMENTO VARCHAR (30) NOT NULL AFTER CODIGO_DEPARTAMENTO;

ALTER TABLE FUNCIONARIO ADD CODIGO_TIPO_USUARIO INT NOT NULL AFTER NOME_DEPARTAMENTO;

ALTER TABLE FUNCIONARIO ADD NOME_TIPO_USUARIO VARCHAR (30) NOT NULL AFTER CODIGO_TIPO_USUARIO;

UPDATE CARGO SET CODIGO_FUNCIONARIO = 1 WHERE NOME_CARGO='NENHUM';

Page 52: Projeto De Software Para Uma Loja De Informática

51

UPDATE DEPARTAMENTO SET CODIGO_FUNCIONARIO = 1 WHERE NOME_DEPARTAMENTO='NENHUM';

UPDATE TIPO_USUARIO SET CODIGO_FUNCIONARIO = 1 WHERE NOME_TIPO_USUARIO='ADMINISTRADOR';

UPDATE FUNCIONARIO SET CODIGO_CARGO = 1 WHERE CODIGO_FUNCIONARIO = 1;

UPDATE FUNCIONARIO SET CODIGO_DEPARTAMENTO = 1 WHERE CODIGO_FUNCIONARIO = 1;

UPDATE FUNCIONARIO SET CODIGO_TIPO_USUARIO = 1 WHERE CODIGO_FUNCIONARIO = 1;

ALTER TABLE FUNCIONARIO ADD FOREIGN KEY (CODIGO_CARGO) REFERENCES CARGO (CODIGO_CARGO);

ALTER TABLE FUNCIONARIO ADD FOREIGN KEY (CODIGO_DEPARTAMENTO) REFERENCES DEPARTAMENTO (CODIGO_DEPARTAMENTO);

ALTER TABLE FUNCIONARIO ADD FOREIGN KEY (CODIGO_TIPO_USUARIO) REFERENCES TIPO_USUARIO (CODIGO_TIPO_USUARIO);

ALTER TABLE CARGO ADD FOREIGN KEY (CODIGO_FUNCIONARIO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO);

ALTER TABLE DEPARTAMENTO ADD FOREIGN KEY (CODIGO_FUNCIONARIO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO);

Page 53: Projeto De Software Para Uma Loja De Informática

52

ALTER TABLE TIPO_USUARIO ADD FOREIGN KEY (CODIGO_FUNCIONARIO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO);

CREATE TABLE CLIENTE (

CODIGO_CLIENTE INT NOT NULL PRIMARY KEY,

SEXO VARCHAR (10) NOT NULL,

NOME VARCHAR (50) NOT NULL,

ENDERECO VARCHAR (50) NOT NULL,

BAIRRO VARCHAR (30) NOT NULL,

CIDADE VARCHAR (30) NOT NULL,

ESTADO VARCHAR (30) NOT NULL,

CEP VARCHAR (10) NOT NULL,

CAIXA_POSTAL VARCHAR (20),

CPF VARCHAR (20) NOT NULL,

RG VARCHAR (20) NOT NULL,

NASCIMENTO VARCHAR (10) NOT NULL,

TEL_RESIDENCIAL VARCHAR (20),

TEL_RECADO VARCHAR (20),

CELULAR VARCHAR (20),

EMAIL_CLIENTE VARCHAR (30),

DATA_REGISTRO VARCHAR (10) NOT NULL,

FOREIGN KEY (CODIGO_FUNCIONARIO_REGISTRO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO),

CODIGO_FUNCIONARIO_REGISTRO INT NOT NULL

)TYPE INNODB;

Page 54: Projeto De Software Para Uma Loja De Informática

53

CREATE TABLE FORNECEDOR (

CODIGO_FORNECEDOR INT NOT NULL PRIMARY KEY,

EMPRESA VARCHAR (50) NOT NULL,

ENDERECO VARCHAR (50) NOT NULL,

BAIRRO VARCHAR (30) NOT NULL,

CIDADE VARCHAR (30) NOT NULL,

ESTADO VARCHAR (30) NOT NULL,

CEP VARCHAR (10) NOT NULL,

CAIXA_POSTAL VARCHAR (20),

CNPJ VARCHAR (20) NOT NULL,

TELEFONE1 VARCHAR (20),

TELEFONE2 VARCHAR (20),

FAX VARCHAR (20),

EMAIL_EMPRESA VARCHAR (30),

DATA_REGISTRO VARCHAR (10) NOT NULL,

SITE VARCHAR(50),

FOREIGN KEY (CODIGO_FUNCIONARIO_REGISTRO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO),

CODIGO_FUNCIONARIO_REGISTRO INT NOT NULL

)TYPE INNODB;

CREATE TABLE PRODUTO (

CODIGO_PRODUTO INT NOT NULL PRIMARY KEY,

PRODUTO VARCHAR (50) NOT NULL,

PRECO DECIMAL(10,2) NOT NULL,

QUANTIDADE_ESTOQUE INTEGER NOT NULL,

QUANTIDADE_ESTOQUE_MIN INTEGER NOT NULL,

Page 55: Projeto De Software Para Uma Loja De Informática

54

DESCRICAO VARCHAR(140) NULL,

FOREIGN KEY (CODIGO_FORNECEDOR) REFERENCES FORNECEDOR (CODIGO_FORNECEDOR),

CODIGO_FORNECEDOR INT NOT NULL,

NOME_FORNECEDOR VARCHAR(30) NOT NULL,

FOREIGN KEY (CODIGO_FUNCIONARIO_REGISTRO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO),

CODIGO_FUNCIONARIO_REGISTRO INT NOT NULL

)TYPE INNODB;

CREATE TABLE SERVICO (

CODIGO_SERVICO INT NOT NULL PRIMARY KEY,

NOME_SERVICO VARCHAR (30) NOT NULL,

PRECO DECIMAL(10,2) NOT NULL,

FOREIGN KEY (CODIGO_FUNCIONARIO) REFERENCES FUNCIONARIO (CODIGO_FUNCIONARIO),

CODIGO_FUNCIONARIO INT NOT NULL

)TYPE INNODB;

CREATE TABLE VENDA_PS (

CODIGO_VENDA INT NOT NULL PRIMARY KEY,

NUMERO_NOTA_FISCAL INT NOT NULL,

FOREIGN KEY (CODIGO_PRODUTO) REFERENCES PRODUTO (CODIGO_PRODUTO),

CODIGO_PRODUTO INT NOT NULL,

PRODUTO VARCHAR (50) NOT NULL,

QUANTIDADE_PRODUTO INTEGER NOT NULL,

FOREIGN KEY (CODIGO_SERVICO) REFERENCES SERVICO (CODIGO_SERVICO),

Page 56: Projeto De Software Para Uma Loja De Informática

55

CODIGO_SERVICO INT NOT NULL,

SERVICO VARCHAR (50) NOT NULL,

QUANTIDADE_SERVICO INTEGER NOT NULL,

VALOR_VENDA DECIMAL(10,2) NOT NULL,

FOREIGN KEY (CODIGO_CLIENTE) REFERENCES CLIENTE (CODIGO_CLIENTE),

CODIGO_CLIENTE INT NOT NULL,

NOME_CLIENTE VARCHAR(50) NOT NULL,

FORMA_PAGAMENTO VARCHAR(30) NOT NULL,

DATA_VENDA VARCHAR(15) NOT NULL,

FOREIGN KEY (CODIGO_FUNCIONARIO_REGISTRO) REFERENCES FUNCIONARIO

(CODIGO_FUNCIONARIO),

CODIGO_FUNCIONARIO_REGISTRO INT NOT NULL

)TYPE INNODB;

ALTER TABLE venda_ps ADD INDEX ( `NUMERO_NOTA_FISCAL` );

CREATE TABLE CAIXA (

CODIGO_CAIXA INT NOT NULL PRIMARY KEY AUTO_INCREMENT,

DATA_VENDA VARCHAR(15) NOT NULL,

FOREIGN KEY (NUMERO_NOTA_FISCAL) REFERENCES VENDA_PS (NUMERO_NOTA_FISCAL),

NUMERO_NOTA_FISCAL INT NOT NULL,

VALOR_VENDA DECIMAL(10,2) NOT NULL

)TYPE INNODB;

7. Telas de Interface do Sistema

Page 57: Projeto De Software Para Uma Loja De Informática

56

Figura 5. Tela de login

Figura 6. Cadastro de cliente

Page 58: Projeto De Software Para Uma Loja De Informática

57

Figura 7. Cadastro de funcionário

Figura 8. Cadastro de fornecedor

Page 59: Projeto De Software Para Uma Loja De Informática

58

Figura 9. Cadastro de produto

Figura 10. Cadastro de serviço

Page 60: Projeto De Software Para Uma Loja De Informática

59

Figura 11. Venda de produto e serviço

Figura 12. Editar vendas

Page 61: Projeto De Software Para Uma Loja De Informática

60

Figura 13. Registrar novo cargo

Figura 14. Registrar novo departamento

Page 62: Projeto De Software Para Uma Loja De Informática

61

Figura 15. Registrar novo tipo de usuário

8. Conclusão

Apesar de muita coisa estar faltando para ser considerado um projeto completo de engenharia de software como, custo do projeto, teste de software, métodos de teste, cronograma detalhado de funções, segurança do software, risco, garantia de qualidade e etc.

Pelo que foi ensinado conseguimos atingir os principais pontos de aprendizagem.

9. Bibliografia

Loh, Stanley. Sistema da Informação, UCEPel, 2009, Disponível em: <http://paginas.ucpel.tche.br/~loh/sist-inf.htm> Acesso em: 06 set. 2009.

Revista Digital Engenharia de Software. Engenharia de Software Vídeos, Devmedia, 2009, Disponível em: < http://www.devmedia.com.br/assgold/listmag.asp?site=48> Acesso em: 06 set. 2009.

Silva, Elcio. Engenharia de Software, iMasters, 2005, Disponível em: <http://imasters.uol.com.br/artigo/3691/des_de_software/engenharia_de_software/> Acesso em: 06 set. 2009.

Page 63: Projeto De Software Para Uma Loja De Informática

62

Souza, Cidcley Teixeira. Introdução à Engenharia de Software, Lambda, 2009, Disponível em: < http://www.nash.cefetce.br/cidcley/courses/2008.1/ES_Juazeiro/Slides/IntroducaoES.pdf> Acesso em: 06 set. 2009.

Passos, Jocélio. Engenharia de Software, FACAPE, 2009, Disponível em: < http://www.facape.br/jocelio/es/material_em_pdf_conceitual/index.php> Acesso em: 06 set. 2009.

Fuess, Maria Teresa. Engenharia de Software, JOSÉ OSCAR FONTANINI DE CARVALHO, 2009, Disponível em: < http://www.oscar.pro.br/aulas_CEC_ES.htm> Acesso em: 06 set. 2009.

O'BRIEN, James A. Sistemas de Informação: e as decisões gerenciais na era da Internet. Trad. Cid Knipel Moreira. São Paulo: Saraiva, 2002.

LAUDON, Kenneth C.; LAUDON, Jane P. Sistemas de informação gerenciais: administrando a empresa digital. 5. ed. São Paulo: Prentice Hall, 2004.

LAUDON, Kenneth C.; LAUDON, Jane Price. Sistemas de Informação 4. ed. LTC: Rio de Janeiro, 1999.

BATISTA, Emerson de Oliveira. Sistema de Informação: o uso consciente da tecnologia para o gerenciamento. São Paulo: Saraiva, 2004.

PEREIRA, Maria José Lara de Bretãs; FONSECA, João Gabriel Marques. Faces da Decisão: as mudanças de paradigmas e o poder da decisão. São Paulo: Makron Books, 1997.

OLIVEIRA, Djalma de Pinho Rebouças de. Sistemas, organizações e métodos: uma abordagem gerencial 13 ed. São Paulo, 2002.

SOMMERVILLE, I. (2007). Engenharia de Software. Pearson Prentice Hall, São Paulo. 548p.