Você está na página 1de 120

CENTRO UNIVERSITÁRIO DE BRASÍLIA

FACULDADE DE TECNOLOGIA E CIÊNCIAS SOCIAIS APLICADAS – FATECS


CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE
SISTEMAS

PEDRO PERES BERNARDES DE OLIVEIRA


RODRIGO QUEIROZ DE SOUZA
YAN MEDEIROS SOUZA

IWORK
IW

BRASÍLIA – DF
2019
CENTRO UNIVERSITÁRIO DE BRASÍLIA
FACULDADE DE TECNOLOGIA E CIÊNCIAS SOCIAIS APLICADAS – FATECS
CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE
SISTEMAS

PEDRO PERES BERNARDES DE OLIVEIRA


RODRIGO QUEIROZ DE SOUZA
YAN MEDEIROS SOUZA

IWORK
IW

Trabalho de conclusão de curso apresentado


como requisito parcial para obtenção do título
de Tecnólogo em Análise e Desenvolvimento
de Sistemas da
Faculdade de Tecnologia e Ciências Sociais -
FATECS, do Centro Universitário de Brasília.
Orientador: Rogério A. da Conceição

BRASÍLIA – DF
2019
RESUMO

Este projeto tem por objetivo apresentar o desenvolvimento do IWork, um


aplicativo mobile voltado para o gerenciamento de lojas, de pequeno e grande porte,
onde o gerente tem controle de todas as ações realizadas dentro no seu negócio.
Juntamente com o conhecimento adquirido ao longo do curso de Análise e
desenvolvimento de Sistemas, foram empregados conhecimentos e técnicas, tais
como: gerenciamento de projetos, levantamento e análise de requisitos, modelagem
de dados, usabilidade, documentação e implementação, buscando agregar valor no
desenvolvimento de um software para dispositivos móveis. Trata-se de uma solução
para os pequenos empreendedores que possuem pouco capital para investimento,
consigam gerenciar todas as áreas da sua loja como a parte de vendas e de estoque.
E para que fiquem sabendo cada ação realizadas por seus funcionários dentro do
sistema.

Palavras-chave: Aplicativo, Gerenciamento de lojas, Pequenos empreendedores


SUMMARY

This project aims to present the development of IWork, a mobile application


focused on the management of shops, small and large, where the Manager has control
of all the actions performed in your business. Along with the knowledge acquired
throughout the course of analysis and systems development, knowledge and
techniques were employed, such as: project management, survey and requirements
analysis, data modeling, usability, documentation and implementation, aiming to add
value in the development of software for mobile devices. This is a solution for the small
entrepreneurs that have little capital to investment, can manage all areas of your store
as part of sales and inventory. And you know every action carried out by their
employees within the system.

Keywords: Application, Management of shops, Small entrepreneurs


LISTA DE ILUSTRAÇÕES

Figura 1 – Mapeamento do fluxo de vendas atual .................................................... 16


Figura 2 – Mapeamento do fluxo de estoque atual ................................................... 16
Figura 3 – Mapeamento do fluxo financeiro atual ..................................................... 17
Figura 4 – Mapeamento do fluxo de gerencia atual .................................................. 17
Figura 5 – Mapeamento do fluxo de vendas proposto .............................................. 20
Figura 6 – Mapeamento do fluxo de estoque proposto ............................................. 20
Figura 7 – Mapeamento do fluxo de financeiro proposto .......................................... 21
Figura 8 – Mapeamento do fluxo de gerencia proposto ............................................ 21
Figura 9 – Estrutura Analítica do Software ............................................................... 26
Figura 10 – Gráfico de Baleia: Método Iron .............................................................. 27
Figura 11 – Tela de cadastro da empresa ................................................................ 49
Figura 12 – Tela de cadastro de gerente.................................................................. 49
Figura 13 – Tela de cadastro de funcionários .......................................................... 50
Figura 14 – Tela de cadastro de produtos ................................................................ 50
Figura 15 – Tela de login ......................................................................................... 50
Figura 16 – Tela de seleção do gerente ................................................................... 50
Figura 17 – Tela de seleção dos funcionários .......................................................... 51
Figura 18 – Tela de estoque .................................................................................... 51
Figura 19 – Tela de Vendas ..................................................................................... 51
Figura 20 – Tela de atividades dos funcionários ...................................................... 51
Figura 21 – Casos de uso ........................................................................................ 53
Figura 22 – Diagrama de classe de domínio ............................................................ 63
Figura 23 – Diagrama de classe de análise ............................................................. 64
Figura 24 – Modelo de entidades e relacionamento conceitual ................................ 65
Figura 25 – Modelo entidade e relacionamento lógico ............................................. 66
Figura 26 – Diagrama de sequência – UC01 ........................................................... 67
Figura 27 – Diagrama de sequência – UC02 ........................................................... 68
Figura 28 – Diagrama de sequência – UC03 ........................................................... 69
Figura 29 – Diagrama de sequência – UC04 ........................................................... 70
Figura 30 – Diagrama de sequência – UC05/UC08 ................................................. 71
Figura 31 – Diagrama de sequência – UC06 ........................................................... 72
Figura 32 – Diagrama de sequência – UC07 ........................................................... 73
Figura 33 – Diagrama de sequência – UC09/10....................................................... 73
Figura 34 – Modelo de entidade relacionamento físico ............................................ 74
Figura 35 - Camadas da tecnologia Flutter .............................................................. 78
Figura 36 – Diagrama de componentes ................................................................... 79
Figura 37 – Diagrama de implementação ................................................................. 79
Figura 38 – Tela de cadastro (Protótipo funcional) ................................................... 87
Figura 39 – Tela de login (Protótipo funcional) ........................................................ 87
Figura 40 – Tela de recuperação de senha (Protótipo funcional) ............................ 87
Figura 41 – Tela principal (Protótipo funcional) ........................................................ 87
Figura 42 – Tela de funcionários (Protótipo funcional) ............................................. 88
Figura 43 – Tela de produtos (Protótipo funcional) .................................................. 88
Figura 44 – Tela de cadastro de funcionários (Protótipo funcional) .......................... 88
Figura 45 – Tela de cadastro de produtos (Protótipo funcional) ............................... 88
Figura 46 – Tela de loja (Protótipo funcional) ........................................................... 89
Figura 47 – Tela de vendas (Protótipo funcional) ..................................................... 89
Figura 48 – Tela de cadastro de lojas (Protótipo funcional) ...................................... 89
Figura 49 – Tela de cadastro de vendas (Protótipo funcional) .................................. 89
LISTA DE TABELAS

Tabela 1 – Problema 1 ............................................................................................. 17


Tabela 2 – Problema 2 ............................................................................................. 18
Tabela 3 – Problema 3 ............................................................................................. 18
Tabela 4 – Problema 4 ............................................................................................. 18
Tabela 5 – Problema 5 ............................................................................................. 19
Tabela 6 – Objetivo Específico 1 .............................................................................. 22
Tabela 7 – Objetivo Específico 2 .............................................................................. 22
Tabela 8 – Objetivo Específico 3 .............................................................................. 22
Tabela 9 – Objetivo Específico 4 .............................................................................. 22
Tabela 10 – Objetivo Específico 5 ............................................................................ 23
Tabela 11 – Matriz de Rastreabilidade de Negócio .................................................. 25
Tabela 12 – Usuário do Sistema: Funcionário .......................................................... 27
Tabela 13 – Usuário do Sistema: Administrador ...................................................... 27
Tabela 14 – RF01 ao 06: Manter produto – F01....................................................... 28
Tabela 15 – RF07: Gerar relatório de itens que estão em falta – F02 ...................... 29
Tabela 16 – RF08 ao 11: Manter vendas – F03 ....................................................... 29
Tabela 17 – RF12: Gerar relatório de itens mais vendidos – F04 ............................. 30
Tabela 18 – RF13: Gerar relatório de vendas diárias – F05 ..................................... 30
Tabela 19 – RF14: Gerar relatório de vendas mensais – F06 .................................. 30
Tabela 20 – RF15: Gerar relatório de lucros totais – F07 ......................................... 31
Tabela 21 – RF16 ao 19: Manter loja – F08 ............................................................. 31
Tabela 22 – RF20 ao 22: Autenticar usuário – F09 .................................................. 31
Tabela 23 – RF23 ao 26: Manter funcionário – F10 ................................................. 32
Tabela 24 – RF27 ao 28: Vincular venda a funcionário – F11 .................................. 32
Tabela 25 – RF29: Gerar Relatório de ações realizadas por funcionários – F12 ...... 33
Tabela 26 – RD01: Manter produto – F01 ................................................................ 33
Tabela 27 – RD02: Gerar relatório dos itens que estão em falta – F02 .................... 34
Tabela 28 – RD03: Manter vendas – F03................................................................. 34
Tabela 29 – RD04: Gerar relatório de itens mais vendidos – F04 ............................ 35
Tabela 30 – RD05: Gerar relatório de vendas diárias – F05..................................... 35
Tabela 31 – RD06: Gerar relatório de vendas mensais – F06 .................................. 36
Tabela 32 – RD07: Gerar relatório de lucros totais – F07 ........................................ 36
Tabela 33 – RD08: Manter loja – F08 ...................................................................... 37
Tabela 34 – RD09: Autenticar usuário – F09 ........................................................... 37
Tabela 35 – RD10: Manter funcionário – F10 ........................................................... 38
Tabela 36 – RD11: Vincular venda a funcionário – F11 ........................................... 38
Tabela 37 – RD12: Gerar relatório de ações realizadas por funcionários – F12 ....... 39
Tabela 38 – Regras de Execução ............................................................................ 39
Tabela 39 – Mensagens ........................................................................................... 40
Tabela 40 – Perfil administrador............................................................................... 41
Tabela 41 – Perfil funcionário ................................................................................... 41
Tabela 42 – Quadro de Permissões ......................................................................... 42
Tabela 43 – Rastreabilidade: RF x F ........................................................................ 43
Tabela 44 – Rastreabilidade: RF x RD ..................................................................... 44
Tabela 45 – Rastreabilidade: RF x RE ..................................................................... 45
Tabela 46 – Rastreabilidade: RF x OE ..................................................................... 46
Tabela 47 – Projeto básico: RF x UC ....................................................................... 52
Tabela 48 – Descrição de caso de uso: UC01 – Autenticar usuário ......................... 54
Tabela 49 – Descrição de caso de uso: UC02 – Manter funcionário ........................ 55
Tabela 50 – Descrição de caso de uso: UC03 – Manter produto ............................. 56
Tabela 51 – Descrição de caso de uso: UC04 – Manter loja .................................... 57
Tabela 52 – Descrição de caso de uso: UC05 – Manter vendas .............................. 58
Tabela 53 – Descrição de caso de uso: UC06 – Controle de entrada e saída de
estoque .................................................................................................................... 59
Tabela 54 – Descrição de caso de uso: UC07 – Controle de funcionários ............... 59
Tabela 55 – Descrição de caso de uso: UC08 – Controle de caixa .......................... 60
Tabela 56 – Descrição de caso de uso: UC09 – Controle financeiro ........................ 61
Tabela 57 – Descrição de caso de uso: UC10 – Relatório de vendas ...................... 62
Tabela 58 - Dicionário de dados: tabela produto ...................................................... 75
Tabela 59 - Dicionário de dados: tabela loja ............................................................ 75
Tabela 60 - Dicionário de dados: tabela funcionários ............................................... 76
Tabela 61 - Dicionário de dados: tabela estado ....................................................... 76
Tabela 62 - Dicionário de dados: tabela cidade........................................................ 76
Tabela 63 - Dicionário de dados: tabela cargo ......................................................... 77
Tabela 64 - Dicionário de dados: tabela pagamento ................................................ 77
Tabela 65 - Dicionário de dados: tabela relatório de vendas .................................... 77
Tabela 66 – Funções de Dados ............................................................................... 81
Tabela 67 – Funções de Transação ......................................................................... 82
Tabela 68 – Fator de Ajuste ..................................................................................... 83
Tabela 69 - Identificação do projeto ......................................................................... 91
Tabela 70 - Teste de integridade.............................................................................. 93
Tabela 71 - Teste de função .................................................................................... 94
Tabela 72 - Teste da interface do usuário ................................................................ 94
Tabela 73 - Teste de segurança .............................................................................. 95
Tabela 74 - Recursos do sistema ............................................................................. 95
Tabela 75 - Caso de teste 01 ................................................................................... 96
Tabela 76 - Caso de teste 02 ................................................................................... 96
Tabela 77 - Caso de teste 03 ................................................................................... 97
Tabela 78 - Caso de teste 04 ................................................................................... 97
Tabela 79 - Caso de teste 05 ................................................................................... 98
Tabela 80 - Caso de teste 06 ................................................................................... 98
Tabela 81 - Caso de teste 07 ................................................................................... 98
Tabela 82 - Caso de teste 08 ................................................................................... 99
Tabela 83 - Caso de teste 09 ................................................................................... 99
Tabela 84 - Caso de teste 10 ................................................................................... 99
Tabela 85 - Caso de teste 11 ................................................................................. 100
Tabela 86 - Caso de teste 12 ................................................................................. 100
Tabela 87 - Caso de teste 13 ................................................................................. 101
Tabela 88 - Caso de teste 14 ................................................................................. 101
Tabela 89 - Caso de teste 15 ................................................................................. 101
Tabela 90 - Caso de teste 16 ................................................................................. 102
Tabela 91 - Caso de teste 17 ................................................................................. 102
Tabela 92 - Caso de teste 18 ................................................................................. 103
Tabela 93 - Caso de teste 19 ................................................................................. 103
Tabela 94 - Caso de teste 20 ................................................................................. 104
Tabela 95 - Caso de teste 21 ................................................................................. 104
Tabela 96 - Caso de teste 22 ................................................................................. 105
Tabela 97 - Caso de teste 23 ................................................................................. 105
Tabela 98 - Caso de teste 24 ................................................................................. 105
Tabela 99 - Caso de teste 25 ................................................................................. 106
Tabela 100 - Caso de teste 26 ............................................................................... 106
Tabela 101 - Caso de teste 27 ............................................................................... 107
Tabela 102 - Caso de teste 28 ............................................................................... 107
Tabela 103 - Caso de teste 29 ............................................................................... 107
Tabela 104 - Caso de teste 30 ............................................................................... 108
Tabela 105 - Caso de teste 31 ............................................................................... 108
Tabela 106 - Caso de teste 32 ............................................................................... 108
Tabela 107 - Caso de teste 33 ............................................................................... 109
Tabela 108 - Caso de teste 34 ............................................................................... 109
Tabela 109 - Caso de teste 35 ............................................................................... 110
Tabela 110 - Caso de teste 36 ............................................................................... 110
Tabela 111 - Caso de teste 37 ............................................................................... 110
Tabela 112 - Registro de teste 01 .......................................................................... 111
Tabela 113 - Registro de teste 02 ......................................................................... 111
Tabela 114 - Registro de teste 03 .......................................................................... 111
Tabela 115 - Registro de teste 04 .......................................................................... 111
Tabela 116 - Registro de teste 05 .......................................................................... 112
Tabela 117 - Registro de teste 06 .......................................................................... 112
Tabela 118 - Registro de teste 07 .......................................................................... 112
Tabela 119 - Registro de teste 08 ......................................................................... 112
Tabela 120 - Registro de teste 09 .......................................................................... 112
Tabela 121 - Registro de teste 10 .......................................................................... 112
Tabela 122 - Registro de teste 11 .......................................................................... 113
Tabela 123 - Registro de teste 12 .......................................................................... 113
Tabela 124 - Registro de teste 13 .......................................................................... 113
Tabela 125 - Registro de teste 14 .......................................................................... 113
Tabela 126 - Registro de teste 15 .......................................................................... 113
Tabela 127 - Registro de teste 16 .......................................................................... 113
Tabela 128 - Registro de teste 17 .......................................................................... 114
Tabela 129 - Registro de teste 18 .......................................................................... 114
Tabela 130 - Registro de teste 19 .......................................................................... 114
Tabela 131 - Registro de teste 20 .......................................................................... 114
Tabela 132 - Registro de teste 21 .......................................................................... 114
Tabela 133 - Registro de teste 22 .......................................................................... 114
Tabela 134 - Registro de teste 23 .......................................................................... 114
Tabela 135 - Registro de teste 24 .......................................................................... 115
Tabela 136 - Registro de teste 25 .......................................................................... 115
Tabela 137 - Registro de teste 26 .......................................................................... 115
Tabela 138 - Registro de teste 27 .......................................................................... 115
Tabela 139 - Registro de teste 28 .......................................................................... 115
Tabela 140 - Registro de teste 29 .......................................................................... 115
Tabela 141 - Registro de teste 30 .......................................................................... 115
Tabela 142 - Registro de teste 31 .......................................................................... 116
Tabela 143 - Registro de teste 32 .......................................................................... 116
Tabela 144 - Registro de teste 33 .......................................................................... 116
Tabela 145 - Registro de teste 34 .......................................................................... 116
Tabela 146 - Registro de teste 35 .......................................................................... 116
Tabela 147 - Registro de teste 36 .......................................................................... 116
Tabela 148 - Registro de teste 37 .......................................................................... 117
SUMÁRIO

1. INTRODUÇÃO 14

2. ANÁLISE DE NEGÓCIO 14

2.1. ANÁLISE INSTITUCIONAL – VISÃO GERAL 15

2.2. ANÁLISE FUNCIONAL - VISÃO ESPECÍFICA 15

2.2.1. Áreas Envolvidas 15

2.2.2. Descrição dos Processos Atuais 15

2.2.3. Mapeamento dos Processos Atuais 16

2.2.4. Identificação dos Problemas 17

2.3. PROPOSTA DE SOLUÇÃO 19

2.3.1. Descrição dos Processos Propostos 19

2.3.2. Mapeamento dos Processos Propostos 20

2.3.3. Objetivo Geral 21

2.3.4. Objetivos Específicos 22

2.3.5. Funcionalidades 23

2.3.6. Matriz de Rastreabilidade de Negócio 25

2.3.7. Estrutura Analítica do Software – EAS (E/P/S) 26

2.3.8. Metodologia 26

2.3.9. Usuários do Sistema 27

3. DEFINIÇÃO DOS REQUISITOS 28

3.1. ELICITAÇÃO 28

3.2. REQUISITOS 28

3.2.1. Requisitos Funcionais 28

3.2.2. Requisitos de Dados 33

3.2.3. Regras de Execução 39

3.2.4. Mensagens 40

3.3. PERFIS E PERMISSÕES 41


3.3.1. Lista de Perfis 41

3.3.2. Quadro de Permissões 42

3.4. RASTREABILIDADE 43

3.4.1. Requisitos Funcionais (RF) X Funcionalidade (F) 43

3.4.2. Requisitos Funcionais (RF) X Requisitos de Dados (RD) 44

3.4.3. Requisitos Funcionais (RF) X Regras de Execução (RE) 45

3.4.4. Requisitos Funcionais (RF) X Objetivos Específicos (OE) 46

3.5. REQUISITOS NÃO FUNCIONAIS 47

3.5.1. Funcionalidade 47

3.5.2. Desempenho (Eficiência) 47

3.5.3. Portabilidade 47

3.5.4. Usabilidade 48

3.5.5. Manutenibilidade 48

3.5.6. Confiabilidade 48

3.6. PROTÓTIPO NÃO FUNCIONAL 49

4. PROJETO BÁSICO 52

4.1. REQUISITOS FUNCIONAIS (RF) X CASOS DE USO (UC) 52

4.2. DIAGRAMA DE CASO DE USO 53

4.3. ESPECIFICAÇÃO DOS CASOS DE USO 54

4.4. DIAGRAMA DE CLASSE DE DOMÍNIO (objetivos e funcionalidades) 63

4.5. DIAGRAMA DE CLASSE DE ANÁLISE (objetos, relacionamentos,


atributos e métodos) 64

4.6. MODELO DE ENTIDADES E RELACIONAMENTO CONCEITUAL 65

4.7. MODELO DE ENTIDADES E RELACIONAMENTO LÓGICO 66

5. PROJETO DETALHADO DO SISTEMA 67

5.1. DIAGRAMAS DE SEQUÊNCIA 67

5.2. MODELO DE ENTIDADES E RELACIONAMENTOS FÍSICO 74


5.3. DICIONÁRIO DE DADOS FÍSICO 75

5.4. ARQUITETURA DO SISTEMA 78

5.4.1. Diagramas de Componentes 79

5.4.2. Diagrama de Implementação 79

5.4.3. Segurança da Informação 80

5.4.4. Rede 80

5.5. ESTIMATIVAS DO PROJETO 80

5.5.1. Propósito da contagem 81

5.5.2. FUNÇÕES DE DADOS 81

5.5.3. FUNÇÕES DE TRANSAÇÃO 82

5.5.4. CÁLCULO DO FATOR DE AJUSTE (FA) 83

5.5.5. CÁLCULO DO TOTAL DE PONTOS DE FUNÇÃO AJUSTADOS 84

5.5.6. ESTIMATIVAS 84

6. IMPLEMENTAÇÃO E TESTES 87

6.1. PROTÓTIPO FUNCIONAL (todas as funções do sistema) 87

6.2. PLANO DE TESTES 90

6.2.1. Objetivos 90

6.2.2. Escopo 90

6.2.3. Identificação de Projeto 90

6.2.4. Requisitos a Testar 91

6.2.5. Estratégia de Teste 93

6.3. ROTEIRO DE TESTES 96

6.4. RESGISTRO DE TESTES 111

7. CONCLUSÃO E CONSIDEREAÇÕES FINAIS 117

8. BIBLIOGRAFIA 118
14

1. INTRODUÇÃO

O início de todo negócio requer sempre uma preparação antes de abrir, pensar
em algumas maneiras de organizar o financeiro, organizar o estoque e uma maneira
de controlar os funcionários caso tenha. Grandes empresas possuem um sistema
próprio para realizar o controle geral, porém, nem sempre os pequenos e médios
negócios têm dinheiro para comprar. As pequenas e medias empresas normalmente
realizam as organizações anotando tudo em cadernos ou as vezes nem prestam
atenção, causando uma péssima gestão que atrapalha o negócio.
Todo empresário sempre quer conseguir desenvolver suas atividades o melhor
possível para obter o melhor lucro e conseguir aumentar a empresa. Com o objetivo
de solucionar esse problema e criar uma maior praticidade, o iWork será um meio de
realizar as organizações muito mais fácil.
Sendo utilizado pelo celular seria muito prático para todos os vendedores que
estão realizando atendimento e para o dono controlar tudo de qualquer lugar. Todas
as chegadas de produtos e vendas, valores das vendas, entrada e saída de
funcionários, iriam gerar diferentes relatórios para o dono/gerente conseguir organizar.
Os relatórios armazenariam informações para o dono/gerente saber quais são
os produtos mais vendidos e quais são os produtos em falta e informaria os dados de
lucros.
Com toda essa praticidade as lojas poderiam ter uma maior chance de
crescimento já que a organização toda estaria muito facilitada.

2. ANÁLISE DE NEGÓCIO

O intuito do sistema iWork e auxiliar de uma maneira muito mais acessível e


rápida a gestão geral de um negócio de pequeno ou médio porte. Organizando as
áreas mais importantes para o desenvolvimento e crescimento da empresa agilizado
a administração da mesma.
15

2.1. ANÁLISE INSTITUCIONAL – VISÃO GERAL

Este trabalho tem como finalidade auxiliar de uma forma muito pratica e rápida
a gestão de lojas de pequeno e médio porte com o controle das áreas mais
importantes. Controlando o estoque, sempre avisando os produtos em falta e quais
produtos são mais vendidos.
Uma loja que anota tudo no papel pode ter várias falhas durante as anotações,
pode esquecer de anotar, pode anotar coisas que não foram vendidas, pode não
entender a letra na hora de realizar as contas, muito pouca agilidade no estoque
podendo esquecer de comprar os produtos que estiverem em falta. Com um sistema
de controle mobile tudo fica mais fácil, o dono/gerente pode estar na rua e visualizar
como está indo as vendas na loja sempre manter o acompanhamento, saber sempre
e se manter atualizado.
Essa praticidade toda pode gerar um grande crescimento e desenvolvimento
do negócio, podendo até virar uma grande empresa futuramente.

2.2. ANÁLISE FUNCIONAL - VISÃO ESPECÍFICA

2.2.1. Áreas Envolvidas

Os atores envolvidos no processo são:


Vendas: Usuário que utilizará as funcionalidades do sistema para registrar
vendas.
Financeira: Usuário que irá gerenciar os gastos e lucros da empresa.
Estoque: Usuário que registrará as entradas e saídas de produtos do estoque.
Gerencia: Usuário que acompanhará e gerenciará todas as ações realizadas
dentro da empresa.

2.2.2. Descrição dos Processos Atuais

Atualmente as pequenas e medias empresas que não compram um sistema


para realizar a organização, realizam as vendas e controle anotando tudo em um
16

caderno, ou nem anotam nada. Perdem o controle muito facilmente e muitas vezes
não conseguindo se desenvolver e crescer.

2.2.3. Mapeamento dos Processos Atuais

Figura 1 – Mapeamento do fluxo de vendas atual


Fonte: Os autores, 2019.

Figura 2 – Mapeamento do fluxo de estoque atual


Fonte: Os autores, 2019.
17

Figura 3 – Mapeamento do fluxo financeiro atual


Fonte: Os autores, 2019.

Figura 4 – Mapeamento do fluxo de gerencia atual


Fonte: Os autores, 2019.

2.2.4. Identificação dos Problemas

Grande problema Falha no controle e gerenciamento da loja.

Tabela 1 – Problema 1

Elemento Descrição

O problema Demora no atendimento e dificuldade de controlar o estoque.


18

O que causa Desorganização na área de estoque.

Efeitos O funcionário/estoquista pode não perceber que alguns


produtos estão em falta e causa demora no atendimento tendo
em vista que o dono tem que verificar se possui o produto em
estoque.
Fonte: Os Autores, 2019.

Tabela 2 – Problema 2

Elemento Descrição

O problema Desorganização no registro de vendas.

O que causa O funcionário/dono anota os valores das vendas em um


caderno.

Efeitos Sujeito a erros ao anotar os valores e pode ocorrer


esquecimento.
Fonte: Os Autores, 2019.

Tabela 3 – Problema 3

Elemento Descrição

O problema Desorganização na parte financeira da empresa.

O que causa O dono soma os lucros diários e mensais manualmente.

Efeitos A soma está sujeita a erro pois é feita manualmente e demora


para saber os resultados financeiros da empresa.
Fonte: Os Autores, 2019.

Tabela 4 – Problema 4

Elemento Descrição

O problema O dono não tem noção de produtos que estão saindo ou os


produtos mais vendidos, quando está ausente.

O que causa Falta de informação sobre o que ocorre dentro da loja.

Efeitos Não consegue fazer uma avaliação melhor de quais produtos


deve comprar mais para gerar mais vendas.
Fonte: Os Autores, 2019.
19

Tabela 5 – Problema 5

Elemento Descrição

O problema O dono não sabe a hora que o funcionário chegou ou saiu, não
sabe quais produtos foram vendidos por qual funcionário.

O que causa Falta de informação sobre as ações do funcionário.

Efeitos O dono não tem como saber se os funcionários estão


trabalhando de maneira correta e gerando lucros para a
empresa.
Fonte: Os Autores, 2019.

2.3. PROPOSTA DE SOLUÇÃO

2.3.1. Descrição dos Processos Propostos

Entrada

O Dono da loja vai criar seu perfil, cadastrar sua loja e colocar quem são os
funcionários, qual tipo de venda, e quais produtos ele tem na loja, e atualizar a entrada
de novos produtos. Todo dia ele vai liberar a abertura da loja. Cadastrar o pedido do
cliente. Ao final do dia ele encerra e fecha a loja.

Processamento

Verificar produtos disponíveis no estoque. Calcular valor a ser recebido,


movimento do caixa (pagamento, troco), movimento dos funcionários. Gerar registro
dos movimentos diários.

Saída

O sistema deverá avisar quando um item presente no estoque estiver


acabando. O dono vai poder visualizar os relatórios de lucros, de saída de estoque e
o que cada funcionário fez na loja.
20

2.3.2. Mapeamento dos Processos Propostos

Figura 5 – Mapeamento do fluxo de vendas proposto


Fonte: Os autores, 2019.

Figura 6 – Mapeamento do fluxo de estoque proposto


Fonte: Os autores, 2019.
21

Figura 7 – Mapeamento do fluxo de financeiro proposto


Fonte: Os autores, 2019.

Figura 8 – Mapeamento do fluxo de gerencia proposto


Fonte: Os autores, 2019.

2.3.3. Objetivo Geral

O objetivo desse software é auxiliar no controle de lojas de pequeno e médio


porte. Com o controle de estoque, avisar quando produto estiver acabando, lucro
diário, lucro mensal, registro e controle de funcionários (se tiver) e controle das
atividades dos funcionários, tudo na palma da mão. Mesmo em casa o dono consegue
verificar como está o andamento da loja.
22

2.3.4. Objetivos Específicos

Tabela 6 – Objetivo Específico 1

Objetivo Específico Controlar entrada e saída de itens do estoque

Problema a resolver P1 - Desorganização na área de estoque.

Prioridade Alta

F1 - Manter produto
Funcionalidades
F2 – Gerar relatório de itens que estão em falta

Regras de Negócio:

Fonte: Os Autores, 2019.

Tabela 7 – Objetivo Específico 2

Objetivo Específico Registrar todos os itens vendidos na loja

Problema a resolver P2 - Desorganização no registro de vendas.

Prioridade Alta

F3 - Manter vendas
Funcionalidades
F4 – Gerar relatório de itens mais vendidos

Regras de Negócio:
Fonte: Os Autores, 2019.

Tabela 8 – Objetivo Específico 3

Objetivo Específico Gerar relatório detalhado de vendas e lucros

Problema a resolver P3 - Desorganização na parte financeira da empresa.

Prioridade Média

F5 – Gerar relatório de vendas diárias

Funcionalidades F6 – Gerar relatório de vendas mensais

F7 – Gerar relatório de lucros totais

Regras de Negócio:
Fonte: Os Autores, 2019.

Tabela 9 – Objetivo Específico 4

Objetivo Específico Facilitar gerenciamento da loja

Problema a resolver P4 - Falta de informação sobre o que ocorre dentro da loja.

Prioridade Média
23

Funcionalidades F8 – Manter loja

Regras de Negócio:
Fonte: Os Autores, 2019.

Tabela 10 – Objetivo Específico 5

Objetivo Específico Controlar ação dos funcionários

Problema a resolver P5 - Falta de informação sobre as ações do funcionário.

Prioridade Alta

F09 – Autenticar usuário

F10 - Manter funcionário


Funcionalidades
F11 - Vincular venda a funcionário

F12 - Gerar relatório de ações realizadas por funcionários

Regras de Negócio:
Fonte: Os Autores, 2019.

2.3.5. Funcionalidades

A) Manter produto – F01


O proprietário ou funcionário (se tiver a permissão) irá cadastrar todos os
produtos que chegarem na loja, e irão informar o sistema sempre que sair um produto
em alguma compra.

B) Gerar relatório de itens que estão em falta – F02


O sistema deve informar sempre que um item estiver quase acabando, e
quando já estiver em falta.

C) Manter vendas – F03


O sistema deve registrar todas as vendas realizadas durante o dia e quem
realizou as mesmas.

D) Gerar relatório de itens mais vendidos – F04


O sistema deve imprimir um relatório com os itens mais vendidos na loja.
24

E) Gerar relatório de vendas diárias – F05


O sistema deve gerar um relatório de todas as vendas realizadas durante o dia.

F) Gerar relatório de vendas mensais – F06


O sistema deve gerar um relatório de todas as vendas realizadas durante o
mês.

G) Gerar relatório de lucros totais – F07


O sistema deve gerar um relatório do lucro total mensal, subtraindo o valor das
vendas com os gastos da empresa.

H) Manter loja – F08


O proprietário deve cadastrar sua empresa quando for utilizar o software pela
primeira vez.

I) Autenticar usuário – F09


O usuário deve se identificar toda vez que for acessar o sistema para que o
mesmo libere os acessos devidos a cada usuário.

J) Manter funcionário – F10


O proprietário deve cadastrar os funcionários da loja para poder limitar e
controlar suas ações no sistema.

K) Vincular venda a funcionário – F11


O sistema deve informar por qual funcionário foi realizado cada compra
registrada.

L) Gerar relatório de ações realizadas por funcionários – F12


O proprietário irá receber diariamente um documento com o registro de todas
as atividades feitas por cada funcionário na loja (itens vendidos).
25

2.3.6. Matriz de Rastreabilidade de Negócio

Problema Geral: Falha no controle e gerenciamento da loja.


Objetivo Geral: O objetivo desse software é auxiliar no controle de lojas de
pequeno e médio porte. Com o controle de estoque, avisar quando produto estiver
acabando, lucro diário, lucro mensal, registro e controle de funcionários (se tiver) e
controle das atividades dos funcionários, tudo na palma da mão. Mesmo em casa o
dono consegue verificar como está o andamento da loja.

Tabela 11 – Matriz de Rastreabilidade de Negócio


Problema Objetivo
Fase (E/P/S) Funcionalidade Observação
Especifico Especifico
F1 – Manter produto
P1 – OE1 – Controlar
Entrada F2 – Gerar relatório
Desorganização na entrada e saída de
Saída de itens que estão
área de estoque itens do estoque
em falta
F3 – Manter vendas
P2 – OE2 – Registrar
Entrada F4 – Gerar relatório
Desorganização no todos os itens
Saída de itens mais
registro de vendas vendidos na loja
vendidos
F5 – Gerar relatório
P3 – OE3 – Gerar de vendas diárias
Desorganização na relatório F6 – Gerar relatório
Saída
parte financeira da detalhado de de vendas mensais
empresa vendas e lucros F7 – Gerar relatório
de lucros totais
P4 – Falta de
OE4 – Facilitar
informação sobre o
Entrada gerenciamento da F8 – Manter loja
que ocorre dentro
loja
da loja
F09 – Autenticar
P5 – Falta de usuário
Entrada OE5 – Controlar
informação sobre F10 – Manter
Processamento ação dos
as ações do funcionário
Saída funcionários
funcionário F11 – Vincular
venda a funcionário
26

F12 – Gerar relatório


de ações realizadas
por funcionários
Fonte: Os Autores, 2019.

2.3.7. Estrutura Analítica do Software – EAS (E/P/S)

Figura 9 – Estrutura Analítica do Software


Fonte: Os autores, 2019.

2.3.8. Metodologia

O projeto segue os paradigmas da Orientação a Objetos, todos os diagramas


utilizados são baseados no padrão adotado internacionalmente pela indústria de
engenharia de software, a UML – Unified Modeling Language (GUEDES, 2009).
A documentação foi feita seguindo a metodologia proposta pelo método iRON
– Integração de Requisitos Orientados a Negócio (CASTRO et al, 2014), processo de
identificação, definição, refinamento, verificação e controle de mudanças em
requisitos de software que atendam às necessidades do processo de negócio do
cliente.
27

Os diagramas utilizados foram feitos com a ajuda da ferramenta Astah, as


modelagens de processos com a ajuda da ferramenta Bizzagi, e os modelos de
entidade relacionamento com a ajuda da ferramenta MySQL Workbench.

Figura 10 – Gráfico de Baleia: Método Iron


Fonte:

2.3.9. Usuários do Sistema

Tabela 12 – Usuário do Sistema: Funcionário


Descrição Funcionário
O que ele faz? Utiliza o aplicativo para realizar vendas dos produtos e visualizar os
produtos em estoque.
O que ele precisa? O usuário precisa estar autenticado no sistema
Frequência de uso do Diariamente
sistema?
Precisa de treinamento Não necessita de treinamento em informática
em informática? Quais?
Tem experiência com Não se aplica.
sistemas semelhantes?
Fonte: Os autores, 2019.

Tabela 13 – Usuário do Sistema: Administrador


Descrição Administrador
28

O que ele faz? Utiliza o aplicativo para realizar vendas, adicionar produtos e visualizar
o estoque e emitir relatórios de vendas, financeiro e dos funcionários.
O que ele precisa? O usuário precisa estar autenticado no sistema e possuir a permissão
de administrador.
Frequência de uso do Diariamente
sistema?
Precisa de treinamento Não necessita de treinamento em informática
em informática? Quais?
Tem experiência com Não se aplica.
sistemas semelhantes?
Fonte: Os autores, 2019.

3. DEFINIÇÃO DOS REQUISITOS

3.1. ELICITAÇÃO

O processo de elicitação dos requisitos procedeu-se por meio de observações


na área de negócios abordada no presente documento, e entrevistas realizadas pelos
gerentes do projeto com administradores e colaboradores de empresas de pequeno
porte.

3.2. REQUISITOS

3.2.1. Requisitos Funcionais

Funcionalidade: Manter produto – F01


Tabela 14 – RF01 ao 06: Manter produto – F01
Dependência
Requisito Requisito Regra de Relação entre
Identificador Prioridade
Funcional de Dados Negócio requisitos
funcionais
O sistema deve RE01,
RF01 RD01 Alta
incluir produto RE02
O sistema deve
RF02 RD01
alterar produto
29

O sistema deve
RF03 RD01
excluir produto
O sistema deve
RF04 registrar Entrada RD01 RE05
Alta
dos produtos
O sistema deve
RF05 registrar saída dos RD01 RE06
Alta
produtos
O sistema deve
RF06 RD01
consultar produto
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de itens que estão em falta – F02


Tabela 15 – RF07: Gerar relatório de itens que estão em falta – F02
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve
avisar quando algum
RF07 RD02
item estiver em falta
no estoque
Fonte: Os autores, 2019.

Funcionalidade: Manter vendas – F03


Tabela 16 – RF08 ao 11: Manter vendas – F03
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve RE06,
RF08 RD03 Alta
incluir vendas RE08
O sistema deve
RF09 RD03
alterar vendas
O sistema deve
RF10 RD03
estornar vendas
O sistema deve
RF11 RD03
consultar vendas
Fonte: Os autores, 2019.
30

Funcionalidade: Gerar relatório de itens mais vendidos – F04


Tabela 17 – RF12: Gerar relatório de itens mais vendidos – F04
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve gerar
um relatório dos itens
RF12 RD04
mais vendidos no
mês
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de vendas diárias – F05


Tabela 18 – RF13: Gerar relatório de vendas diárias – F05
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve gerar
relatório ao final de RF06,
RF13 RD05 RE11 Alta
cada dia informando RF07
as vendas diárias
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de vendas mensais – F06


Tabela 19 – RF14: Gerar relatório de vendas mensais – F06
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve gerar
relatório ao final de
RF14 RD06
cada mês informando
as vendas mensais
Fonte: Os autores, 2019.
31

Funcionalidade: Gerar relatório de lucros totais – F07


Tabela 20 – RF15: Gerar relatório de lucros totais – F07
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve gerar
um relatório no final
RF15 RD07
do mês informando o
lucro total
Fonte: Os autores, 2019.

Funcionalidade: Manter loja – F08


Tabela 21 – RF16 ao 19: Manter loja – F08
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve
RF16 RD08 RE01 Alta
incluir empresa
O sistema deve
RF17 RD08 Alta
alterar empresa
O sistema deve
RF18 RD08 Alta
excluir empresa
O sistema deve
RF19 RD08 Média
consultar empresa
Fonte: Os autores, 2019.

Funcionalidade: Autenticar usuário – F09


Tabela 22 – RF20 ao 22: Autenticar usuário – F09
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve
RF20 RD09 Alta
autenticar usuário
32

O sistema deve
RF21 possuir código de RD09 Alta
usuário único
O sistema deve
RF22 RD09 Alta
recuperar senha
Fonte: Os autores, 2019.

Funcionalidade: Manter funcionário – F10


Tabela 23 – RF23 ao 26: Manter funcionário – F10
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve RE01,
RF23 RD10 Alta
incluir funcionário RE04
O sistema deve
RF24 RD10 Alta
alterar funcionário
O sistema deve
RF25 RD10 Alta
excluir funcionário
O sistema deve
RF26 RD10 Média
consultar funcionário
Fonte: Os autores, 2019.

Funcionalidade: Vincular venda a funcionário – F11


Tabela 24 – RF27 ao 28: Vincular venda a funcionário – F11
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve
RF27 registrar as ações RD11 RE07 Alta RF03
dos funcionários
O sistema deve
vincular as vendas
realizadas ao código
RF28 RD11
do funcionário que
está realizando a
mesma
Fonte: Os autores, 2019.
33

Funcionalidade: Gerar relatório de ações realizadas por funcionários – F12


Tabela 25 – RF29: Gerar Relatório de ações realizadas por funcionários – F12
Dependência
Requisito Regra de Relação entre
Identificador Requisito Funcional Prioridade
de Dados Negócio requisitos
funcionais
O sistema deve
entregar relatório
RE09, RF06,
RF29 diários ações RD12 Alta
RE10 RF07
realizadas pelos
funcionários
Fonte: Os autores, 2019.

3.2.2. Requisitos de Dados

Para cada requisito de dado deve ser preenchido:


● Nome do atributo:
➢ Obrigatório (O) (atributo de preenchimento obrigatório)
➢ Editável (E) – (atributo editável, permite o preenchimento)
➢ Seleção (S) (lista de ocorrências que podem ou não gerar novos
requisitos)
➢ Leitura (L) (atributo somente de leitura)
● Descrição
● Exemplo
● Tipo:
➢ Alfanumérico (A)
➢ Numérico (N)
➢ Caractere (C)
➢ Data (D)

Funcionalidade: Manter produto – F01


Tabela 26 – RD01: Manter produto – F01
Identificador: Requisitos Funcional
RD01 – O sistema deve cadastrar produtos pelos RF01, RF02, RF03, RF04, RF05,
seguintes atributos RF06
34

Nome O E S L Descrição Exemplo Tipo


Código do Atributo que representa o número do
X X 0001 N
produto produto gerado pelo sistema
Nome do Atributo que representa o nome do
X X Massa A
produto produto registrado
Atributo que representa a quantidade de
Quantidade X 03 N
produtos disponíveis no estoque
Valor de Atributo que representa o valor pelo qual
X 20,00 N
compra o produto é comprado
Valor de Atributo que representa o valor pelo qual
X 45,20 N
venda o produto é vendido
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de itens que estão em falta – F02


Tabela 27 – RD02: Gerar relatório dos itens que estão em falta – F02
Identificador: Requisitos Funcional
RD02 – O sistema deve registrar movimento de itens
RF07
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de
Atributo que representa o número do
relatório de
X X relatório de produtos em falta gerado 0001 N
produto em
pelo sistema
falta
Código do Atributo que representa o número do
X X 0001 N
produto produto gerado pelo sistema
Quantidade Atributo que representa o número de
X X 05 N
vendida produtos vendidos
Quantidade Atributo que representa o número de
X X 02 N
em estoque produtos que ainda existe em estoque
Fonte: Os autores, 2019.

Funcionalidade: Manter vendas – F03


Tabela 28 – RD03: Manter vendas – F03
Identificador: Requisitos Funcional
RD03 – O sistema deve registrar movimento de caixa
RF08, RF09, RF10, RF11
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de Atributo que representa o código da
X X 0000234 N
venda venda
35

Atributo que representa o código para


Código do
X X identificar o funcionário gerado pelo 01 N
produto
sistema
Atributo que representa a data da
Data da venda X X 10/05 D
venda
Tipo de Atributo que representa o tipo que foi
X X X Dinheiro A
pagamento pago a venda
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de itens mais vendidos – F04


Tabela 29 – RD04: Gerar relatório de itens mais vendidos – F04
Identificador: Requisitos Funcional
RD04 – O sistema deve gerar Relatório de itens mais
RF12
vendidos pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de
Atributo que representa o número do
relatório de
X X relatório de produtos mais vendidos 0001 N
produtos mais
gerado pelo sistema
vendidos
Atributo que representa o código para
Código do
X X identificar o funcionário gerado pelo 01 N
produto
sistema
Atributo que representa o código para
Quantidade
X X X identificar a quantidade de itens 5 N
vendida
vendidos
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de vendas diárias – F05


Tabela 30 – RD05: Gerar relatório de vendas diárias – F05
Identificador: Requisitos Funcional
RD05 – O sistema deve gerar Relatório de vendas diárias
RF13
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de
Atributo que representa o número do
relatório de
X X relatório de vendas diárias gerado pelo 0001 N
vendas
sistema
diárias
36

Código lucro Atributo que representa o código para


X X 1562 N
diário identificar o lucro diário
Código de Atributo que representa o código da
X X 0000234 N
venda venda
Soma lucros
X X Atributo que representa lucro do dia 500,00 N
dias
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de vendas mensais – F06


Tabela 31 – RD06: Gerar relatório de vendas mensais – F06
Identificador: Requisitos Funcional
RD06 – O sistema deve gerar Relatório de vendas
RF14
mensais pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de
Atributo que representa o número do
relatório de
X X relatório de vendas mensais gerado pelo 0001 N
vendas
sistema
mensais
Código lucro Atributo que representa o código para
X X 26741 N
mensal identificar o lucro mensal
Código lucro Atributo que representa o código para
X X 1562 N
dia identificar o lucro diário
Soma lucros
X X Atributo que representa lucro do mês 20000,00 N
mensal
Fonte: Os autores, 2019.

Funcionalidade: Gerar relatório de lucros totais – F07


Tabela 32 – RD07: Gerar relatório de lucros totais – F07
Identificador: Requisitos Funcional
RD07 – O sistema deve gerar Relatório de lucros totais
RF15
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de Atributo que representa o número do
relatório de X X relatório de lucros totais gerado pelo 0001 N
lucros totais sistema
Código lucro Atributo que representa o código para
X X 26741 N
mensal identificar o lucro mensal
37

Despesas Atributo que representa a despesa total


X X 1.000,00 N
mensais do mês
Resultado
lucro mensal Atributo que representa o código para
X X 13925,50 N
menos identificar o lucro real do mês
despesas
Fonte: Os autores, 2019.

Funcionalidade: Manter loja – F08


Tabela 33 – RD08: Manter loja – F08
Identificador: Requisitos Funcional
RD08 – O sistema deve cadastrar a empresa pelos
RF16, RF17, RF18, RF19
seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Atributo que representa o código no
Código da
X X sistema correspondente a loja 01 N
loja
cadastrada
Atributo que representa o CNPJ
CNPJ X X 57.818.741/0001-00 A
registrado no nome da empresa
Atributo que representa a razão
Razão social X X Mega Martelo A
social utilizada pela empresa
Nome Atributo que representa o nome
X Mega Martelo A
fantasia fantasia utilizado pela empresa
Atributo que representa a unidade
UF X X da federação em que a empresa se DF C
encontra
Atributo que representa a cidade
Cidade X Brasília A
em que a empresa se encontra
Atributo que representa o endereço
Endereço X X QNM 05 Conjunto D A
em que a empresa se encontra
Fonte: Os autores, 2019.

Funcionalidade: Autenticar usuário – F09


Tabela 34 – RD09: Autenticar usuário – F09
Identificador: Requisitos Funcional
RD09 – O sistema deve autenticar funcionário pelos
RF20, RF21, RF22
seguintes atributos
Nome O E S L Descrição Exemplo Tipo
38

Atributo que representa o código para


Código do
X X identificar o funcionário gerado pelo 01 N
funcionário
sistema
Atributo que representa a senha do
Senha X X Zezinho123 A
funcionário
Fonte: Os autores, 2019.

Funcionalidade: Manter funcionário – F10


Tabela 35 – RD10: Manter funcionário – F10
Identificador: Requisitos Funcional
RD10 – O sistema deve cadastrar os funcionários
RF23, RF24, RF25, RF26
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código do Atributo que representa o Código
X X 01 N
funcionário do funcionário no sistema
Atributo que representa o nome do
Nome X X Enzo A
funcionário
Atributo que representa o cargo do
Cargo X X Vendedor A
funcionário
Atributo que representa o E-mail
E-mail X zezinh@email.com A
do funcionário
Atributo que representa a senha do
Senha X X Zezinho123 A
funcionário
Atributo que representa o salário
Salário X X 1500,00 N
do funcionário
Fonte: Os autores, 2019.

Funcionalidade: Vincular venda a funcionário – F11


Tabela 36 – RD11: Vincular venda a funcionário – F11
Identificador: Requisitos Funcional
RD11 – O sistema deve vincular venda a funcionário
RF27, RF28
pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de Atributo que representa o código da
X 0000234 N
venda venda
Atributo que representa o código para
Código do
X X identificar o funcionário gerado pelo 01 N
funcionário
sistema
Fonte: Os autores, 2019.
39

Funcionalidade: Gerar relatório de ações realizadas por funcionários – F12


Tabela 37 – RD12: Gerar relatório de ações realizadas por funcionários – F12
Identificador: Requisitos Funcional
RD12 – O sistema deve registrar as ações dos
RF29
funcionários pelos seguintes atributos
Nome O E S L Descrição Exemplo Tipo
Código de Atributo que representa o número do
relatório de X X relatório de funcionário gerado pelo 0001 N
Funcionário sistema
Atributo que representa o código para
Código do
X X identificar o funcionário gerado pelo 01 N
funcionário
sistema
Código Venda X X Atributo representa código da venda 353748 N
Fonte: Os autores, 2019.

3.2.3. Regras de Execução

Tabela 38 – Regras de Execução


Requisito
Identificador Descrição Observação
Funcional
Quando cadastrar pedido o sistema deve verificar
RE01 RF01
se todos os dados fornecidos estão corretos
Quando cadastrar empresa o sistema deve verificar RF16,
RE02
se o CNPJ e a razão social são válidos RF17
Quando cadastrar produtos o sistema deve verificar RF01,
RE03 se todos os campos estão preenchidos RF02,
corretamente
Quando cadastrar funcionários o sistema deve RF23,
RE04
verificar se o CPF é válido RF24
Quando registrar a entrada de produto o sistema
RE05 deve verificar a quantidade e o código do produto a RF04
ser adicionado
RF08,
Quando registrar vendas o sistema deve dar baixa
RE06 RF09,
no estoque
RF10
Quando realizar qualquer ação no sistema o mesmo
RE07 RF29
deve registrar qual usuário realizou as ações
40

RF08,
Quando realizar uma venda o sistema deve
RE08 RF09,
registrar o valor e o produto vendido
RF10

Quando encerrar o caixa o sistema deve emitir um


RE09 RF13
relatório com todas as vendas do dia

Quando encerrar o caixa no final do mês o sistema


RE10 deve emitir um relatório com todas as vendas do RF14
mês
Quando encerrar o caixa o sistema deve emitir um
RE11 RF27
relatório de todas as ações dos funcionários
Fonte: Os autores, 2019.

3.2.4. Mensagens

Tabela 39 – Mensagens
Identificador Descrição Requisito Funcional

MSG01 Cadastro efetuado com sucesso. RF01, RF02, RF03

MSG02 Cadastro invalido por dados incorretos ou falta de dados. RF01, RF02, RF03

MSG03 Produto adicionado. RF04

MSG04 Conta paga. RF05

MSG05 Produtos retirados do estoque. RF05

MSG06 Registro salvo. RF06, RF07

MSG07 Registro baixado. RF08, RF09

MSG08 Produto está acabando. RF05

MSG09 Produto em falta. RF05

MSG10 Alterações realizadas com sucesso RF02, RF09, RF17, RF24


41

MSG11 Item excluído com sucesso RF03, RF18, RF25

MSG12 Senha Enviada RF23

Fonte: Os autores, 2019.

3.3. PERFIS E PERMISSÕES

3.3.1. Lista de Perfis

3.3.1.1. Administrador

Esse perfil é exclusivo para o dono da loja fazer os cadastros e ver os relatórios
emitidos pelo sistema, também é possível realizar as vendas a partir desse perfil.

Tabela 40 – Perfil administrador


Nome do Usuário Área Ramal
Administrador Financeiro, Vendas e Estoque 321
Fonte: Os autores, 2019.

3.3.1.2. Funcionário

Esse perfil é utilizado pelos funcionários da loja para realizar as vendas dos
produtos e dar baixa no estoque dos itens vendidos.

Tabela 41 – Perfil funcionário


Nome do Usuário Área Ramal
Funcionário Vendas e Estoque 321
Fonte: Os autores, 2019.
42

3.3.2. Quadro de Permissões

Tabela 42 – Quadro de Permissões


PERFIL

RF Administrador Funcionário
[RF 01] X
[RF 02] X
[RF 03] X
[RF 04] X X
[RF 05] X X
[RF 06] X X
[RF 07] X X
[RF 08] X X
[RF 09] X X
[RF 10] X X
[RF 11] X X
[RF 12] X
[RF 13] X
[RF 14] X
[RF 15] X
[RF 16] X
[RF 17] X
[RF 18] X
[RF 19] X
[RF 20] X X
[RF 21] X X
[RF 22] X X
[RF 23] X
[RF 24] X
[RF 25] X
[RF 26] X
[RF 27] X
[RF 28] X
[RF 29] X
Fonte: Os autores, 2019.
43

3.4. RASTREABILIDADE

3.4.1. Requisitos Funcionais (RF) X Funcionalidade (F)

Tabela 43 – Rastreabilidade: RF x F
Funcionalidades
Requisitos Funcionais F01 F02 F03 F04 F05 F06 F07 F08 F09 F10 F11 F12
RF01 X
RF02 X
RF03 X
RF04 X
RF05 X
RF06 X
RF07 X
RF08 X
RF09 X
RF10 X
RF11 X
RF12 X
RF13 X
RF14 X
RF15 X
RF16 X
RF17 X
RF18 X
RF19 X
RF20 X
RF21 X
RF22 X
RF23 X
RF24 X
RF25 X
RF26 X
RF27 X
RF28 X
RF29 X
Fonte: Os autores, 2019.
44

3.4.2. Requisitos Funcionais (RF) X Requisitos de Dados (RD)

Tabela 44 – Rastreabilidade: RF x RD
Requisitos de Dados
Requisitos RD RD RD RD RD RD RD RD RD RD RD RD
Funcionais 01 02 03 04 05 06 07 08 09 10 11 12
RF01 X
RF02 X
RF03 X
RF04 X
RF05 X
RF06 X
RF07 X
RF08 X
RF09 X
RF10 X
RF11 X
RF12 X
RF13 X
RF14 X
RF15 X
RF16 X
RF17 X
RF18 X
RF19 X
RF20 X
RF21 X
RF22 X
RF23 X
RF24 X
RF25 X
RF26 X
RF27 X
RF28 X
RF29 X
Fonte: Os autores, 2019.
45

3.4.3. Requisitos Funcionais (RF) X Regras de Execução (RE)

Tabela 45 – Rastreabilidade: RF x RE
Regras de Execução
Requisitos RE RE RE RE RE RE RE RE RE RE RE
Funcionais 01 02 03 04 05 06 07 08 09 10 11
RF01 X X
RF02 X
RF03
RF04 X
RF05
RF06
RF07
RF08 X X
RF09 X X
RF10 X X
RF11
RF12
RF13 X
RF14 X
RF15
RF16 X
RF17 X
RF18
RF19
RF20
RF21
RF22
RF23 X
RF24 X
RF25
RF26
RF27 X
RF28
RF29 X
Fonte: Os autores, 2019.
46

3.4.4. Requisitos Funcionais (RF) X Objetivos Específicos (OE)

Tabela 46 – Rastreabilidade: RF x OE
Objetivos Específicos
Requisitos Funcionais OE 01 OE 02 OE 03 OE 04 OE 05
RF01 X
RF02 X
RF03 X
RF04 X
RF05 X
RF06 X
RF07 X
RF08 X
RF09 X
RF10 X
RF11 X
RF12 X
RF13 X
RF14 X
RF15 X
RF16 X
RF17 X
RF18 X
RF19 X
RF20 X
RF21 X
RF22 X
RF23 X
RF24 X
RF25 X
RF26 X
RF27 X
RF28 X
RF29 X
Fonte: Os autores, 2019.
47

3.5. REQUISITOS NÃO FUNCIONAIS

Os requisitos não funcionais são restrições nos serviços e nas funções


oferecidas pelo sistema e, por exemplo, podem incluir restrições de tempo, restrições
no processo de desenvolvimento, e restrições impostas por normas (SOMMERVILLE,
2011).

3.5.1. Funcionalidade

Definição de Funcionalidade: “Conjunto de atributos que evidenciam a


existência de um conjunto de funções e suas propriedades especificadas. As funções
são as que satisfazem as necessidades explícitas ou implícitas” (ISO/IEC 9126).

RNF_01 - O sistema deve ser descrito utilizando a língua portuguesa todas as


funcionalidades, mensagens e formulários do sistema;
RNF_02 – O sistema deve facilitar o controle dos donos de negócios de
pequeno e médio porte;

3.5.2. Desempenho (Eficiência)

Definição de Eficiência: “Conjunto de atributos que evidenciam o


relacionamento entre o nível de desempenho do software e a quantidade de recursos
usados, sob condições estabelecidas” (ISO/IEC 9126).

RNF_08 - O sistema deve responder a qualquer pesquisa, inclusão, alteração


e exclusão em tempo inferior a 5 (cinco) segundos;
RNF_09 - O sistema deve garantir que as atualizações dinâmicas de
informação única não devem exceder 3 (três) segundo;

3.5.3. Portabilidade

Definição de Portabilidade: “Conjunto de atributos que evidenciam a


capacidade do software de ser transferido de um ambiente para outro” (ISO/IEC
9126).
48

RNF_10 - O sistema deve rodar, com folga, em microcomputadores de


arquitetura IBM PC, com processadores Intel P4 2.5Ghz com 512Mb de memória RAM
e HD de 40Gb com sistema operacional Windows 7,8,10;
RNF_11 - O sistema deve ser facilmente portável para GNU/Linux, com
ambiente Desktop GNOME, em máquina de mesma configuração;
RNF_12 - O sistema deve funcionar facilmente em celulares Android;

3.5.4. Usabilidade

Definição de Usabilidade: “Conjunto de atributos que evidenciam o esforço


necessário para se poder utilizar o software, bem como o julgamento individual desse
uso, por um conjunto explícito ou implícito de usuários” (ISO/IEC 9126).

RNF_13 - O sistema deve focar em eficiência, fornecendo teclas de atalho para


todas as ações mais importantes;
RNF_14 - O sistema deve ser intuitivo para maior facilidade de uso;

3.5.5. Manutenibilidade

Definição de Manutenibilidade: “Conjunto de atributos que evidenciam o esforço


necessário para fazer modificações especificadas no software” (ISO/IEC 9126).

RNF_15 – O sistema seguirá o padrão de código conforme documento de


Padrão de Codificação V2.1 disponível na intranet que define estrutura do código,
comentários e manipulação de variáveis.

3.5.6. Confiabilidade

Definição de Confiabilidade: “Conjunto de atributos que evidenciam a


capacidade do software de manter seu nível de desempenho sob condições
estabelecidas durante um período de tempo estabelecido” (ISO/IEC 9126).

RNF_16 – O sistema deve estar disponível em 99% do tempo.


49

3.6. PROTÓTIPO NÃO FUNCIONAL

Figura 11 – Tela de cadastro da empresa


Fonte: Os autores, 2019.

Figura 12 – Tela de cadastro de gerente


Fonte: Os autores, 2019.
50

Figura 13 – Tela de cadastro de funcionários


Figura 15 – Tela de login
Fonte: Os autores, 2019.
Fonte: Os Autores, 2019.

Figura 14 – Tela de cadastro de produtos


Figura 16 – Tela de seleção do gerente
Fonte: Os autores, 2019.
Fonte: Os autores, 2019.
51

Figura 17 – Tela de seleção dos funcionários Figura 19 – Tela de Vendas


Fonte: Os autores, 2019. Fonte: Os autores, 2019.

Figura 18 – Tela de estoque


Fonte: Os autores, 2019. Figura 20 – Tela de atividades dos
funcionários
Fonte: Os Autores, 2019.
52

4. PROJETO BÁSICO

4.1. REQUISITOS FUNCIONAIS (RF) X CASOS DE USO (UC)

Tabela 47 – Projeto básico: RF x UC


Casos de Uso
Requisitos
UC01 UC02 UC03 UC04 UC05 UC06 UC07 UC08 UC09 UC10
Funcionais
RF01 X
RF02 X
RF03 X
RF04 X
RF05 X
RF06 X
RF07 X
RF08 X
RF09 X
RF10 X
RF11 X
RF12 X
RF13 X
RF14 X
RF15 X
RF16 X
RF17 X
RF18 X
RF19 X
RF20 X
RF21 X
RF22 X
RF23 X
RF24 X
RF25 X
RF26 X
RF27 X
RF28 X
RF29 X
Fonte: Os autores, 2019.
53

4.2. DIAGRAMA DE CASO DE USO

Figura 21 – Casos de uso


Fonte: Os autores, 2019.
54

4.3. ESPECIFICAÇÃO DOS CASOS DE USO

U01 – Autenticar usuário


Tabela 48 – Descrição de caso de uso: UC01 – Autenticar usuário
Descrição Permite que o usuário cadastrado no sistema realize login e logoff.
Atores Administrador/Funcionário
Pré-Condições O ator deverá ser cadastrado no sistema.
Fluxo Principal
1. O ator acessa a tela de login no aplicativo. [FA02]
2. O ator preenche os campos de e-mail e senha e seleciona Login. [FA01]
3. O sistema verifica na base de dados se o login do usuário existe e valida a senha.
[FE01]
4. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] - Recuperar senha
1. O ator clica no botão “Recuperar senha”.
2. O sistema apresenta um formulário com o campo e-mail.
3. O ator preenche o campo do formulário e seleciona a opção “Enviar”.
4. O sistema recupera o login e a senha do ator.
5. O sistema envia um e-mail com login e a senha para o usuário.
[FA02] – Cadastrar Usuário
1. O ator clica no botão “Cadastrar”
2. O sistema apresenta outra tela para cadastrar um novo usuário. (Administrador)
3. O ator preenche todos os campos solicitados.
4. O sistema salva os dados informados e realiza o cadastro
5. O sistema exibe a mensagem de cadastro. MSG01
Fluxos de Exceção [FE]
[FE01] – Cadastro inválido por dados incorretos ou falta de dados.
1. O sistema exibe a mensagem. MSG02
Após a execução deste caso de uso, o usuário será autenticado e poderá ter
Pós Condições
acesso ao sistema de acordo com sua permissão.
Obj. Atendidos OE05
RF Atendidos RF20, RF21, RF22.
RD atendidos RD09.
RE Atendidas
MSG Exibidas MSG01, MSG02.
Observações
Fonte: Os autores, 2019.
55

UC02– Manter Funcionário


Tabela 49 – Descrição de caso de uso: UC02 – Manter funcionário
Descrição Permite ao ator, manter os dados dos funcionários.
Atores Administrador
Pré-Condições O ator (Permissão de Administrador) deve estar logado no sistema para
fazer os fluxos Alternativos (Consultar, Alterar, Excluir).
Fluxo Principal
1. O ator entra na tela de cadastro.
2. O sistema exibe um formulário com os dados necessários para realizar o cadastro
do funcionário.
3. O sistema verifica se os campos obrigatórios foram preenchidos. [FE01]
4. O sistema verifica se o funcionário já está cadastrado na base de dados.
5. O sistema apresenta mensagem de sucesso.MSG01
6. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Consultar
1. O ator entra na tela de perfil.
2. O sistema busca os dados do funcionário e apresenta na tela.
[FA02] – Alterar
1. O ator entra na tela do funcionário.
2. O sistema apresenta o formulário com os dados.
3. O ator altera os dados.
4. O sistema valida os campos.
5. O ator confirma alteração.
[FA03] – Excluir
1. O ator entra na tela do funcionário.
2. O ator clica no botão “Excluir Funcionário”.
3. O ator confirma exclusão.
Fluxos de Exceção [FE]
[FE01] – Esse campo é obrigatório.
1. O sistema exibe a mensagem MSG02.
Pós Condições Após a execução deste caso de uso, os dados do usuário serão mantidos.
Obj. Atendidos OE05
RF Atendidos RF23, RF24, RF25, RF26
RD atendidos RD10.
RE Atendidas RE01.
MSG Exibidas MSG01, MSG02.
Fonte: Os autores, 2019.
56

UC03 – Manter Produto


Tabela 50 – Descrição de caso de uso: UC03 – Manter produto
Descrição Permite ao ator, manter os dados dos Produtos.
Atores Administrador
Pré-Condições O ator (Permissão de Administrador) deve estar logado no sistema para fazer
os fluxos Alternativos (Consultar, Alterar, Excluir).
Fluxo Principal
1. O ator entra na tela de cadastro.
2. O sistema exibe um formulário com os dados necessários para realizar o cadastro
dos Produtos.
3. O sistema verifica se os campos obrigatórios foram preenchidos. [FE01]
4. O sistema verifica se o produto já está cadastrado na base de dados.
5. O sistema apresenta mensagem de sucesso. MSG01
6. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Consultar
1. O ator entra na tela do produto.
2. O sistema busca os dados do produto e apresenta na tela.
[FA02] – Alterar
1. O ator entra na tela do produto.
2. O sistema apresenta o formulário com os dados.
3. O ator altera os dados.
4. O sistema valida os campos.
5. O ator confirma alteração.
[FA03] – Excluir
1. O ator entra na tela do produto.
2. O ator clica no botão “Excluir Produto”.
3. O ator confirma exclusão.
Fluxos de Exceção [FE]
[FE01] – Esse campo é obrigatório.
1. O sistema exibe a mensagem MSG02.
Pós Condições Após a execução deste caso de uso, os dados dos produtos serão mantidos.
Obj. Atendidos OE01
RF Atendidos RF01, RF02, RF03, RF04, RF05, RF06
RD atendidos RD01.
RE Atendidas RE01, RE02, RE05, RE06.
MSG Exibidas MSG02.
Fonte: Os autores, 2019.
57

UC04 – Manter Loja


Tabela 51 – Descrição de caso de uso: UC04 – Manter loja
Descrição Permite ao ator, manter os dados da Loja.
Atores Administrador
Pré-Condições O ator (Permissão de Administrador) deve estar logado no sistema para fazer
os fluxos Alternativos (Consultar, Alterar, Excluir).
Fluxo Principal
1. O ator entra na tela de cadastro.
2. O sistema exibe um formulário com os dados necessários para realizar o cadastro da
loja.
3. O sistema verifica se os campos obrigatórios foram preenchidos. [FE01]
4. O sistema verifica se a loja já está cadastrada na base de dados.
5. O sistema apresenta mensagem de sucesso. MSG01
6. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Consultar
1. O ator entra na tela de loja.
2. O sistema busca os dados da loja e apresenta na tela.
[FA02] – Alterar
1. O ator entra na tela de loja.
2. O sistema apresenta o formulário com os dados.
3. O ator altera os dados.
4. O sistema valida os campos.
5. O ator confirma alteração.
[FA03] – Excluir
1. O ator entra na tela de loja.
2. O ator clica no botão “Excluir Loja”.
3. O ator confirma exclusão.
Fluxos de Exceção [FE]
[FE01] – Esse campo é obrigatório.
1. O sistema exibe a mensagem MSG02.
Pós Condições Após a execução deste caso de uso, os dados da loja serão mantidos.
Obj. Atendidos OE04
RF Atendidos RF16, RF17, RF18, RF19
RD atendidos RD08
RE Atendidas
MSG Exibidas
Fonte: Os autores, 2019.
58

UC05 – Manter Vendas


Tabela 52 – Descrição de caso de uso: UC05 – Manter vendas
Descrição Permite ao ator, manter os dados das vendas.
Atores Administrador/Funcionário
Pré-Condições O ator (Permissão de Administrador) deve estar logado no sistema para fazer
os fluxos Alternativos (Consultar, Alterar, Excluir).
Fluxo Principal
7. O ator entra na tela de vendas.
8. O sistema exibe um formulário com os dados necessários para realizar o cadastro
das vendas.
9. O sistema verifica se os campos obrigatórios foram preenchidos. [FE01]
10. O sistema verifica se a venda já está cadastrada na base de dados.
11. O sistema apresenta mensagem de sucesso. MSG01
12. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Alterar vendas
1. O ator acessa a tela de vendas e clica no botão “ALTERAR COMPRA”.
2. O ator realiza as mudanças necessárias e clica em “SALVAR”.
3. O sistema registra as mudanças realizadas
[FA02] – Estornar vendas
1. O ator acessa a tela de vendas e clica no botão “ALTERAR COMPRA”.
2. O ator seleciona a opção de estornar compra.
3. O ator realiza o estorno.
[FA03] – Consultar vendas
1. O ator acessa a tela de vendas.
4. O ator procura a venda desejada.
Fluxos de Exceção [FE]
[FE01] – Esse campo é obrigatório.
2. O sistema exibe a mensagem MSG02.
Pós Condições Após a execução deste caso de uso, os dados das vendas serão mantidos.
Obj. Atendidos OE02
RF Atendidos RF08, RF09, RF10, RF11
RD atendidos RD03
RE Atendidas
MSG Exibidas
Fonte: Os autores, 2019.
59

UC06 – Controle de entrada e saída de estoque


Tabela 53 – Descrição de caso de uso: UC06 – Controle de entrada e saída de estoque
Permite que o usuário cadastrado no sistema atualize o estoque sempre que
Descrição
entrar ou sair um item.
Atores Funcionário/Administrador
Pré-Condições O ator deve ser cadastrado no sistema.
Fluxo Principal
1. O ator acessa a tela de estoque da loja.
2. O ator identifica o item a ser alterado a quantidade em estoque.
3. O ator realiza as devidas alterações na quantidade e/ou preço se necessário.
4. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Cadastrar produto
1. O ator clica no botão “Adicionar produtos”.
2. O sistema apresenta o formulário de cadastro de produto.
3. O ator preenche todos os campos solicitados e clica no botão “Adicionar produtos”.
Fluxos de Exceção [FE]

Após a execução desse caso de uso a quantidade de itens existente em


Pós Condições estoque estará sempre atualizada, sendo assim possível saber se o produto
está em falta ou não.
Obj. Atendidos OE 1
RF Atendidos RF07
RD atendidos RD01
RE Atendidas RE01, RE03, RE05
MSG Exibidas MSG01, MSG03, MSG05
Fonte: Os autores, 2019.

UC07 – Controle de Funcionários


Tabela 54 – Descrição de caso de uso: UC07 – Controle de funcionários
Permite que o Administrador do sistema cadastre e controle as ações dos
Descrição
funcionários cadastrados.
Atores Administrador
Pré-Condições O ator deve possuir permissão de Administrador no sistema.
Fluxo Principal
1. O ator funcionário realiza uma venda.
2. O sistema vincula a venda ao perfil do funcionário.
3. O ator Administrador solicita a emissão de um relatório de ação dos funcionários.
4. O sistema gera um relatório das ações realizadas por cada funcionário.
60

5. O caso de uso é encerrado.


Fluxos Alternativos [FA]
[FA01] – Cadastrar Funcionário
1. O ator acessa a tela de cadastro de funcionário.
2. O ator preenche todos os dados solicitados pelo sistema.
3. O sistema verifica se os dados são verdadeiros.
4. O sistema envia uma senha para o funcionário por e-mail.
[FA01] – Alterar funcionário
1. O ator acessa a tela de funcionários.
2. O ator clica no botão “editar”.
3. O ator preenche os dados necessários.
4. O ator clica no botão “Salvar”.
[FA02] – Excluir funcionário
1. O ator clica no botão “excluir”.
2. O sistema mostra uma mensagem de confirmação.
3. O ator confirma a exclusão.
[FA03] – Consultar Funcionário
1. O ator entra na tela de funcionários.
2. O ator realiza a busca do funcionário desejado.
Fluxos de Exceção [FE]
[FE01] – Informações incorretas
1. O sistema apresenta a mensagem MSG02 e retorna para a tela anterior.
O ator Administrador saberá quais ações foram realizadas pelos funcionários
Pós Condições
cadastrados no sistema.
Obj. Atendidos OE 5
RF Atendidos RF27, RF28, RF29
RD atendidos RD10, RD11, RD12
RE Atendidas RE04, RE07, RE11
MSG Exibidas MSG01, MSG02
Fonte: Os autores, 2019.

UC08 – Controle de caixa


Tabela 55 – Descrição de caso de uso: UC08 – Controle de caixa
Permite que o ator veja as vendas realizadas durante o dia e quem realizou
Descrição
as mesmas.
Atores Funcionário/Administrador
Pré-Condições Estar cadastrado no sistema.
Fluxo Principal
1. O ator realiza uma venda no sistema.
61

2. O sistema vincula a venda realizada ao perfil de quem realizou.


3. O sistema registra as vendas realizadas e quem as realizou.
4. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Controle de vendas
1. O ator solicita ao sistema um relatório de vendas diárias para controlar o fluxo do
caixa.
2. O sistema gera o relatório de vendas diárias.
Fluxos de Exceção [FE]

O ator terá acesso a todas as vendas realizadas durante o dia assim como
Pós Condições
quem realizou as mesmas
Obj. Atendidos OE2
RF Atendidos RF13
RD atendidos RD03, RD11, RD12
RE Atendidas RE09
MSG Exibidas
Fonte: Os autores, 2019.

UC09 – Controle financeiro


Tabela 56 – Descrição de caso de uso: UC09 – Controle financeiro
Permite o ator Administrador visualizar todas as vendas e informações
Descrição
financeiras do comércio.
Atores Administrador.
Pré-Condições O ator deve possuir permissão de Administrador no sistema.
Fluxo Principal
1. O ator solicita ao sistema a geração de um relatório de lucros mensais.
2. O sistema gera o relatório do lucro total mensal da empresa.
3. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Relatório diário
1. O ator solicita ao sistema a geração de um relatório de lucros diários.
2. O sistema gera um relatório com todas as vendas realizadas no dia e quem realizou
as mesmas.
Fluxos de Exceção [FE]

O ator Administrador terá uma visão geral do lucro que o comércio está
Pós Condições
rendendo.
Obj. Atendidos OE 3
62

RF Atendidos RF14, RF15


RD atendidos RD05, RD06, RD07
RE Atendidas RE09, RE10
MSG Exibidas
Fonte: Os autores, 2019.

UC10 – Relatório de Vendas


Tabela 57 – Descrição de caso de uso: UC10 – Relatório de vendas
Permite o ator Administrador visualizar todas as vendas diárias e mensais
Descrição
assim como os itens mais vendidos durante o mesmo período.
Atores Administrador
Pré-Condições Possuir permissão de Administrador no sistema.
Fluxo Principal
1. O ator solicita ao sistema a geração de um relatório de vendas mensais.
2. O sistema gera o relatório das vendas mensais da empresa.
3. O caso de uso é encerrado.
Fluxos Alternativos [FA]
[FA01] – Relatório de itens mais vendidos
1. O ator solicita ao sistema a geração de um relatório de itens mais vendidos.
2. O sistema gera o relatório de itens mais vendidos.
3. O caso de uso é encerrado.
Fluxos de Exceção [FE]

O ator terá acesso a todas as vendas realizadas durante o mês assim como
Pós Condições
os itens mais vendidos na loja.
Obj. Atendidos OE02
RF Atendidos RF12
RD atendidos RD04
RE Atendidas
MSG Exibidas
Fonte: Os autores, 2019.
63

4.4. DIAGRAMA DE CLASSE DE DOMÍNIO (objetivos e funcionalidades)

Figura 22 – Diagrama de classe de domínio


Fonte: Os autores, 2019.
64

4.5. DIAGRAMA DE CLASSE DE ANÁLISE (objetos, relacionamentos,


atributos e métodos)

Figura 23 – Diagrama de classe de análise


Fonte: Os autores, 2019.
65

4.6. MODELO DE ENTIDADES E RELACIONAMENTO CONCEITUAL

Figura 24 – Modelo de entidades e relacionamento conceitual


Fonte: Os autores, 2019.
66

4.7. MODELO DE ENTIDADES E RELACIONAMENTO LÓGICO

Figura 25 – Modelo entidade e relacionamento lógico

Fonte: Os autores, 2019.


67

5. PROJETO DETALHADO DO SISTEMA

5.1. DIAGRAMAS DE SEQUÊNCIA

UC01 – Autenticar usuário

Figura 26 – Diagrama de sequência – UC01


Fonte: Os Autores, 2019.
68

UC02 – Manter funcionário

Figura 27 – Diagrama de sequência – UC02


Fonte: Os autores, 2019.
69

UC03 – Manter produto

Figura 28 – Diagrama de sequência – UC03


Fonte: Os autores, 2019.
70

UC04 – Manter Loja

Figura 29 – Diagrama de sequência – UC04


Fonte: Os autores, 2019.
71

UC05/08 – Manter Venda/Controle de caixa

Figura 30 – Diagrama de sequência – UC05/UC08


Fonte: Os autores, 2019.
72

UC06 – Controle de Entrada e Saída de Estoque

Figura 31 – Diagrama de sequência – UC06


Fonte: Os autores, 2019.
73

UC07 – Controle de Funcionários

Figura 32 – Diagrama de sequência – UC07


Fonte: Os autores, 2019.

UC09/10 – Controle Financeiro/Relatório de Vendas

Figura 33 – Diagrama de sequência – UC09/10


Fonte: Os autores, 2019.
74

5.2. MODELO DE ENTIDADES E RELACIONAMENTOS FÍSICO

Figura 34 – Modelo de entidade relacionamento físico


Fonte: Os autores, 2019.
75

5.3. DICIONÁRIO DE DADOS FÍSICO

Tabela 58 - Dicionário de dados: tabela produto


TABELA PODUTO
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_produto INT número do produto gerado X X X X
pelo sistema
Atributo que representa o
nome_produto VARCHAR(45) nome do produto X
registrado
Atributo que representa o
valor_de_venda INT valor pelo qual o produto e
vendido
Atributo que representa o
valor_de_compra INT valor pelo qual o produto e
comprado
Atributo que representa a
quantidade INT quantidade de produtos
disponíveis no estoque
Chave estrangeira que se
tb_Loja_cd_loja INT comunica com a tabela de X X LOJA
loja
Chave estrangeira que se
tb_Loja_tb_cidade_codi
INT comunica com a tabela de X X CIDADE
go_cidade
cidade
Chave estrangeira que se
tb_Loja_tb_cidade_tb_
INT comunica com a tabela de X X ESTADO
estado_codigo_estado
estado
Fonte: Os autores, 2019.

Tabela 59 - Dicionário de dados: tabela loja


TABELA LOJA
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
código no sistema
cd_loja INT X X X X
correspondente a loja
cadastrada
Atributo que representa o
CNPJ VARCHAR(45) CNPJ registrado no nome X
da empresa
Atributo que representa a
razao_social INT razão social utilizada pela X
empresa
Atributo que representa o
nome_fantasia INT nome fantasia utilizado X
pela empresa
76

Atributo que representa o


endereço INT endereço em que a
empresa se encontra
Chave estrangeira que se
tb_cidade_codigo_cidad
INT comunica com a tabela de X X CIDADE
e
cidade
Chave estrangeira que se
tb_cidade_tb_estado_co
INT comunica com a tabela de X X ESTADO
digo_estado
estado
Fonte: Os autores, 2019.

Tabela 60 - Dicionário de dados: tabela funcionários


TABELA FUNCIONÁRIO
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
código no sistema
cd_funcionario INT X X X X
correspondente ao
funcionário cadastrado
Atributo que representa o
nome_funcionario VARCHAR(45) X
nome do funcionário
Atributo que representa o
e-mail VARCHAR(45) X
Email do funcionário
Atributo que representa a
senha VARCHAR(45) X
senha do funcionário
Atributo que representa o
salário INT X
salário do funcionário
Chave estrangeira que se
tb_cargo_cd_cargo INT comunica com a tabela de X X CARGO
cargo
Chave estrangeira que se
tb_Loja_cd_loja INT comunica com a tabela de X X LOJA
loja
Chave estrangeira que se
tb_Loja_tb_cidade_codi
INT comunica com a tabela de X X CIDADE
o_cidade
cidade
Chave estrangeira que se
tb_Loja_tb_cidade_tb_
INT comunica com a tabela de X X ESTADO
estado_codigo_estado
estado
Fonte: Os autores, 2019.

Tabela 61 - Dicionário de dados: tabela estado


TABELA ESTADO
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_estado INT X X X
código do estado
Atributo que representa o
UF VARCHAR(45) estado cadastrado no X
sistema
Fonte: Os autores, 2019.

Tabela 62 - Dicionário de dados: tabela cidade


TABELA CIDADE
77

P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_cidade INT X X X X
código da cidade
Atributo que representa o
nome_cidade VARCHAR(45) X
nome da cidade
Chave estrangeira que se
tb_estado_codigo_estad
INT comunica com a tabela de X X ESTADO
o
estado
Fonte: Os autores, 2019.

Tabela 63 - Dicionário de dados: tabela cargo


TABELA CARGO
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_cargo INT X X X X
código do cargo
Atributo que representa o
nome_cargo VARCHAR(45) X
nome do cargo
Fonte: Os autores, 2019.

Tabela 64 - Dicionário de dados: tabela pagamento


TABELA PAGAMENTO
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_pagamento INT X X X X
código do pagamento
Atributo que representa o
tipo_pagamento VARCHAR(45) X
tipo de pagamento
Fonte: Os autores, 2019.

Tabela 65 - Dicionário de dados: tabela relatório de vendas


TABELA REGISTRO DE VENDA
P F N U A Tabela de
Descrição
Atributo Tipo K K N Q I Referência
Atributo que representa o
cd_venda INT X X X X
código da venda
Atributo que representa o
numero_venda INT X
número da venda
Chave estrangeira que se
tb_pagamento_cd_paga PAGAMEN
INT comunica com a tabela de X X
mento TO
pagamento
Chave estrangeira que se
tb_funcionário_cd_funcio FUNCION
INT comunica com a tabela de X X
nario ÁRIO
funcionário
Chave estrangeira que se
tb_funcionário_tb_cargo_
INT comunica com a tabela de X X CARGO
cd_cargo
cargo
Chave estrangeira que se
tb_funcionário_tb_Loja_c
INT comunica com a tabela de X X LOJA
d_loja
loja
Chave estrangeira que se
tb_funcionário_tb_Loja_t
INT comunica com a tabela de X X CIDADE
b_cidade_codigo_cidade
cidade
78

tb_funcionáio_tb_Loja__ Chave estrangeira que se


b_cidade_tb_estado_cod INT comunica com a tabela de X X ESTADO
igo_estado estado
Fonte: Os autores, 2019.

5.4. ARQUITETURA DO SISTEMA

Para o desenvolvimento do sistema foi utilizada a tecnologia Flutter, um


framework desenvolvido pelo Google na linguagem Dart, permite o desenvolvimento
de aplicações nativas tanto para Android quanto para iOS a partir da composição de
Widgets
O Flutter é um projeto open source com a licença BSD-style, incluindo
contribuições de centenas de desenvolvedores no mundo inteiro, é produtivo, permite
que você execute o aplicativo em um smartphone ou emulador enquanto programa.
Toda vez que você salvar um arquivo no projeto, o aplicativo vai atualizar
automaticamente no dispositivo
Ele é rápido, é alimentado pelo mesmo mecanismo que acelera o Chrome e o
Android: o Skia 2D. Esse mecanismo foca na aceleração de hardware.

Figura 35 - Camadas da tecnologia Flutter


Fonte: https://flutter.dev/docs/resources/technical-overview, 2019.
79

5.4.1. Diagramas de Componentes

Figura 36 – Diagrama de componentes


Fonte: Os autores, 2019.

5.4.2. Diagrama de Implementação

Figura 37 – Diagrama de implementação


Fonte: Os autores, 2019.
80

5.4.3. Segurança da Informação

A segurança da informação trata da preservação da confidencialidade,


integridade e autenticidade das informações e as ações que devem ser realizadas
para manter esses atributos tanto ambiente físico quanto no lógico.

5.4.3.1. Segurança física

Por se tratar de um sistema desenvolvido para aplicativos mobile, e não contar


com servidores físicos, a segurança física se dará à restrição de acesso ao local de
trabalho e de acesso ao software prevenindo o dano e interferências às informações.

5.4.3.2. Segurança Lógica

Para garantir a segurança lógica do sistema, o IWork somente será acessado


após a autenticação de usuário com login e senha por meio de criação de contas de
usuários com identificação única, criadas pelo administrador do sistema. Contará
também com uma divisão de papeis, e atribuição adequada de privilégios dos usuários
com uso de perfis (Administrador e funcionário). Por último, os dados serão mantidos
em um banco de dados e serão realizados backups frequentes para garantir a
integridade, disponibilidade e confiabilidade dos dados.

5.4.4. Rede

O projeto necessita de um modem com acesso a internet e com tecnologia de


rede sem fio, para que seja possível acessar o sistema idealizado e desenvolvido para
aplicações móveis como telefones-celulares, tablets e etc.

5.5. ESTIMATIVAS DO PROJETO

Análise de pontos de função (APF) é uma medida de dimensionamento que


permite que o produto de software seja analisado de acordo com seu tamanho, da
mesma forma que um objeto físico, permitindo assim estimar o esforço necessário
81

para seu desenvolvimento e o custo do mesmo. Essa técnica surgiu em 1979,


desenvolvida por Allan Albrecht (Vasquez, 2009) da IBM, a técnica de APF fornece
um objetivo, medida comparativa utilizada na avaliação, planejamento, gestão e
controle de produção de software (IFPUG).

5.5.1. Propósito da contagem

O propósito da contagem é fornecer o tamanho funcional de um projeto a fim


de mensurar o esforço, tempo e custo necessário para o desenvolvimento a primeira
versão da aplicação IWork, voltada para gestão de lojas de pequeno e médio porte.
O tipo de contagem a ser realizada trata-se de uma contagem de pontos de
função de desenvolvimento, que mede as funcionalidades entregues ao usuário na
primeira instalação do software.
O escopo da contagem se estende a todos os requisitos funcionais do sistema
em questão. O sistema possui um perfil de administrador que mantem os perfis de
usuários cadastrados pelo mesmo.
Todos os dados são mantidos pelo sistema que será objeto de medição, sendo
assim não dispõe de interfaces externas a aplicação.

5.5.2. FUNÇÕES DE DADOS

Tabela 66 – Funções de Dados


Pontos de
Tipo
Nome da Função de Dados RLR DER Complexidade Função
(ALI/AIE)
(PF)
Funcionário ALI 1 9 BAIXA 7
Cidade ALI 1 3 BAIXA 7
Loja ALI 1 7 BAIXA 7
Produto ALI 1 8 BAIXA 7
Venda ALI 1 8 BAIXA 7
TOTAL DE PONTOS DE FUNÇÃO DE DADOS 35
Fonte: Os Autores, 2019.
82

Onde:
ALI = ARQUIVO LÓGICO INTERNO
AIE = ARQUIVO DE INTERFACE EXTERNA
RLR = REGISTRO LÓGICO REFERENCIADO
DER = DADO ELEMENTAR REFERENCIADO
PF = PONTOS DE FUNÇÃO

5.5.3. FUNÇÕES DE TRANSAÇÃO

Tabela 67 – Funções de Transação


Pontos
Tipo de
Nome da Função de Transação ALR DER Complexidade
(EE/CE/SE) Função
(PF)
Funcionalidade F1 – Manter produto
Incluir EE 1 4 BAIXA 3
Alterar EE 1 4 BAIXA 3
Excluir EE 1 2 BAIXA 3
Consultar CE 1 2 BAIXA 3
Funcionalidade F2 – Gerar relatório de itens que estão em falta
Relatório SE 2 3 BAIXA 4
Funcionalidade F3 – Manter vendas
Incluir EE 1 4 BAIXA 3
Alterar EE 1 4 BAIXA 3
Excluir EE 1 2 BAIXA 3
Consultar CE 1 2 BAIXA 3
Funcionalidade F4 – Gerar relatório de itens mais vendidos
Relatório SE 2 3 BAIXA 4
Funcionalidade F5 – Gerar relatório de vendas diárias
Relatório SE 2 3 BAIXA 4
Funcionalidade F6 – Gerar relatório de vendas mensais
Relatório SE 2 3 BAIXA 4
Funcionalidade F7 – Gerar relatório de lucros totais
Relatório SE 2 2 BAIXA 4
Funcionalidade F8 – Manter loja
Incluir EE 1 4 BAIXA 3
Alterar EE 1 4 BAIXA 3
83

Excluir EE 1 2 BAIXA 3
Consultar CE 1 2 BAIXA 3
Funcionalidade F9 – Autenticar usuário
Login CE 1 8 BAIXA 3
Funcionalidade F10 – Manter funcionário
Incluir EE 1 4 BAIXA 3
Alterar EE ‘1 4 BAIXA 3
Excluir EE 1 2 BAIXA 3
Consultar CE 1 2 BAIXA 3
Funcionalidade F11 – Vincular venda a funcionário
Relatório SE 3 3 BAIXA 4
Funcionalidade F12 – Gerar relatório de ações realizadas por funcionários
Relatório SE 3 3 BAIXA 4
TOTAL DE PONTOS DE FUNÇÃO DE TRANSAÇÃO 79
Fonte: Os Autores, 2019.

Onde:
EE = ENTRADA EXTERNA
CE = CONSULTA EXTERNA
SE = SAÍDA EXTERNA
ALR = ARQUIVO LÓGICO REFERENCIADO
DER = DADO ELEMENTAR REFERENCIADO
PF = PONTOS DE FUNÇÃO

5.5.4. CÁLCULO DO FATOR DE AJUSTE (FA)

Tabela 68 – Fator de Ajuste


FATOR DE AJUSTE
CARACTERÍSTICA NÍVEL DE INFLUÊNCIA (NI) JUSTIFICATIVA
1 - Comunicação de dados 5
2 - Funções distribuídas 3
3 – Performance 3
4 - Configuração do Equipamento 1
5 - Volume de Transações 0
6 - Entrada de Dados on-line 5
7 - Interface com o Usuário 5
84

8 - Atualização on-line 4
9 - Processamento Complexo 0
10 – Reusabilidade 3
11 - Facilidade de Implantação 1
12 - Facilidade Operacional 3
13 - Múltiplos Locais 3
14 - Facilidade de Mudanças 4
NÍVEL DE INFLUÊNCIA TOTAL (NIT) 40
Fonte: Os Autores, 2019.

FATOR DE AJUSTE (FA) = (NIT * 0,01) + 0,65 = 1,05

5.5.5. CÁLCULO DO TOTAL DE PONTOS DE FUNÇÃO AJUSTADOS

PFNA = PFD + PFT = 35 + 79 = 114

PFA = (PFNA + PFC) * FA = (114 + 0) + 1,05 = 119,7

Onde:
PFNA = Pontos de Função Não Ajustados
PFD = Pontos de Função de Dados
PFT = Pontos de Função de Transação
PFC = Pontos de Função de Conversão
FA = Fator de Ajuste
PFA = Pontos de Função Ajustados

5.5.6. ESTIMATIVAS

5.5.6.1. ESTIMATIVA DE PRAZO

Aproximação de Caper Jones


Td = V ^ t
Td = 119,7 ^ 0,35 = 5,34 meses
85

Ferramenta
Td = 2,5 * (E ^ 0,32)
Td = 2,5 * (20 ^ 0,32) = 6,52 meses

5.5.6.2. ESTIMATIVA DE ESFORÇO

Aproximação de Caper Jones


Te = V / 150
Te = 119,7/150 = 0,80 pessoas

E = Te * Td
E = 0,80 * 5,34 = 4,27 homens-mês

Ferramenta
LOC = PFA * SLOC
LOC = 119,7 * 63 = 7.541,1
KLOC = 7,54

E = 2,4 * (V ^ 1,05)
E = 2,4 * (7,54 ^ 1,05) = 20 homens-mês

Te = E / Td
Te = 20 / 6,52 = 3 pessoas

Exemplo de estimativa de custo


E = PFA * P
E = 119,7 * 2 = 239,4 horas

5.5.6.3. ESTIMATIVA DE CUSTOS

Aproximação de Caper Jones


C=E*U
86

C = 4,27 * 50 = R$ 213,50
C/PF = C/PFA
C/PF = 213/119,7 = R$ 1,78

Ferramenta
C = 20 * 50 = R$ 1.000
C/PF = 1.000/119,7 = R$ 8,35

Exemplo de estimativa de custo


C = 239,4 * 50 = R$ 11.970
C/PF = 11.970/119,7 = R$ 100

Onde:
Td = tempo ótimo de desenvolvimento, em meses.
V = volume em Pontos de Função.
t = expoente que depende do ambiente computacional considerado.
E = Esforço estimado.
Te = Tamanho médio da equipe.
P = Produtividade média
C = Custo total estimado
U = Valor unitário
C/PF = Custo estimado por ponto de função
87

6. IMPLEMENTAÇÃO E TESTES

6.1. PROTÓTIPO FUNCIONAL (todas as funções do sistema)

Figura 38 – Tela de cadastro (Protótipo Figura 40 – Tela de recuperação de senha


funcional) (Protótipo funcional)
Fonte: Os Autores, 2019. Fonte: Os Autores, 2019.

Figura 39 – Tela de login (Protótipo funcional) Figura 41 – Tela principal (Protótipo funcional)
Fonte: Os Autores, 2019. Fonte: Os Autores, 2019.
88

Figura 42 – Tela de funcionários (Protótipo Figura 44 – Tela de cadastro de funcionários


funcional) (Protótipo funcional)
Fonte: Os Autores, 2019. Fonte: Os Autores, 2019.

Figura 43 – Tela de produtos (Protótipo


Figura 45 – Tela de cadastro de produtos
funcional)
(Protótipo funcional)
Fonte: Os Autores, 2019.
Fonte: Os Autores, 2019.
89

Figura 46 – Tela de loja (Protótipo funcional) Figura 48 – Tela de cadastro de lojas


(Protótipo funcional)
Fonte: Os Autores, 2019.
Fonte: Os Autores, 2019.

Figura 47 – Tela de vendas (Protótipo Figura 49 – Tela de cadastro de vendas


funcional) (Protótipo funcional)

Fonte: Os Autores, 2019. Fonte: Os Autores, 2019.


90

6.2. PLANO DE TESTES

6.2.1. Objetivos

Esse documento do Plano de Testes do IWork. Compõe-se dos seguintes


objetivos:
• Identificar informações de projeto existentes e os componentes de
software que devem ser testados.
• Listar os Requisitos a Testar recomendados (alto nível).
• Recomendar e descrever as estratégias de teste a serem empregadas.
• Identificar os recursos necessários e prover uma estimativa dos esforços
de teste.
• Listar os elementos resultantes do projeto de testes.

6.2.2. Escopo

O IW passará pelos testes unitário e de integração. Os testes unitários e de


integração vão lidar com a qualidade funcional, das bases de dados, interface gráfica
e do controle de acesso; enquanto que os testes de sistema tratarão as questões de
performance.
Os testes mais críticos serão os testes de banco de dados, que compõe a maior
parte do sistema, testaremos a também a correta atualização do banco de dados para
as funções de cadastrar, atualizar e remover.

6.2.3. Identificação de Projeto

A tabela abaixo identifica a documentação e disponibilidade usados para


desenvolver o plano de testes:
91

Tabela 69 - Identificação do projeto


Documento Criado ou Disponível Recebido ou Revisado

Especificação de Requisitos ◼ Sim  Não ◼ Sim  Não

Plano de Projeto ◼ Sim  Não ◼ Sim  Não

Modelo de Análise ◼ Sim  Não ◼ Sim  Não

Modelo de Projeto ◼ Sim  Não ◼ Sim  Não

Documento de Arquitetura  Sim ◼ Não  Sim ◼ Não

Protótipo  Sim ◼ Não  Sim ◼ Não

Manual do Usuário  Sim ◼ Não  Sim ◼ Não

Lista de Riscos  Sim ◼ Não  Sim ◼ Não

Fonte: Os autores, 2019.

6.2.4. Requisitos a Testar

A lista abaixo identifica aqueles itens – use cases, requisitos funcionais e não
funcionais – que foram identificados como alvos de teste. Essa lista representa o que
será testado.

6.2.4.1. Teste do Banco de Dados

Verifique que as informações do usuário podem ser cadastradas, consultadas


e removidas.
Verifique que as informações de loja, produtos e demais informações podem
ser inseridos, atualizados e consultados.
Verifique que as informações específicas de cada usuário podem ser
acompanhadas.
Verifique que o sistema pode cadastrar, atualizar e remover um funcionário de
seu banco de dados.
Verifique que as informações sobre a loja possam ser cadastradas, removidas
e atualizadas pelo administrador do sistema.
Verifique que as informações dos produtos cadastrados possam ser
consultadas pelos funcionários.
92

6.2.4.2. Teste Funcional

Verifique que qualquer usuário pode acessar sua própria conta através de login
e senha.

6.2.4.3. Teste do Ciclo de Negócios

Nenhum.

6.2.4.4. Teste da Interface do Usuário

Navegue através de todos os use cases, verificando que cada tela de interface
gráfica pode ser rapidamente entendida e facilmente utilizada.

6.2.4.5. Perfil da Performance

Nenhum.

6.2.4.6. Teste de Carga

Nenhum.

6.2.4.7. Teste de Stress

Nenhum.

6.2.4.8. Teste de Volume

Nenhum.

6.2.4.9. Teste de Segurança e de Controle de Acesso

Verificar que usuários não cadastrados não podem acessar informações do


sistema.
Verificar que além do administrador, ninguém mais pode inserir, atualizar ou
remover dados da loja e dos funcionários no sistema.
Verificar que os usuários do sistema podem acessar apenas as funcionalidades
e dados associados ao seu próprio tipo de usuário.
93

6.2.4.10. Teste de Falha/Recuperação

Nenhum.

6.2.4.11. Teste de Instalação

Nenhum.

6.2.5. Estratégia de Teste

6.2.5.1. Tipos de Teste

Nota: As transações abaixo se referem às “transações lógicas de negócio”.


Essas transações são definidas como funções específicas que um usuário final do
sistema é suposto de executar ao usar a aplicação, tais como adicionar ou modificar
uma dada informação.

6.2.5.1.1. Teste de Integridade de Dados e do Banco de Dados

Tabela 70 - Teste de integridade


Objetivo do Teste: Garantir que os métodos e processos de acesso ao banco de dados
funcionam apropriadamente e sem corrupção dos dados.

Técnica: ▪ Invocar cada método e processo de acesso ao banco de dados,


alimentando cada um com dados ou requisições de dados válidos
e inválidos.

▪ Inspecionar o banco de dados para garantir que os dados foram


populados como pretendido, que todos os eventos do banco de
dados ocorreram apropriadamente, ou revisar os dados retornados
para garantir que os dados corretos foram recuperados pelas
razões corretas.

Critério de Finalização: Todos os métodos e processos de acesso à base de dados funcionam


como projetados e sem nenhuma corrupção de dados.

Considerações ▪ Nenhum
Especiais:

Fonte: Os autores, 2019.


94

6.2.5.1.2. Teste de Função

Tabela 71 - Teste de função


Objetivo do Teste: Garantir a funcionalidade apropriada do alvo do teste, incluindo
navegação, entrada de dados, processamento e recuperação.

Técnica: Executar cada caso de uso, fluxo de caso de uso, usando dados
válidos e inválidos, para verificar o seguinte:

▪ Os resultados esperados ocorrem quando dados válidos são


usados

▪ As mensagens de erro ou aviso apropriadas são exibidas quando


dados inválidos são usados.

▪ Cada regra de negócio é aplicada apropriadamente

Critério de Finalização: ▪ Todos os testes planejados foram executados.

▪ Todos os defeitos identificados foram tratados.

Considerações Nenhum
Especiais:

Fonte: Os autores, 2019.

6.2.5.1.3. Teste da Interface do Usuário

Tabela 72 - Teste da interface do usuário


Objetivo do Teste: Verificar o seguinte:

▪ A navegação através dos alvos de teste reflete as funções e os


requisitos do negócio apropriadamente, incluindo janela-a-janela,
campo-a-campo, e o uso de métodos de acesso (tecla tab, movimentos
do mouse, teclas aceleradoras)

▪ Objetos e características da janela, tais como menus, tamanho,


posição, estado e foco conformam-se aos padrões.

Técnica: Criar ou modificar os testes para cada janela para verificar a navegação
e os estados de objeto apropriados para cada janela e objetos da
aplicação.

Critério de Finalização: É verificado que cada janela permanece consistente com a versão de
comparação ou dentro de padrões aceitáveis.
95

Considerações Nenhum
Especiais:

Fonte: Os autores, 2019.

6.2.5.1.4. Teste de Segurança e Controle de Acesso

Tabela 73 - Teste de segurança


Objetivo do Teste: • Segurança do Nível de Aplicação: Verifique que um ator pode
acessar apenas aquelas funções ou dados para os quais o seu tipo de
usuário tem permissão.

• Segurança do Nível de Sistema: Verifique que apenas aqueles


atores com acesso ao sistema e aplicações têm permissão de acessá-
los.

Técnica: • Segurança do Nível de Aplicação: Identifique e liste cada tipo de


usuário e as funções ou dados para os quais cada tipo tem permissão.

• Crie testes para cada tipo de usuário e verifique cada permissão


criando transações específicos para cada tipo de usuário.

• Modifique o tipo de usuário e repita os testes para os mesmos


usuários. Em cada caso, verifique que funções ou dados adicionais
estão corretamente disponíveis ou negados.

• Acesso de Nível de Sistema: Ver Considerações Especiais


abaixo.

Critério de Finalização: Para cada tipo de ator conhecido as funções ou dados apropriados
estão disponíveis, e todas as transações funcionam como esperado e
rodam nos Testes de Função anteriores.

Considerações Nenhum
Especiais:

Fonte: Os autores, 2019.

6.2.5.2. Sistema

A tabela seguinte expõe os recursos do sistema para o projeto de teste.

Tabela 74 - Recursos do sistema


Recursos do Sistema
96

Servidor de Banco de Dados

— MySQL DataBase Server

Terminais Clientes

—1 Celular (com acesso à internet)

Repositório de Testes

—1 PC
Fonte: Os autores, 2019.

6.3. ROTEIRO DE TESTES

Tabela 75 - Caso de teste 01


Contador: 001
Criticidade: Alta
Localização: Login
Objeto de Teste: Operações referentes à funcionalidade de mensagem de alerta
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após o e-mail e
senha ser inserido incorretamente
Pré-Condição: 1.O usuário deve estar cadastrado no sistema.
Procedimento: 1. Entrar na tela de Login
2. Inserir no campo “E-mail” um dado incorreto;
3. Inserir no campo “Senha” um dado incorreto;
4. Clicar no botão “Entrar”;
Resultado Esperado: 1. O sistema deve emitir uma mensagem de alerta de erro com a
mensagem “E-mail ou Senha inseridos está incorreto”
Fonte: Os autores, 2019.

Tabela 76 - Caso de teste 02


Contador: 002
Criticidade: Alta
Localização: Login
Objeto de Teste: Operações referentes à funcionalidade de mensagem de alerta
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após somente o
e-mail ser inserido incorretamente
Pré-Condição: 1. O usuário deve estar cadastrado no sistema.
Procedimento: 1. Entrar na tela de Login
2. Inserir no campo “E-mail” um dado incorreto;
3. Inserir no campo “Senha” um dado correto;
97

4. Clicar no botão “Entrar”;

Resultado Esperado: 1. O sistema deve emitir uma mensagem de alerta de erro com a
mensagem “E-mail ou Senha inseridos está incorreto”

Fonte: Os autores, 2019.

Tabela 77 - Caso de teste 03


Contador: 003
Criticidade: Alta
Localização: Login
Objeto de Teste: Operações referentes à funcionalidade de mensagem de alerta
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após somente a
senha ser inserido incorretamente
Pré-Condição: 1. O usuário deve estar cadastrado no sistema.
Procedimento: 1. Entrar na tela de Login
2. Inserir no campo “E-mail” um dado correto;
3. Inserir no campo “Senha” um dado incorreto;
4. Clicar no botão “Entrar”;

Resultado Esperado: 1. O sistema deve emitir uma mensagem de alerta de erro com a
mensagem “E-mail ou Senha inseridos está incorreto”

Fonte: Os autores, 2019.

Tabela 78 - Caso de teste 04


Contador: 004
Criticidade: Alta
Localização: Login
Objeto de Teste: Operação referente à funcionalidade do botão de cadastro
Caso de Teste: Testar se o botão “Cadastrar” está redirecionando o usuário para a tela de
cadastro
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de Login;
2. Clicar no botão “Cadastrar”;

Resultado Esperado: 1. O sistema deve redirecionar o usuário para tela de cadastro


Fonte: Os autores, 2019.
98

Tabela 79 - Caso de teste 05


Contador: 005
Criticidade: Alta
Localização: Login
Objeto de Teste: Operação referente à funcionalidade do botão login
Caso de Teste: Testar se o botão “Login” está redirecionando o usuário para a tela inicial
do aplicativo
Pré-Condição: 1. O usuário deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de Login;
2. Inserir no campo “Usuário” um dado válido;
2. Inserir no campo “Senha” um dado válido;
2. Clicar no botão “Login”;
Resultado Esperado: 1. O sistema deve redirecionar o usuário para tela inicial
Fonte: Os autores, 2019.

Tabela 80 - Caso de teste 06


Contador: 006
Criticidade: Alta
Localização: Login> Cadastrar funcionário
Objeto de Teste: Operação referente à funcionalidade da mensagem de campo vazio
Caso de Teste: Testar se ao apertar o botão “Cadastrar” caso exista campo não
preenchido exiba mensagem na tela que existe campo vazio
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de cadastrar;
2. Clicar no botão “Cadastrar”;

Resultado Esperado: 1. O sistema deve exibir mensagem “Campo não preenchido”


Fonte: Os autores, 2019.

Tabela 81 - Caso de teste 07


Contador: 007
Criticidade: Alta
Localização: Login> Cadastrar funcionário
Objeto de Teste: Operação referente à funcionalidade de validação de CPF
Caso de Teste: Testar se o dado no campo “CPF” é válido caso não seja emitir mensagem
para o usuário
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de cadastrar;
2. preencher o campo de “CPF” com o dado inválido;
99

Resultado Esperado: 1. O sistema deve exibir mensagem “CPF inválido”


Fonte: Os autores, 2019.
Tabela 82 - Caso de teste 08
Contador: 008
Criticidade: Alta
Localização: Login> Cadastrar funcionário
Objeto de Teste: Operação referente à funcionalidade da mensagem de e-mail incorreto
Caso de Teste: Testar se é exibido mensagem ao usuário caso o campo “Confirmar o e-
mail” esteja diferente do campo “e-mail”
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de cadastro;
2. preencher o campo “e-mail” com um dado;
3. preencher o campo “Confirmar e-mail” com o dado diferente do campo
“e-mail”
Resultado Esperado: 1. O sistema deve exibir mensagem “E-mail incorreto”
Fonte: Os autores, 2019.

Tabela 83 - Caso de teste 09


Contador: 009
Criticidade: Alta
Localização: Login> Cadastrar funcionário
Objeto de Teste: Operação referente à funcionalidade do campo de dados “Salário”
Caso de Teste: Testar se o campo “Salário” ao ser preenchido exiba duas casas decimais
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Entrar na tela de cadastro;
2. preencher o campo “Salário” com um dado;

Resultado Esperado: 1. O sistema deve exibir duas casas decimais


Fonte: Os autores, 2019.

Tabela 84 - Caso de teste 10


Contador: 010
Criticidade: Alta
Localização: Login> Cadastrar funcionário
Objeto de Teste: Operação referente à funcionalidade de campo de dados “nome”
Caso de Teste: Testar se o campo “Nome” aceita receber apenas dados do tipo caractere
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
100

Procedimento: 1. Logar no sistema


2. Entrar na tela: Login > Menu > Estoque
2. preencher o campo de “Nome” com um dado de um tipo diferente de
caractere;

Resultado Esperado: 1. O sistema não deve registrar o dado, de um tipo diferente do aceito, no
campo
Fonte: Os autores, 2019.

Tabela 85 - Caso de teste 11


Contador: 011
Criticidade: Alta
Localização: Login> Menu > Estoque
Objeto de Teste: Operação referente à funcionalidade da mensagem de campo vazio
Caso de Teste: Testar se ao apertar o botão “Cadastro” caso exista campo não preenchido
exiba mensagem na tela que existe campo vazio
Pré-Condição: 1. O usuário não deve estar cadastrado no sistema
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
2. Clicar no botão “Cadastrar”;
Resultado Esperado: 1. O sistema deve exibir mensagem “Campo não preenchido”
Fonte: Os autores, 2019.

Tabela 86 - Caso de teste 12


Contador: 012
Criticidade: Alta
Localização: Login> Menu > Estoque
Objeto de Teste: Operações referentes a busca de itens
Caso de Teste: Testar se o sistema está realizando a busca por produtos
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa consultar um
produto.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
3. Digitar o nome do produto na barra de busca
4. Clicar no botão “Buscar”
Resultado Esperado: 1. O sistema deve buscar no banco de dados a relação de produtos
2. O sistema deve exibir uma lista com os itens que possuem o nome igual
ao inserido na barra de busca
Fonte: Os autores, 2019.
101

Tabela 87 - Caso de teste 13


Contador: 013
Criticidade: Alta
Localização: Login> Menu > Estoque
Objeto de Teste: Operações referentes ao controle de estoque
Caso de Teste: Testar se o sistema permite editar os produtos em estoque
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa editar um
produto.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
3. Clicar no botão “Editar”
4. Preencher os campos realizando as alterações desejadas
5. Clicar no botão “Confirmar”
Resultado Esperado: 1. O sistema deve realizar as devidas mudanças no banco de dados
2. O sistema deve exibir uma mensagem dizendo as alterações foram
realizadas com sucesso
3. O sistema deve retornar para a página de controle de estoque
Fonte: Os autores, 2019.

Tabela 88 - Caso de teste 14


Contador: 014
Criticidade: Alta
Localização: Login> Menu > Estoque
Objeto de Teste: Operações referentes ao controle de estoque
Caso de Teste: Testar se o sistema está excluindo os itens corretamente
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa excluir um
produto.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
3. Clicar no botão “Excluir”
4. Clicar no botão “Sim”
Resultado Esperado: 1. O sistema deve remover o item do banco de dados
2. O sistema deve exibir uma mensagem dizendo que a exclusão foi
realizada com sucesso
3. O sistema deve retornar para a página de controle de estoque
Fonte: Os autores, 2019.
Tabela 89 - Caso de teste 15
Contador: 015
Criticidade: Alta
Localização: Login> Menu > Estoque
102

Objeto de Teste: Operações referentes à funcionalidade do campo “Código do produto”


Caso de Teste: Testar se o campo “Código do produto” aceita apenas dados do tipo
numérico
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa adicionar um
produto.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
3. Preencher o campo de “Código do produto” com um dado diferente do
tipo numérico;
Resultado Esperado: 1. O sistema não deve registrar o dado, de um tipo diferente do aceito, no
campo
Fonte: Os autores, 2019.

Tabela 90 - Caso de teste 16


Contador: 016
Criticidade: Alta
Localização: Login> Menu > Estoque
Objeto de Teste: Operações referentes ao controle de estoque
Caso de Teste: Testar se o cadastro de produtos está sendo realizado corretamente
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa adicionar um
produto.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Estoque
3. Clicar no botão “Adicionar produto”
4. Preencha os campos solicitados
5. Clicar no botão “Confirmar”
Resultado Esperado: 1. O sistema deve inserir o item no banco de dados
2. O sistema deve exibir uma mensagem dizendo que o cadastro foi
realizado com sucesso
3. O sistema deve retornar para a página de controle de estoque
Fonte: Os autores, 2019.

Tabela 91 - Caso de teste 17


Contador: 017
Criticidade: Médio
Localização: Login> Menu > Relatórios
Objeto de Teste: Operação referente ao relatório de produtos em falta
Caso de Teste: Testar se o sistema está gerando o relatório com os itens em que estão
acabando
103

Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa visualizar os
relatórios.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatório
3. Clicar no botão para gerar o relatório do estoque
Resultado Esperado: 1. O sistema deve mostrar a lista de itens que estão quase acabando
Fonte: Os autores, 2019.

Tabela 92 - Caso de teste 18


Contador: 018
Criticidade: Médio
Localização: Login> Menu > Relatórios
Objeto de Teste: Operação referente ao relatório de produtos em falta
Caso de Teste: Testar se o botão de impressão do relatório está funcionando
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa visualizar os
relatórios.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatório
3. Clicar no botão para gerar o relatório do estoque
4. Clicar no botão “Imprimir”
Resultado Esperado: 1. O sistema deve imprimir o relatório para o formato PDF ou enviar o
arquivo para a impressora para imprimir em papel.
Fonte: Os autores, 2019.

Tabela 93 - Caso de teste 19


Contador: 019
Criticidade: Alta
Localização: Login> Menu > Funcionários
Objeto de Teste: Operações referentes ao controle de funcionários
Caso de Teste: Testar se o sistema está realizando o cadastro de funcionários
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa adicionar um
funcionário.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Funcionários
3. Clicar em “Adicionar funcionário”
4. Preencher os dados do funcionário corretamente
5. Clicar em “Enviar Senha”
Resultado Esperado: 1. O sistema deve inserir o funcionário no banco de dados
2. O sistema deve enviar uma senha por e-mail para o funcionário
104

3. O sistema deve mostrar uma mensagem dizendo que a senha foi


enviada
4. O sistema deve retornar para a página de Funcionários
Fonte: Os autores, 2019.

Tabela 94 - Caso de teste 20


Contador: 020
Criticidade: Alta
Localização: Login> Menu > Funcionários
Objeto de Teste: Operações referentes ao controle de funcionários
Caso de Teste: Testar se o sistema permite realizar a edição do funcionário
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa editar um
funcionário.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Funcionários
3. Clicar no botão “Editar”
4. Preencher os campos realizando as alterações desejadas
5. Clicar no botão “Confirmar”
Resultado Esperado: 1. O sistema deve realizar as devidas mudanças no banco de dados
2. O sistema deve exibir uma mensagem dizendo as alterações foram
realizadas com sucesso
3. O sistema deve retornar para a página de Funcionários
Fonte: Os autores, 2019.

Tabela 95 - Caso de teste 21


Contador: 021
Criticidade: Alta
Localização: Login> Menu > Funcionários
Objeto de Teste: Operações referentes a busca de funcionários
Caso de Teste: Testar se o sistema está realizando a consulta de funcionários
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa consultar um
funcionário.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Funcionários
3. Digitar o nome do funcionário na barra de busca
4. Clicar no botão “Buscar”
Resultado Esperado: 1. O sistema deve buscar no banco de dados a relação de funcionários
2. O sistema deve exibir uma lista com os funcionários que possuem o
nome igual ao inserido na barra de busca
Fonte: Os autores, 2019.
105

Tabela 96 - Caso de teste 22


Contador: 022
Criticidade: Alta
Localização: Login> Menu > Funcionários
Objeto de Teste: Operações referentes ao controle de funcionários
Caso de Teste: Testar se o sistema está excluindo um funcionário
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa excluir um
funcionário.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Funcionários
3. Clicar no botão “Excluir”
4. Clicar no botão “Sim”
Resultado Esperado: 1. O sistema deve remover o funcionário do banco de dados
2. O sistema deve exibir uma mensagem dizendo que a exclusão foi
realizada com sucesso
3. O sistema deve retornar para a página de funcionários
Fonte: Os autores, 2019.

Tabela 97 - Caso de teste 23


Contador: 023
Criticidade: Alta
Localização: Login> Menu > Relatórios
Objeto de Teste: Operações referentes a emissão de relatórios
Caso de Teste: Testar se sistema está emitindo o relatório de atividade dos funcionários
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa emitir um
relatório das atividades realizadas pelos funcionários.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatórios
3. Localizar a opção de relatório de funcionário
4. Clicar no botão “Emitir relatório”
5. Clicar no botão “Confirmar”
Resultado Esperado: 1. O sistema deve buscar as informações das ações realizadas por cada
funcionário
2. O sistema deve gerar o relatório com todas as informações
Fonte: Os autores, 2019.

Tabela 98 - Caso de teste 24


Contador: 024
Criticidade: Alta
Localização: Login> Menu > Adicionar Venda
106

Objeto de Teste: Operações referentes ao controle Financeiro


Caso de Teste: Testar se o sistema permite realizar a geração de vendas
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa adicionar
venda.
Procedimento: 1. Logar no sistema
2. Após logar no sistema ir nas opções do menu em adicionar venda
3. Selecionar os produtos que o cliente está solicitando
4. Clicar no botão “confirmar venda’’
Resultado Esperado: 1. O sistema deve preencher os dados das vendas o mesmo deverá alterar
o status do pedido para “aguardando aprovação do cliente”
Fonte: Os autores, 2019.

Tabela 99 - Caso de teste 25


Contador: 025
Criticidade: Alta
Localização: Login> Menu > Vendas agora
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema permite realizar a aprovação de vendas
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa aprovar
vendas.
Procedimento: 1. Logar no sistema
2. Após logar no sistema ir nas opções do menu em pagar
3. Confirmar os produtos pedidos pelo cliente
4. Clicar no botão “fechar venda’’
Resultado Esperado: 1. O sistema deve validar os dados
2. O sistema deve aprovar a compra
Fonte: Os autores, 2019.

Tabela 100 - Caso de teste 26


Contador: 026
Criticidade: Alta
Localização: Login> Menu > Vendas agora
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema permite realizar a consulta de vendas
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa buscar
vendas.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas agora
3. Pesquisar a venda pelo código da mesma
107

Resultado Esperado: 1. O sistema deve localizar a venda assim o usuário poderá consultar todos
os detalhes da venda.
Fonte: Os autores, 2019.

Tabela 101 - Caso de teste 27


Contador: 027
Criticidade: Alta
Localização: Login> Menu > Vendas agora
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema permite realizar o controle financeiro
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa cancelar
vendas.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas agora
3. Pesquisar a venda pelo código da mesma
4. Selecionar a opção de cancelamento da venda
Resultado Esperado: 1. O sistema deve cancelar a venda e a mesma devera desaparecer do
sistema de vendas
Fonte: Os autores, 2019.

Tabela 102 - Caso de teste 28


Contador: 028
Criticidade: Alta
Localização: Login> Menu > Relatórios
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema permite realizar o relatório do ganho mensal
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa buscar
relatórios.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatório
3. Emitir o relatório de ganhos mensal
Resultado Esperado: 1. O sistema deve emitir relatório de ganhos mensal
Fonte: Os autores, 2019.

Tabela 103 - Caso de teste 29


Contador: 029
Criticidade: Médio
Localização: Login> Menu > Relatórios
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema está gerando o relatório de gastos mensal
108

Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa buscar
relatórios.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatório
3. Emitir o relatório de gastos mensal
Resultado Esperado: 1. O sistema deve emitir relatório de gastos mensal
Fonte: Os autores, 2019.

Tabela 104 - Caso de teste 30


Contador: 030
Criticidade: Alta
Localização: Login> Menu > Relatórios
Objeto de Teste: Operações referentes ao controle Financeiro
Caso de Teste: Testar se o sistema está gerando o relatório de lucros totais
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa buscar
relatórios.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Relatório
3. Emitir o relatório de lucros totais
Resultado Esperado: 1. O sistema deve emitir relatório de lucros totais
Fonte: Os autores, 2019.

Tabela 105 - Caso de teste 31


Contador: 031
Criticidade: Alta
Localização: Login> Menu > vendas agora
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite realizar a emissão de ordem de pagamento
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa emitir ordem
de pagamento.
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas agora
3. Selecionar o botão pagar
Resultado Esperado: 1. O sistema deve dar baixa no estoque do produto e as informações
guardadas.
Fonte: Os autores, 2019.

Tabela 106 - Caso de teste 32


Contador: 032
Criticidade: Média
109

Localização: Login> Menu > vendas agora


Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite realizar o cálculo do troco
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa calcular troco
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas agora
3. Selecionar o botão pagar da venda
4. informar o valor pago pelo cliente
Resultado Esperado: 1. O sistema deve automática informar o usuário e valor do troco com base
no “Valor pago – valor da venda”
Fonte: Os autores, 2019.

Tabela 107 - Caso de teste 33


Contador: 033
Criticidade: Média
Localização: Login> Menu > vendas agora
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite realizar a alteração na venda
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa a alteração
na venda
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas agora
3. Selecionar a venda
4. Alterar as informações contidas na venda
Resultado Esperado: 1. O sistema deve alterar a venda para o status de aguardando a liberação
Fonte: Os autores, 2019.

Tabela 108 - Caso de teste 34


Contador: 034
Criticidade: Alta
Localização: Login> Menu > vendas pagas
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite realizar o fechamento do caixa
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa realizar o
fechamento do caixa
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas pagas
3. Selecionar o botão fechamento do caixa
110

Resultado Esperado: 1. O sistema deve fechar as informações contidas até então e deverá ser
transferida para um banco de dados
Fonte: Os autores, 2019.

Tabela 109 - Caso de teste 35


Contador: 035
Criticidade: Alta
Localização: Login> Menu > relatórios
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite realizar a emissão do relatório do caixa
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa realizar a
emissão do relatório do caixa
Procedimento: 1. Logar no sistema
2. Após logar no sistema ir nas opções do menu em relatórios
3. Selecionar o botão de relatórios do caixa
Resultado Esperado: 1. O sistema deve importar em PDF um relatório final do caixa
Fonte: Os autores, 2019.

Tabela 110 - Caso de teste 36


Contador: 036
Criticidade: Alta
Localização: Login> Menu > vendas pagas
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite que se estorne uma venda
Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa estornar
venda
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas pagas
3. Selecionar o botão estornar compra
4. Selecionar o botão “confirmar”
Resultado Esperado: 1. O sistema deve realizar o estorno da venda
Fonte: Os autores, 2019.

Tabela 111 - Caso de teste 37


Contador: 037
Criticidade: Alta
Localização: Login> Menu > vendas pagas
Objeto de Teste: Operações referentes ao controle de caixa
Caso de Teste: Testar se o sistema permite consultar as vendas já realizadas
111

Pré-Condição: 1. O usuário deverá estar logado no sistema para que possa consultar
venda
Procedimento: 1. Logar no sistema
2. Entrar na tela: Login > Menu > Vendas pagas
3. Digitar número da venda para procurar
Resultado Esperado: 1. O sistema deve mostrar os detalhes da venda desejada
Fonte: Os autores, 2019.

6.4. RESGISTRO DE TESTES

Tabela 112 - Registro de teste 01


Contador: 001
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após o e-mail e
senha ser inserido incorretamente
Resultado: Mensagem de erro não está sendo emitida na tela
Fonte: Os autores, 2019.

Tabela 113 - Registro de teste 02


Contador: 002
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após somente o
e-mail ser inserido incorretamente
Resultado: Mensagem de erro não está sendo emitida na tela
Fonte: Os autores, 2019.

Tabela 114 - Registro de teste 03


Contador: 003
Caso de Teste: Testar se a mensagem de erro está sendo emitida na tela após somente a
senha ser inserido incorretamente
Resultado: Mensagem de erro não está sendo emitida na tela
Fonte: Os autores, 2019.

Tabela 115 - Registro de teste 04


Contador: 004
Caso de Teste: Testar se o botão “Cadastrar” está redirecionando o usuário para a tela de
cadastro
Resultado: O sistema redireciona corretamente o usuário para a tela de cadastro ao
clicar no botão
Fonte: Os autores, 2019.
112

Tabela 116 - Registro de teste 05


Contador: 005
Caso de Teste: Testar se o botão “Login” está redirecionando o usuário para a tela inicial
do aplicativo
Resultado: O sistema redireciona corretamente o usuário para a tela principal ao clicar
no botão
Fonte: Os autores, 2019.

Tabela 117 - Registro de teste 06


Contador: 006
Caso de Teste: Testar se ao apertar o botão “Cadastrar” caso exista campo não
preenchido exiba mensagem na tela que existe campo vazio
Resultado: O sistema não permite o cadastro do funcionário caso exista um campo
vazio no formulário de cadastro
Fonte: Os autores, 2019.

Tabela 118 - Registro de teste 07


Contador: 007
Caso de Teste: Testar se o dado no campo “CPF” é válido caso não seja emitir mensagem
para o usuário
Resultado: Mensagem de erro não está sendo emitida na tela
Fonte: Os autores, 2019.

Tabela 119 - Registro de teste 08


Contador: 008
Caso de Teste: Testar se é exibido mensagem ao usuário caso o campo “Confirmar o e-
mail” esteja diferente do campo “e-mail”
Resultado: Mensagem de erro não está sendo emitida na tela
Fonte: Os autores, 2019.

Tabela 120 - Registro de teste 09


Contador: 009
Caso de Teste: Testar se o campo “Salário” ao ser preenchido exiba duas casas decimais
Resultado: O sistema limita corretamente duas casas decimais no preenchimento do
salário
Fonte: Os autores, 2019.

Tabela 121 - Registro de teste 10


Contador: 010
Caso de Teste: Testar se o campo “Nome” aceita receber apenas dados do tipo caractere
113

Resultado: O sistema permite corretamente o preenchimento do campo nome apenas


com dados do tipo caractere
Fonte: Os autores, 2019.

Tabela 122 - Registro de teste 11


Contador: 011
Caso de Teste: Testar se ao apertar o botão “Cadastro” caso exista campo não preenchido
exiba mensagem na tela que existe campo vazio
Resultado: O sistema não permite o cadastro do produto caso exista um campo vazio
no formulário de cadastro
Fonte: Os autores, 2019.

Tabela 123 - Registro de teste 12


Contador: 012
Caso de Teste: Testar se o sistema está realizando a busca por produtos
Resultado: O sistema não permite a busca de produtos
Fonte: Os autores, 2019.

Tabela 124 - Registro de teste 13


Contador: 013
Caso de Teste: Testar se o sistema permite editar os produtos em estoque
Resultado: O sistema permite a edição de produtos em estoque corretamente
Fonte: Os autores, 2019.

Tabela 125 - Registro de teste 14


Contador: 014
Caso de Teste: Testar se o sistema está excluindo os itens corretamente
Resultado: O sistema permite a exclusão de produtos em estoque corretamente
Fonte: Os autores, 2019.

Tabela 126 - Registro de teste 15


Contador: 015
Caso de Teste: Testar se o campo “Código do produto” aceita apenas dados do tipo
numérico
Resultado: O sistema limita corretamente os dados do tipo numérico
Fonte: Os autores, 2019.

Tabela 127 - Registro de teste 16


Contador: 016
Caso de Teste: Testar se o cadastro de produtos está sendo realizado corretamente
Resultado: O sistema permite a inclusão de produtos no estoque corretamente
Fonte: Os autores, 2019.
114

Tabela 128 - Registro de teste 17


Contador: 017
Caso de Teste: Testar se o sistema está gerando o relatório com os itens em que estão
acabando
Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 129 - Registro de teste 18


Contador: 018
Caso de Teste: Testar se o botão de impressão do relatório está funcionando
Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 130 - Registro de teste 19


Contador: 019
Caso de Teste: Testar se o sistema está realizando o cadastro de funcionários
Resultado: O sistema permite a inclusão de funcionários no estoque corretamente
Fonte: Os autores, 2019.

Tabela 131 - Registro de teste 20


Contador: 020
Caso de Teste: Testar se o sistema permite realizar a edição do funcionário
Resultado: O sistema permite a edição do cadastro do funcionário corretamente
Fonte: Os autores, 2019.

Tabela 132 - Registro de teste 21


Contador: 021
Caso de Teste: Testar se o sistema está realizando a consulta de funcionários
Resultado: O sistema não permite a consulta de funcionários
Fonte: Os autores, 2019.

Tabela 133 - Registro de teste 22


Contador: 022
Caso de Teste: Testar se o sistema está excluindo um funcionário
Resultado: O sistema permite a exclusão do cadastro dos funcionários corretamente
Fonte: Os autores, 2019.

Tabela 134 - Registro de teste 23


Contador: 023
Caso de Teste: Testar se sistema está emitindo o relatório de atividade dos funcionários
115

Resultado: O sistema não permite a emissão de relatório


Fonte: Os autores, 2019.

Tabela 135 - Registro de teste 24


Contador: 024
Caso de Teste: Testar se o sistema permite realizar a geração de vendas
Resultado: O sistema permite realizar a geração de vendas corretamente
Fonte: Os autores, 2019.

Tabela 136 - Registro de teste 25


Contador: 025
Caso de Teste: Testar se o sistema permite realizar a aprovação de vendas
Resultado: O sistema permite realizar a aprovação de vendas corretamente
Fonte: Os autores, 2019.

Tabela 137 - Registro de teste 26


Contador: 026
Caso de Teste: Testar se o sistema permite realizar a consulta de vendas
Resultado: O sistema permite consultar as vendas corretamente
Fonte: Os autores, 2019.

Tabela 138 - Registro de teste 27


Contador: 027
Caso de Teste: Testar se o sistema permite realizar o controle financeiro
Resultado: O sistema permite o controle financeiro corretamente
Fonte: Os autores, 2019.

Tabela 139 - Registro de teste 28


Contador: 028
Caso de Teste: Testar se o sistema permite realizar o relatório do ganho mensal
Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 140 - Registro de teste 29


Contador: 029
Caso de Teste: Testar se o sistema está gerando o relatório de gastos mensal
Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 141 - Registro de teste 30


Contador: 030
116

Caso de Teste: Testar se o sistema está gerando o relatório de lucros totais


Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 142 - Registro de teste 31


Contador: 031
Caso de Teste: Testar se o sistema permite realizar a emissão de ordem de pagamento
Resultado: O sistema permite realizar a emissão de ordem de pagamento
corretamente
Fonte: Os autores, 2019.

Tabela 143 - Registro de teste 32


Contador: 032
Caso de Teste: Testar se o sistema permite realizar o cálculo do troco
Resultado: O sistema permite realizar o cálculo do troco corretamente
Fonte: Os autores, 2019.
Tabela 144 - Registro de teste 33
Contador: 033
Caso de Teste: Testar se o sistema permite realizar a alteração na venda
Resultado: O sistema permite realizar a alteração na venda corretamente
Fonte: Os autores, 2019.

Tabela 145 - Registro de teste 34


Contador: 034
Caso de Teste: Testar se o sistema permite realizar o fechamento do caixa
Resultado: O sistema permite realizar o fechamento do caixa corretamente
Fonte: Os autores, 2019.

Tabela 146 - Registro de teste 35


Contador: 035
Caso de Teste: Testar se o sistema permite realizar a emissão do relatório do caixa
Resultado: O sistema não permite a emissão de relatório
Fonte: Os autores, 2019.

Tabela 147 - Registro de teste 36


Contador: 036
Caso de Teste: Testar se o sistema permite que se estorne uma venda
Resultado: O sistema permite estornar as vendas corretamente
Fonte: Os autores, 2019.
117

Tabela 148 - Registro de teste 37


Contador: 037
Caso de Teste: Testar se o sistema permite consultar as vendas já realizadas
Resultado: O sistema permite consultar as vendas corretamente
Fonte: Os autores, 2019.

7. CONCLUSÃO E CONSIDEREAÇÕES FINAIS

O aplicativo IWork foi desenvolvido para atender os pequenos


empreendedores, o estudo apresentado possibilitou uma análise de como um
software desenvolvido para dispositivos móveis poderá ajudar na melhora da
organização de lojas de pequeno porte.
Este trabalho aborda as informações e etapas utilizadas para o entendimento
do problema e processo de desenvolvimento da solução tecnológica. Para o
desenvolvimento do sistema foram utilizadas metodologias, técnicas e ferramentas
previamente escritas, estudadas soluções já existentes no mercado assim como as
premissas da engenharia de software, os conhecimentos adquiridos ao longo do curso
de Análise e Desenvolvimento de Sistemas e realizada pesquisas com colaboradores
e pessoas pertencentes à área, afim de descobrir quais os problemas enfrentados
pelos mesmos.
118

8. BIBLIOGRAFIA

ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISSO/IEC 9126-1:2003

– Engenharia de software – Qualidade de produto Parte 1: Modelo de Qualidade. Rio

de Janeiro, 2003.

BEZERRA, Eduardo. Princípios de análise e projeto de sistemas com uml 2.ed. Rio

de Janeiro: Elsevier, 2006.

CASTRO, Eduardo J.R. de et al. – Engenharia de requisitos: um enfoque prático na

construção de software orientado ao negócio. Florianópolis: Bookess, 2014.

ELMASRI, Ramirez; NAVATHE, Shamkant B. Sistemas de Banco de Dados. 6 ed. São

Paulo: Pearson, 2011.

GUIOTTI BOMFIM, Márcia Regina; ANDRADE, José Romildo. Guia de contagem de

pontos de função do Ministério do Planejamento Orçamento e Gestão. Versão 1.0,

2015. Disponível em: http://www.planejamento.gov.br/servicos/central-de-

conteudos/GuiadeContagemdePontosdeFuncao.pdf. Acesso em: 17 nov. 2019.

GUEDES, Gilleanes T. A. UML 2: uma abordagem prática 2.ed. São Paulo: Novatec

2009.

Manual de Práticas de Contagem de Pontos de Função, Versão 4.3.1, International

Function Point Users Group (IFPUG), janeiro/2010;


119

PMI, Project Management Institute, Um guia do conhecimento em gerenciamento de

projetos (PMBOK), 4. ed. Pennsylvania: Project Management Institute, USA, 2008.

PRESSMAN, R. S. MAXIM, Bruce R. Engenharia de Software: uma abordagem

profissional. 8 ed. Porto Alegre: AMGH, 2016.

SOMMERVILLE, Ian, Engenharia de Software, 9ed, Pearson, 2011.

VAZQUEZ, Carlos E. e outros. Análise de pontos de função: medição, estimativas e

gerenciamento de projetos de software. 13. ed. São Paulo: Érica, 2013.

Você também pode gostar