Buscar

TrabalhoCorrigido_1696521

Prévia do material em texto

PROJETO: SISTEMA “COLLEKTOR" 
Sistemas de Informação 
Mikhael de Almeida Barreto 
201201377161 
Vila Velha – 2021 
Universidade Estácio de Sá 
 
 
 
Folha de Aprovação 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Resumo 
 
 Este projeto contempla a concepção e desenvolvimento conceituais do sistema 
denominado ‘Collektor’. Debatendo desde as razões para sua concepção, mercado e 
usuários, até diagramas e modelos de dados para o seu desenvolvimento. 
 A base do sistema é o fato de que ele dá liberdade ao usuário para criar campos 
variados em itens de uma lista, contida em uma coleção (ou conjunto). Tal liberdade 
permite que o sistema se adeque ás necessidades de uma grande variedade de 
usuários e possua a complexidade desejada. E como esse detalhe fica a cargo do 
usuário, alivia-se os custos e complexidade em sua criação. 
 Apesar de ter sido inspirado em experiências próprias e de familiares, acredito 
que tal sistema seria extremamente útil a uma enorme parcela de usuários, já que todos 
possuímos coleções de algum tipo, de itens físicos ou não. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SUMÁRIO 
 
1. O Problema ............................................................................................................................. 6 
1.1. Tema do trabalho............................................................................................................. 6 
1.2 Contextualização ............................................................................................................ 6 
1.3 A situação-problema ...................................................................................................... 6 
1.4 Breve descrição da solução .......................................................................................... 6 
2. Contextualização do Problema ........................................................................................ 7 
2.1 Premissas e Restrições do projeto ................................................................................. 7 
2.2 Caracterização da empresa ......................................................................................... 8 
2.2.1 Histórico da empresa .................................................................................................... 8 
2.2.2 Atividades da empresa ................................................................................................. 8 
2.2.3 Mercado consumidor...................................................................................................... 9 
2.2.4 Concorrência .................................................................................................................. 9 
2.2.5 Organograma ................................................................................................................ 10 
2.3. Proposta de trabalho ................................................................................................... 11 
2.3.1. Método do trabalho ...................................................................................................... 11 
2.3.2. Previsão e alocação de recursos (humanos e materiais)...................................... 11 
2.3.3. Cronograma de Trabalho (diagrama de Gantt) ....................................................... 12 
2.3.4. Previsão orçamentária................................................................................................. 13 
2.4. O Sistema Atual............................................................................................................ 14 
2.4.1. Funcionamento do sistema atual ............................................................................... 14 
2.4.2. Problemas do sistema atual ....................................................................................... 14 
3. A Solução ..................................................................................................................... 15 
3.1. O Sistema Proposto......................................................................................................... 15 
3.1.1. Justificativas para o novo sistema ............................................................................. 15 
3.1.2. Situação desejada: objetivos gerais e específicos ................................................. 15 
3.1.3. Soluções alternativas................................................................................................... 16 
3.2. Solução escolhida ....................................................................................................... 17 
3.2.1. Escopo da solução ....................................................................................................... 17 
3.2.2. Lista de Requisitos do sistema ................................................................................. 18 
3.2.3. Diagrama de Casos de Uso ....................................................................................... 20 
 
 
3.2.4. Especificações textuais dos casos de uso ............................................................... 21 
3.2.5. Modelo conceitual de classes .................................................................................... 32 
3.2.6. Modelo conceitual de dados ....................................................................................... 33 
3.3. Solução Tecnológica. ................................................................................................. 34 
3.3.1. Diagrama de comunicação ......................................................................................... 34 
3.3.2. Projeto de Interfaces.................................................................................................... 35 
3.3.3. Diagrama de Estados .................................................................................................. 42 
3.3.4. Diagrama de Atividades ............................................................................................. 43 
3.3.5. Diagrama de Componentes....................................................................................... 44 
3.3.6. Modelo de classes de Projeto ................................................................................... 45 
3.3.7. Modelo Físico de dados ............................................................................................. 46 
3.3.7.1. Projeto de Tabelas e Arquivos .................................................................................. 46 
3.3.7.2. Scripts de geração do banco e suas tabelas ........................................................... 47 
3.3.8. Ambiente tecnológico do sistema .............................................................................. 48 
3.3.8.1. Ambiente Físico (diagrama de implantação)............................................................ 48 
3.3.8.2. Justificativa da escolha da linguagem de programação ........................................ 48 
3.3.8.3. Justificativa da escolha do SGBD (Sistema Gerenciador de Banco de Dados) 49 
4. Conclusões................................................................................................................... 50 
4.1. Reflexões e comparação entre objetivos iniciais x alcançados ............................... 50 
4.2. Vantagens e desvantagens do sistema ....................................................................... 50 
4.3. Trabalhos futuros ............................................................................................................. 50 
5. Referências Bibliográficas ............................................................................................. 51 
 
 
 
 
 
 
6 
 
1. O PROBLEMA 
1.1. TEMA DO TRABALHO 
 
Aplicativo para auxiliar colecionadores, denominado “Collektor”. 
 
1.2CONTEXTUALIZAÇÃO 
 
 Sistema informatizado para facilitar a organização de coleções variadas, 
destinado a colecionadores experientes e/ou casuais, que desejam apenas 
acompanhar suas coleções. 
1.3 A SITUAÇÃO-PROBLEMA 
 
 Colecionadores em especial ou qualquer pessoa que tenha dificuldade em 
gerenciar coleções, desde hobbies (selos, moedas) até itens em geral, como músicas, 
filmes, livros, etc. 
1.4 BREVE DESCRIÇÃO DA SOLUÇÃO 
 
 Aplicativo que visa auxiliar colecionadores a organizar suas coleções, 
acompanhar e manter relatórios de atividades. Uma das características deste aplicativo 
é a capacidade de criação de variados campos e tipos de informação, organizados 
numa tabela como um banco de dados, podendo ser exibidos de formas mais 
amigáveis ao usuário, além de poderem ser compartilhados e visualizados por outros 
usuários. 
 
 
 
7 
 
2. CONTEXTUALIZAÇÃO DO PROBLEMA 
2.1 PREMISSAS E RESTRIÇÕES DO PROJETO 
 
As Premissas são as seguintes: 
• Código: O desenvolvedor será capaz de desenvolver todas (ou a maior parte) 
das funções desejadas; 
• Interface: Usuários conseguirão utilizar o aplicativo sem grandes dificuldades. 
• Adoção por Terceiros: Sites que oferecem conteúdos variados poderão incluir 
um botão para adicionar um item desejado à sua lista; 
• Aprovação: Por sites e lojas de aplicativos; 
• Facilidade: O aplicativo não será extenso nem terá opções avançadas ocultas 
do usuário. 
• Monetização: Será grátis, mas veiculando progagandas. 
 
As restrições são as seguintes: 
• Equipe: Equipe de no máximo 5 pessoas; 
• Orçamento: Verba limitada; 
• Servidor: Uso de um único servidor para armazenamento; 
• Complexidade: Risco de exibir informações em excesso que poderiam confundir 
os usuários; 
• Manutenções: Risco de gerar atualizações constantes. 
 
 
 
 
 
 
 
 
8 
 
2.2 CARACTERIZAÇÃO DA EMPRESA 
2.2.1 HISTÓRICO DA EMPRESA 
 
• Beneficiários: Colecionadores ou usuários que apreciem organizar suas posses 
reais ou digitais. Enfim, qualquer pessoa que precise organizar e acompanhar 
um grupo de objetos reais ou não. 
• Quantidade de Beneficiários: Dada a prevalência e facilidade de acesso a 
mídia nos tempos atuais, praticamente qualquer indivíduo. 
• Ramo da atividade: Organização e Classificação de itens. 
2.2.2 ATIVIDADES DA EMPRESA 
 
• O sistema permitirá ao usuário formar, organizar e classificar listas de objetos, 
sejam estes reais ou virtuais; 
• O aplicativo permitirá ao usuário liberdade de criação, modificação e ordenação 
dos itens e suas características (ex.: ano, tipo, avaliação, preço, etc); 
• A equipe realizará atualizações e melhorias periódicas ao sistema, visando a 
qualidade e facilidade de uso aos usuários. 
 
 
 
 
 
 
 
 
 
 
 
 
9 
 
2.2.3 MERCADO CONSUMIDOR 
 
Usuários, entre adolescentes, adultos e terceira idade, que necessitem organizar 
coleções ou listas de mídias variadas, para facilidade de uso e classificação em âmbito 
pessoal ou profissional. 
 
2.2.4 CONCORRÊNCIA 
 
Existem variados programas e aplicativos nesta área. Porém os similares não 
oferecem visualizações simplicadas (lista, cards), apenas tabelas (como em Microsoft 
Excel). E a maioria têm grande parte de suas funções atrás de paywalls (requerem 
pagamentos) e são focados em coleções e atividades de grupos empresariais. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10 
 
2.2.5 ORGANOGRAMA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11 
 
2.3. PROPOSTA DE TRABALHO 
2.3.1. MÉTODO DO TRABALHO 
 
Requisitos serão levantados através de entrevistas com potenciais usuários. 
Suas necessidades serão adaptados em um diagrama de fluxo simples. Também serão 
utilizados questionários e a observação dos usuários durante a implementação, para 
incrementar os resultados das entrevistas. 
Serão utilizados diagramas UML em metodologia iterativa RUP. 
Os diagramas a ser utilizados serão: Diagramas de atividade, caso de uso, 
estado, sequência e entidade-relacionamento, ou outros caso necessário. 
2.3.2. PREVISÃO E ALOCAÇÃO DE RECURSOS (HUMANOS E MATERIAIS) 
 
• Recursos Humanos: Programador com conhecimento em C# ou Java (para 
permitir a portabilidade do aplicativo); Administrador de SGBD para controlar a 
sincronia de dados entre dispositivos na “nuvem”; Especialista em design de 
Interfaces, para que o aplicativo não se torne excessivamente complexo ao 
usuário final; Funcionário administrativo com conhecimento de sistemas 
administrativos, financeiros e de RH. 
• Recursos Materiais: Workstation para a programação do aplicativo (Windows 
ou Linux); Servidor para armazenar dados temporários e cache de usuários, 
além de distribuir updates; assinatura do Microsoft Office 365 Standard para 
edição e trabalhos gerais, materiais de uso em escritórios, impressoras, 
telefones. 
 
 
 
 
 
 
12 
 
2.3.3. CRONOGRAMA DE TRABALHO (DIAGRAMA DE GANTT) 
 
 
 
 
Seq Nome Dias Início Término Antec Recursos Alocados
1 1. O problema 12 22/02/2021 08/03/2021 RM: Workstation; RM: Material Escritório; 
RM: Microsoft Office
2 1.1. Tema do trabalho 3 22/02/2021 25/02/2021
3 1.2. Contextualização 3 26/02/2021 01/02/2021 2
4 1.3. A situação-problema 3 02/03/2021 05/03/2021 3
5 1.4. Breve descrição da solução 3 05/02/2021 08/03/2021 4
6 2. Contextualização do problema 09/03/2021 18/03/2021 RM: Workstation; RM: Material Escritório; 
RM: Microsoft Office
7 2.1. Premissas e restrições do projeto 1 09/03/2021 10/03/2021 5
8 2.2. Caracterização da empresa 3 10/03/2021 13/03/2021
9 2.2.1. Histórico da empresa 1 13/03/2021 14/03/2021 7
10 2.2.2. Atividades da empresa 1 14/03/2021 15/03/2021 9
11 2.2.3. Mercado consumidor 1 15/03/2021 16/03/2021 10
12 2.2.4. Concorrência 1 16/03/2021 17/03/2021 11
13 2.2.5. Organograma 1 17/03/2021 18/03/2021 12
14 2.3. Proposta de trabalho 6 18/03/2021 25/03/2021 RH: Programador; RM: Workstation; RM: 
Material Escritório; RM: Microsoft Office
15 2.3.1. Método do trabalho 1 18/03/2021 19/03/2021 13
16 2.3.2. Previsão e alocação de recursos (humanos e 
materiais)
1 19/03/2021 20/03/2021 15
17 2.3.3. Cronograma de trabalho (diagrama de Gantt) 3 20/03/2021 23/03/2021 16
18 2.3.4. Previsão orçamentária 2 23/03/2021 25/03/2021 17
19 2.4. O Sistema Atual 4 25/03/2021 29/03/2021 RH: Programador; RM: Workstation; RM: 
Material Escritório; RM: Microsoft Office
20 2.4.1. Funcionamento do sistema atual 2 25/03/2021 27/03/2021 18
21 2.4.2. Problemas do sistema atual 2 27/03/2021 29/03/2021 20
22 3. A Solução 13 29/03/2021 11/04/2021 RH: Programador; RH: Designer de 
Interface; RM: Workstation; RM: Material 
Escritório; RM: Microsoft Office
23 3.1. O Sistema proposto 3 29/03/2021 01/04/2021
24 3.1.1. Justificativas para o novo sistema 3 01/04/2021 04/04/2021 21
25 3.1.2. Situação desejada: objetivos gerais e 
específicos
4 04/04/2021 08/04/2021 24
26 3.1.3. Soluções alternativas 3 08/04/2021 11/04/2021 25
27 3.2. Solução escolhida 36 11/04/2021 17/05/2021 RH: Programador; RH: Designer de 
Interface; RM: Workstation; RM: Material 
Escritório; RM: Microsoft Office
28 3.2.1 Escopo da solução 3 11/04/2021 14/04/2021 26
29 3.2.2. Lista de Requisitos do sistema 5 14/04/2021 19/04/2021 28
30 3.2.3. Diagrama de Casos de Uso 5 19/04/2021 24/04/2021 29
31 3.2.4. Especificações textuais dos casos de uso 7 24/04/2021 01/05/2021 30
32 3.2.5. Modelo conceitual de classes 8 01/05/2021 09/05/2021 31
33 3.2.6. Modelo conceitual de dados 8 09/05/2021 17/05/2021 32
34 4. Referências Bibliográficas 3 17/05/2021 20/05/2021 33 RM: Workstation; RM: Material Escritório; 
RM: Microsoft Office
13 
 
2.3.4. PREVISÃO ORÇAMENTÁRIA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Recurso Tipo Recurso Valor/Mês Fev/21 Mar/21 Abr/21 Mai/21 Total
Programador Humano 2,461.00R$ -R$ 2,461.00R$ 2,461.00R$ 2,461.00R$ 7,383.00R$Administrador SGBD Humano 7,090.00R$ -R$ -R$ -R$ 7,090.00R$ 7,090.00R$ 
Designer de Interface Humano 3,585.00R$ -R$ -R$ 3,585.00R$ 3,585.00R$ 7,170.00R$ 
Apoio Administrativo/Gestão Humano 1,505.00R$ 1,505.00R$ 1,505.00R$ 1,505.00R$ 1,505.00R$ 6,020.00R$ 
Workstation Material -R$ 14,000.00R$ -R$ -R$ -R$ 14,000.00R$ 
Material Escritório/Impressoras Material -R$ 2,000.00R$ 1,000.00R$ 1,000.00R$ 1,000.00R$ 5,000.00R$ 
Servidor Material -R$ -R$ -R$ -R$ 10,000.00R$ 10,000.00R$ 
Microsoft Office Material 71.40R$ 71.40R$ 71.40R$ 71.40R$ 71.40R$ 285.60R$ 
Total 17,576.40R$ 5,037.40R$ 8,622.40R$ 25,712.40R$ 56,948.60R$ 
14 
 
2.4. O SISTEMA ATUAL 
2.4.1. FUNCIONAMENTO DO SISTEMA ATUAL 
 
O funcionamento dos sistemas atuais disponíveis no mercado servem como 
criadores e customizadores de banco de dados de variadas áreas, permitindo o(s) 
usuário(s) criar campos e filtros, podendo exibir planilhas em forma de listas mais 
simples aos usuários, mostrando informações detalhadas quando necessário. 
2.4.2. PROBLEMAS DO SISTEMA ATUAL 
 
Os problemas atuais derivam principalmente dos modelos financeiros adotados. 
Tais aplicativo são indicados a usuários e grupos empresariais, levando a uma 
variedade de funções limitadas ou mesmo inexistentes para não-assinantes. 
 Além disso, alguns aplicativos não são atualizados com frequência e possuem 
vários limites no tratamento dos dados, filtros e pouca da GUI (tamanho de itens da 
lista, ordem em que são exibidos detalhes, padrões, fontes, etc). Uma área em especial 
que precisava de mais atenção são os scripts, que permitem aos aplicativos auto-
preencher seções baseadas na categoria desejada, pois os mesmos costumam 
funcionar em apenas um site, limitando as informações e escolhas do usuário. 
 
 
 
 
 
 
 
 
 
 
 
15 
 
3. A SOLUÇÃO 
3.1. O SISTEMA PROPOSTO 
3.1.1. JUSTIFICATIVAS PARA O NOVO SISTEMA 
 
• É vantajoso para qualquer usuário, já que todos lidamos com listas e coleções de 
items; 
• Não é excessivamente complexo, nem caro de desenvolver e manter; 
• Não requer grande espaço, físico ou virtual, nem manutenção diária de 
servidores numerosos; 
• Atende aos usuários insatisfeitos com as funções e limites de aplicativos dessa 
categoria; 
• Atende a um mercado que necessita e não possui ou não sabe que necessita 
deste aplicativo; 
3.1.2. SITUAÇÃO DESEJADA: OBJETIVOS GERAIS E ESPECÍFICOS 
 
• OBJETIVO GERAL: 
o Desenvolver sistema informatizado para facilitar a organização de 
coleções, acessível a colecionadores diversos. 
• OBJETIVOS ESPECÍFICOS: 
o Simplificar a interface para facilitar seu uso; 
o Criar campos em cada conjunto; 
o Criar itens a serem organizados; 
o Organizar/classificar/ordenar itens em cada conjunto; 
o Utilizar um modelo financeiro acessível à todo tipo de usuário. 
 
 
 
 
16 
 
3.1.3. SOLUÇÕES ALTERNATIVAS 
 
• Caso a interface torne-se excessivamente complexa, reduziria as funções 
exibidas sem compremeter a acessibilidade do usuário; 
• Caso a criação de campos tenha implementação complexa ou inviável, seriam 
criados campos pré-definidos; 
• Caso o modelo financeiro escolhido torne-se inviável ou tenha baixo retorno, se 
faria análise de outros modelos a fim de não comprometer seu baixo custo ao 
usuário. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17 
 
3.2. SOLUÇÃO ESCOLHIDA 
3.2.1. ESCOPO DA SOLUÇÃO 
 
O sistema deverá…: 
• …criar conjuntos de itens; 
• …criar e editar campos variados; 
• …adicionar e editar itens em um conjunto; 
• …filtrar, ordenar e agrupar itens por fatores determinados pelo usuário; 
• …sincronizar o(s) conjunto(s) via cloud ao servidor do sistema ou outro, 
escolhido pelo usuário; 
• ...possibilitar seu uso sem pagamento de taxas. 
 
O sistema não deverá…: 
• …gerar scripts de preenchimento automático, pois isso caberá a outros usuários; 
• …prever as ações do usuário, como saber o que este pretende criar ou editar; 
• …gerar gráficos e medidas complexas acerca de conjuntos ou itens (ex. Gráfico 
com a quantidade total de itens num conjunto ao longo de meses ou anos). 
 
 
 
 
 
 
 
 
 
 
 
 
18 
 
3.2.2. LISTA DE REQUISITOS DO SISTEMA 
 
• Requisitos Funcionais 
 
Código: RF001 ( x ) Essencial ( ) Importante ( ) Desejável 
Descrição: Criar e eliminar entradas (itens) em um conjunto. 
 
Código: RF002 ( x ) Essencial ( ) Importante ( ) Desejável 
Descrição: Organizar, filtrar, agrupar ou ordenar as entradas do conjunto 
por fatores especificados pelo usuário. 
 
Código: RF003 ( x ) Essencial ( ) Importante ( ) Desejável 
Descrição: Permitir ao usuário criar campos específicos em cada conjunto. 
 
Código: RF004 ( ) Essencial ( x ) Importante ( ) Desejável 
Requisito: Proporcionar acesso gratuito. 
 
Código: RF005 ( ) Essencial ( x ) Importante ( ) Desejável 
Descrição: Sincronizar o(s) conjunto(s) via cloud ao servidor do sistema ou 
algum outro, escolhido pelo usuário. 
 
Código: RF006 ( ) Essencial ( x ) Importante ( ) Desejável 
Descrição: Exibir versões simplificadas de cada entrada, como por 
exemplo, em cards. 
 
Código: RF007 ( ) Essencial ( ) Importante ( x ) Desejável 
Descrição: Permitir ao usuário customizar cada aspecto visual do aplicativo 
(cores, fontes, tamanho das entradas na lista, quantidade e 
ordem dos atributos, tipos de dados dos atributos e a exibição 
dos mesmos em cada entrada). 
19 
 
Código: RF008 ( ) Essencial ( ) Importante ( x ) Desejável 
Descrição: Gerar informações básicas de cada conjunto, como número de 
itens, data de criação, campos contendo determinada palavra, 
etc. 
• Requisitos Não-Funcionais 
Código: RNF001 Portabilidade. 
Requisito: Permite seu uso em Computadores ou Celulares. 
 
Código: RNF002 Interface para usuários com deficiência. 
Requisito: Interface simples de ser utilizada por usuários que apresentem 
deficiência visual. 
 
Código: RNF003 Sincronia no Background. 
Requisito: Sincronia cloud executada “no fundo”, de forma automática. 
 
Código: RNF004 Exportação. 
Requisito: Possibilidade de exportar conjuntos e itens a vários formatos 
(texto, planilha, HTML, PDF). 
 
Código: RNF005 Assistência virtual. 
Requisito: Passo-a-passo para simplificar e facilitar a criação e 
organização de conjuntos. 
 
Código: RNF006 Built-in Scripts. 
Requisito: Inclusão de scripts básicos que automaticamente preenchem 
certos atributos a partir de websites específicos. 
 
Código: RNF007 Criação/Exportação de Scripts. 
Requisito: Possibilidade de aceitar scripts escritos por usuários para 
funções não incluídas por padrão. 
20 
 
3.2.3. DIAGRAMA DE CASOS DE USO 
 
 
21 
 
3.2.4. ESPECIFICAÇÕES TEXTUAIS DOS CASOS DE USO 
 
Nome do caso de uso: Criar Conjunto; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
• Pós-condições 
o Conjunto criado; 
o Dados do conjunto salvo via cloud backup. 
• Cenário principal 
1. Usuário seleciona o botão "Criar novo conjunto". 
2. Sistema pede um nome do conjunto ao usuário. – <<include Criar 
Campo>> 
3. Sistema informa usuário que o conjunto foi criado. 
• Cenários alternativos 
2.a. Conjunto com o nome deixado vazio. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Conjunto possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso.22 
 
Nome do caso de uso: Editar Conjunto; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado. 
o Usuário possui aberto o conjunto que deseja editar. 
• Pós-condições 
o Modificações realizadas salvas. 
o Modificações ao conjunto salvas via cloud backup. 
• Cenário principal 
1. Usuário seleciona o botão "Editar conjunto". 
2. Sistema oferece opções de edição ao usuário. – <<include Criar 
Campo>> – <<include Editar Campo>> – <<include Apagar Conjunto>> 
3. Sistema pergunta ao usuário se deseja salvar as alterações. 
4. Sistema informa usuário que as alterações foram salvas com sucesso. 
• Cenários alternativos 
2.a. Conjunto teve o nome apagado e deixado vazio. 
1. Sistema avisa o erro e rejeita a alteração. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Conjunto possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
23 
 
Nome do caso de uso: Criar Item; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado. 
o Usuário possui aberto o conjunto que deseja adicionar itens. 
• Pós-condições 
o Item criado; 
o Dados do conjunto ou item salvo via cloud backup. 
• Cenário principal 
1. Usuário seleciona o botão "Criar item". 
2. Sistema pede que o usuário dê um nome ao item. 
3. Sistema pergunta ao usuário se deseja salvar o novo item. 
4. Sistema informa usuário que o item foi criado e salvo. 
• Cenários alternativos 
2.a. Item com nome deixado vazio. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Item possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
 
24 
 
Nome do caso de uso: Editar Item; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Item já criado. 
o Usuário possui aberto o Item que deseja editar. 
• Pós-condições 
o Modificações realizadas salvas. 
o Modificações ao conjunto salvas via cloud backup. 
• Cenário principal 
1. Usuário seleciona o botão "Editar conjunto". 
2. Sistema oferece opções de edição ao usuário. – <<include Apagar 
Item>> – <<include Editar dados>> 
3. Sistema pergunta ao usuário se deseja salvar as alterações. 
4. Sistema informa usuário que as alterações foram salvas com sucesso. 
• Cenários alternativos 
2.a. Item teve o nome apagado e deixado vazio. 
1. Sistema avisa o erro e rejeita a alteração. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Item possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
25 
 
Nome do caso de uso: Ordenar Itens; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado e aberto. 
o Conjunto possui mais de 1 item. 
• Pós-condições 
o Visualização ordenada da maneira desejada. 
• Cenário principal 
1. Usuário seleciona o botão "Ordenar...". 
2. Sistema oferece opções de ordenação ao usuário. 
3. Sistema exibe o conjunto organizado da maneira selecionada. 
• Cenários alternativos 
1.a. Lista não possui itens 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 1 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Opções de ordem: Alfabética, Alfanumérica, Data de Criação, Campo; 
Ascendentes ou Descendentes. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
 
 
 
 
26 
 
Nome do caso de uso: Filtrar Itens; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado e aberto. 
o Conjunto possui mais de 1 item. 
• Pós-condições 
o Visualização filtrada pelo(s) fator(es) desejado(os). 
• Cenário principal 
1. Usuário seleciona o botão "Filtrar...". 
2. Sistema oferece opções de filtragem ao usuário. 
3. Sistema exibe o conjunto filtrando apenas os itens correspondentes. 
• Cenários alternativos 
1.a. Lista não possui itens 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 1 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Opções de filtro: Data de Criação Específica; Campo "(não) é igual a...". 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
 
 
 
 
 
27 
 
Nome do caso de uso: Agrupar Itens; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado e aberto. 
o Conjunto possui mais de 1 item. 
• Pós-condições 
o Itens agrupados pelo(s) fator(es) desejado(os). 
• Cenário principal 
1. Usuário seleciona o botão "Agrupar...". 
2. Sistema oferece opções de agrupamento ao usuário. 
3. Sistema exibe o conjunto agrupando itens com o fator desejado em 
comum. 
• Cenários alternativos 
1.a. Lista não possui itens 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 1 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Opções de grupo: Data de Criação Específica; Campo (não) "é igual a...". 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
 
 
 
 
28 
 
Nome do caso de uso: Visualização; 
• Escopo: Sistema de coleções – Collektor; 
• Atores: Usuário. 
• Precondições 
o Usuário está logado. 
o Conjunto já criado e aberto. 
o Conjunto possui mais de 1 item. 
• Pós-condições 
o Itens exibidos no conjunto da maneira desejada. 
• Cenário principal 
1. Usuário seleciona o botão "Visualizações". 
2. Sistema oferece opções de editar a visualização atual do conjunto ao 
usuário. 
3. Sistema exibe o conjunto de itens com a visualização desejada. 
• Cenários alternativos 
1.a. Lista não possui itens 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 1 do cenário principal. 
• Requisitos especiais 
o Botão e campos de texto de tamanhos legíveis. 
o Opções de visualização: tamanho, cores e faces de fontes, tamanho de 
imagens, ordem e posicionamento dos campos, exibir ou ocultar certos 
campos. 
o Fornecer feedback ao usuário em operações de sucesso ou fracasso. 
 
 
 
 
 
 
 
29 
 
Nome do caso de uso: Criar Campo; 
• Cenário principal 
1. Usuário seleciona o botão "Criar Campo". 
2. Sistema pede um nome e tipo de informação do campo (string, int, 
boolean, etc). 
3. Sistema informa que o campo foi criado com êxito. 
• Cenários alternativos 
2.a. Campo com o nome deixado vazio. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Campo possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
 
 
Nome do caso de uso: Editar Campo; 
• Cenário principal 
1. Usuário seleciona o botão "Editar Campo" num campo já criado. 
2. Sistema oferece opções para alterar o nome ou tipo de dado do campo. 
3. Sistema informa que o campo foi modificado com êxito. 
• Cenários alternativos 
2.a. Campo com o nome deixado vazio. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistemaretorna ao passo 2 do cenário principal. 
2.b. Campo possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
 
 
 
 
30 
 
Nome do caso de uso: Apagar Campo; 
• Cenário principal 
1. Usuário seleciona o botão "Editar Campo" num campo já criado. 
2. Usuário seleciona a opção "Apagar Campo". 
3. Sistema informa que o campo desejado foi apagado. 
 
Nome do caso de uso: Apagar Conjunto; 
• Cenário principal 
1. Usuário seleciona o botão "Editar Conjunto" num conjunto já criado. 
2. Usuário seleciona a opção "Apagar Conjunto". 
3. Sistema informa que o conjunto desejado foi apagado. 
 
Nome do caso de uso: Apagar Item; 
• Cenário principal 
1. Usuário seleciona o botão "Editar Item" num item já criado. 
2. Usuário seleciona a opção "Apagar Item". 
3. Sistema informa que o item desejado foi apagado. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31 
 
Nome do caso de uso: Editar dados; 
• Cenário principal 
1. Usuário seleciona o botão "Editar item...". 
2. Usuário altera o(s) dado(s) contido(s) no(s) campo(s). 
3. Sistema informa que o(s) dado(s) foi(foram) alterado(s) com êxito. 
• Cenários alternativos 
2.a. Campo com o nome deixado vazio. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.b. Campo possui nome duplicado ou já utilizado. 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
2.c. Dado de entrada não corresponde ao campo (ex. string em int). 
1. Sistema avisa o erro e rejeita a entrada. 
2. Sistema retorna ao passo 2 do cenário principal. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32 
 
3.2.5. MODELO CONCEITUAL DE CLASSES 
 
 
 
33 
 
3.2.6. MODELO CONCEITUAL DE DADOS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34 
 
3.3. SOLUÇÃO TECNOLÓGICA. 
3.3.1. DIAGRAMA DE COMUNICAÇÃO 
 
35 
 
3.3.2. PROJETO DE INTERFACES 
 
1. Login 
 
 
 
 
 
 
 
 
 
 
36 
 
2. Lista de Conjuntos 
 
 
 
 
 
 
 
37 
 
3. Lista de Itens 
 
 
 
 
 
38 
 
4. Criar – Conjunto 
 
 
 
 
 
 
 
 
 
 
39 
 
5. Criar – Campo 
 
 
 
 
 
 
 
 
 
40 
 
6. Criar – Item 
 
 
 
 
 
 
 
 
41 
 
7. Filtrar Lista 
 
 
 
 
42 
 
3.3.3. DIAGRAMA DE ESTADOS 
 
43 
 
3.3.4. DIAGRAMA DE ATIVIDADES 
 
 
44 
 
3.3.5. DIAGRAMA DE COMPONENTES 
 
 
 
 
 
 
 
 
 
 
 
45 
 
3.3.6. MODELO DE CLASSES DE PROJETO 
 
 
 
46 
 
3.3.7. MODELO FÍSICO DE DADOS 
 
O SGBD escolhido será o MySQL, um dos softwares padrões no mercado. 
3.3.7.1. PROJETO DE TABELAS E ARQUIVOS 
 
O modelo utilizado será o Modelo Relacional, devido a sua boa capacidade de 
unificação de dados e capacidade de lidar com múltiplas queries. O modelo relacional, 
baseado no DER será: 
 
USUÁRIO (Login, Senha,Data Criação) 
CONJUNTO (id_library, Nome, Número Itens, Data Criação) 
CAMPO (id_field, Nome, Tipo Dado, Visibilidade) 
ITEM (id_item, Nome, Data Criação) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47 
 
3.3.7.2. SCRIPTS DE GERAÇÃO DO BANCO E SUAS TABELAS 
 
Foi utilizado o aplicativo virtual SqlDBM (https://sqldbm.com/) para a geração do script e 
o aplicativo Notepad++ (https://notepad-plus-plus.org/) para marcação de comandos 
adequados à linguagem SQL. 
 
https://sqldbm.com/
https://notepad-plus-plus.org/
48 
 
3.3.8. AMBIENTE TECNOLÓGICO DO SISTEMA 
3.3.8.1. AMBIENTE FÍSICO (DIAGRAMA DE IMPLANTAÇÃO) 
 
 
• Configuração Mínima do CPU do Usuário: Processador 1 gigahertz (GHz) ou 
superior, 2 gigabytes (GB) de Memória RAM, Disco rígido (HDD) com pelo 
menos 1 GB livre, monitor de resolução igual ou maior a 800x600. 
• Servidores (Acesso, Dados): Processador Intel Xeon 5600 ou AMD equivalente, 
16 GB de memória RAM, dois HDDs com 1 terabyte (TB) cada, conexão Gigabit 
Ethernet. 
3.3.8.2. JUSTIFICATIVA DA ESCOLHA DA LINGUAGEM DE PROGRAMAÇÃO 
 
A linguagem a ser utilizada será C++, devido a: 
• Código básico e de fácil escrita; 
• Utilizado na maioria dos softwares nativos a Desktop; 
• Feito com a filosofia de que deve funcionar ao lado, e não exclusivamente, de 
outras linguagens de programação; 
• Compactado em funções separadas, para melhor manutenção de aspectos 
específicos; 
• Por ser muito conhecido, possui uma vasta gama de guias e tutoriais disponíveis. 
• Possui muitos templates disponíveis; 
• É multiplataforma e possui compiladores para quase todo OS. 
49 
 
3.3.8.3. JUSTIFICATIVA DA ESCOLHA DO SGBD (SISTEMA GERENCIADOR DE BANCO DE 
DADOS) 
 
O SGBD escolhido será o MySQL, pelas razões a seguir: 
• facilidade de uso; 
• flexibilidade de dados por ser open-source; 
• estrutura de baixo custo ideal para pequenas empresas; 
• integração e popularidade, já que este está presente na maioria dos hosts 
disponíveis; 
• Boa capacidade de recuperação de dados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50 
 
4. CONCLUSÕES 
4.1. REFLEXÕES E COMPARAÇÃO ENTRE OBJETIVOS INICIAIS X ALCANÇADOS 
 
Acredito que os objetivos iniciais básicos foram atingidos. Afinal, este não é um 
sistema excessivamente complexo e já existem opções semelhantes no mercado atual. 
Porém, com a simplicidade e natureza compacta do sistema, este vai além dos atuais, 
oferecendo uma solução simplificada para usuários que não possuem grande 
conhecimento técnico. 
4.2. VANTAGENS E DESVANTAGENS DO SISTEMA 
 
Vantagens: 
• Simplicidade de modelagem e programação; 
• Baixo custo; 
• Não requer extensa funcionalidade online; 
• Pode receber atualizações e manutenções com facilidade. 
 
Desvantagens: 
• Por ser simples, não possui características e funções mais avançadas ou 
complexas; 
• Por ser apenas para Desktops, perde-se mercado para as crescentes áreas de 
web apps e mobile apps. 
4.3. TRABALHOS FUTUROS 
 
 Seriam quase todos novas funções agregadas ao sistema atual, como acesso 
mobile ou via website, ferramentas avançadas de edição e manipulação, dados gráficos 
gerais de conjuntos, possibilidade de compartilhar conjuntos com outros usuários (tanto 
para acesso como para edição), etc. 
 
51 
 
5. REFERÊNCIAS BIBLIOGRÁFICAS 
 
• Aplicativo Online para Modelagem de Banco de Dados SqlDBM 
(https://sqldbm.com/Home/ - Acesso em 27/09/21) 
• Blog: Os 12 Melhores Softwares e Sistemas de Banco de Dados de 2021 
(https://www.adamenfroy.com/database-software - Acesso em 23/09/21) 
• Configurações recomendadas do hardware de servidores, via manual de 
instalação do StorageTek Tape Analytics 
(https://docs.oracle.com/cd/E28385_01/en/E28377/html/STA102_Planning_Install
_PreInst.5.5.htm#1104539 - Acesso em 1/10/21) 
• Glassdoor (https://www.glassdoor.com.br/Salários/administrador-de-banco-de-
dados-salário-SRCH_KO0,31.htm - Acesso em 20/03/2021) 
• Google (https://www.google.com.br/) 
• Memento Database (https://mementodatabase.com/ ) 
• Microsoft Office 365: Assinaturas para Empresas 
(https://www.microsoft.com/pt-br/microsoft-365/business/compare-all-microsoft-
365-business-products-b - Acesso em 20/03/2021) 
• MySQL (https://www.mysql.com/ - Acesso em 25/09/21) 
• O que é ODBC/JDBC? 
(https://www.microfocus.com/documentation/xdbc/win20/BKXDXDINTRXD1.5.ht
ml - Acesso em 1/10/21) 
• Requerimentos de Sistema para Windows 10 
(https://support.microsoft.com/en-us/windows/windows-10-system-requirements-
6d4e9a79-66bf-7950-467c-795cf0386715 - Acesso em 1/10/21) 
• Sintaxe e Statements da linguagem SQL 
(https://dev.mysql.com/doc/refman/8.0/en/sql-statements.html - Acesso em 
27/09/21) 
• Softwares de Banco de Dados 101 
(https://www.quickbase.com/articles/database-software-basics - Acesso em 
23/09/2021) 
https://sqldbm.com/Home/
https://www.adamenfroy.com/database-software
https://docs.oracle.com/cd/E28385_01/en/E28377/html/STA102_Planning_Install_PreInst.5.5.htm#1104539https://docs.oracle.com/cd/E28385_01/en/E28377/html/STA102_Planning_Install_PreInst.5.5.htm#1104539
https://www.glassdoor.com.br/Sal%C3%A1rios/administrador-de-banco-de-dados-sal%C3%A1rio-SRCH_KO0,31.htm
https://www.glassdoor.com.br/Sal%C3%A1rios/administrador-de-banco-de-dados-sal%C3%A1rio-SRCH_KO0,31.htm
https://www.google.com.br/
https://mementodatabase.com/
https://www.microsoft.com/pt-br/microsoft-365/business/compare-all-microsoft-365-business-products-b
https://www.microsoft.com/pt-br/microsoft-365/business/compare-all-microsoft-365-business-products-b
https://www.mysql.com/
https://www.microfocus.com/documentation/xdbc/win20/BKXDXDINTRXD1.5.html
https://www.microfocus.com/documentation/xdbc/win20/BKXDXDINTRXD1.5.html
https://support.microsoft.com/en-us/windows/windows-10-system-requirements-6d4e9a79-66bf-7950-467c-795cf0386715
https://support.microsoft.com/en-us/windows/windows-10-system-requirements-6d4e9a79-66bf-7950-467c-795cf0386715
https://dev.mysql.com/doc/refman/8.0/en/sql-statements.html
https://www.quickbase.com/articles/database-software-basics
52 
 
• TechTudo: Servidores (https://www.techtudo.com.br/noticias/2020/06/e-hora-
de-comprar-o-1o-servidor-para-a-empresa-veja-perguntas-e-respostas.ghtml - 
Acesso em 20/03/2021) 
• Wikipedia: C++ (https://en.wikipedia.org/wiki/C%2B%2B - Acesso em 2/10/21) 
https://www.techtudo.com.br/noticias/2020/06/e-hora-de-comprar-o-1o-servidor-para-a-empresa-veja-perguntas-e-respostas.ghtml
https://www.techtudo.com.br/noticias/2020/06/e-hora-de-comprar-o-1o-servidor-para-a-empresa-veja-perguntas-e-respostas.ghtml
https://en.wikipedia.org/wiki/C%2B%2B

Continue navegando

Outros materiais