Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
INSTITUTO FEDERAL DO PARANÁ – IFPR
CAMPUS PINHAIS
LUCAS BRIAN DE OLIVEIRA NICHALS
APLICATIVO PARA AUXÍLIO NA ESCOLHA DE COMPUTADORES
POR PERFIL DE USUÁRIO
Pinhais/PR
2018
2
LUCAS BRIAN DE OLIVEIRA NICHALS
Aplicativo para auxílio na escolha de computadores por perfil de
usuário
Trabalho apresentado ao Instituto
Federal do Paraná – Campus Pinhais
como pré-requisito para obtenção parcial
de créditos na disciplina de Projeto de
Final de Curso.
Orientador: Prof. Me. Rodolfo M. Pereira
Pinhais/PR
2018
3
RESUMO
Comprar um computador adequado de acordo com as necessidades do
usuário é uma tarefa árdua, a qual geralmente requer conhecimento técnico sobre
hardware. Dado que usuários leigos podem não possuir este conhecimento
técnico de informática, a compra de um computador com um custo/benefício
adequado a suas necessidades se torna ainda mais difícil. Este trabalho apresenta
o protótipo de um aplicativo para auxílio na escolha de computadores por perfil de
usuário. O protótipo demonstra de maneira sucinta como o aplicativo irá funcionar
futuramente, contendo um questionário curto para que seja definido o perfil do
usuário e gozando de informações sobre conjuntos de hardware pré-
estabelecidos. No protótipo, a recomendação do computador é dada meio uma
estrutura de decisões, a qual demonstra, a partir do perfil do usuário, o possível
conjunto de hardware recomendado para seu perfil.
Palavras-chave: Compra de hardware, custo/benefício, escolha de computadores.
4
ABSTRACT
Buying a suitable computer according to the needs of the user is an arduous
task. Since users may not know appropriate technical knowledge of computer
science, a purchase of a computer with a good cost/benefit may be even more
difficult. This paper presents the prototype of an application to aid in the selection
of computers by user’s profiles. The prototype demonstrates how the application
will work in the future, containing a short questionnaire to specify the user profile
and enjoying information about pre-set hardware sets. In the prototype, the
computer recommendation is provided by a decision structure, which
demonstrates, using the user profile, the hardware set suitable for your needs.
Key-words: Hardware purchase, cost/benefit, chose a computer.
5
LISTA DE FIGURAS
Figura 1. Uso de Sistemas Operacionais em diferentes dispositivos móveis. ...... 11
Figura 2. Tela principal do site PapaHardware. .................................................... 14
Figura 3. Top 5 Melhores valores para 60 Frames por Segundo (FPS). .............. 15
Figura 4. Top 5 Melhores valores para 100 ou mais Frames por Segundo (FPS).
.............................................................................................................................. 16
Figura 5. Receber novidades de atualizações sobre novos hardwares. ............... 17
Figura 6. Alocar as análises mais recentes. ......................................................... 17
Figura 7. Classificação com as melhores configurações do site .......................... 18
Figura 8. Tela principal do Website Chipart. ......................................................... 20
Figura 9. Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução Full HD. ......................................................................................... 21
Figura 10. Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução 2.5K. ............................................................................................. 21
Figura 11.Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução 4K. ................................................................................................ 22
Figura 12. Diagrama de Casos de Uso do aplicativo proposto. ............................ 26
Figura 13. Diagrama de Classes da Aplicação. .................................................... 30
Figura 14. Pirâmide das famílias brasileiras em 2016. ......................................... 33
Figura 15. Árvore de Decisões para escolha do computador. .............................. 35
Figura 16. Tela inicial do protótipo. ....................................................................... 36
Figura 17. Tela para definição de um tempo médio de uso diário. ....................... 37
Figura 18. Tela de escolha da faixa de preço do usuário. .................................... 37
Figura 19. Tela de resultado do hardware. ........................................................... 38
6
LISTA DE TABELAS
Tabela 1. Possíveis configurações de PCs geradas pelo aplicativo. .................... 34
Tabela 2. Quadro comparativo de simplificação de hardware do aplicativo. ........ 39
7
SUMÁRIO
1. INTRODUÇÃO .......................................................................................................................... 8
1.1 Objetivos .......................................................................................................... 12
1.1.1 Objetivo Geral ............................................................................................................... 12
1.1.2 Objetivos Específicos ................................................................................................... 12
1.2 Justificativa ...................................................................................................... 12
2. METODOLOGIA ..................................................................................................................... 13
3. TRABALHOS RELACIONADOS ........................................................................................ 14
3.1 O Papa Hardware .................................................................................................. 14
3.2 Chipart: Vai jogar o que? ..................................................................................... 20
4. MODELAGEM DO APLICATIVO ........................................................................................ 23
4.1 Análise de Requisitos .......................................................................................... 24
4.1.1 Requisitos Funcionais .................................................................................................. 24
4.1.2 Requisitos Não-Funcionais ......................................................................................... 25
4.2 Diagrama de Casos de Uso ................................................................................. 25
4.2.1 Especificação dos Casos de Uso .............................................................................. 27
4.3 Diagrama de Classes ........................................................................................... 30
4.4 Estrutura de Decisão do Aplicativo .................................................................... 31
4.4.1 Tipos de Perfil de Usuário ........................................................................................... 31
4.4.2 Uso Diário ...................................................................................................................... 32
4.4.3 Faixas de Preço ............................................................................................................ 32
4.4.4 Árvore de Decisões do Aplicativo .............................................................................. 33
5. TELAS DO APLICATIVO ......................................................................................................... 36
5. CONSIDERAÇÕES FINAIS E TRABALHOS FUTUROS ............................................... 40
REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................................ 41
8
1. INTRODUÇÃO
O computador é uma máquina revolucionária, sendo até considerada a
invenção do século XX (Versignassi, 2018). Por ser um instrumento capaz de
armazenar uma grande quantidade de informações e possuir agilidade para
processamento de dados, é uma das principais ferramentas de trabalho em
qualquer setor da sociedade. Segundo dados da FGV, em 2014 o Brasil já possuía
136 milhões de computadores em uso (Maciel, 2018).
O ábaco, instrumento utilizado para cálculos matemáticos, criado pelos
chineses por volta de 550 a.C. e datado de 2700 a 2300 a.C., é considerado o
dispositivo precursor de toda a computação. Esse instrumento é utilizado ainda
hoje por educadores que trabalham com métodos orientais de ensino,
especificamente para a memorização de dados matemáticos.
Nesta época George Boole iniciou a criação do que se tornaria a base de
toda a computação: A Lógica de Boole. Esta lógica, constituído apenas de zeros e
uns, foi pensada porque a base decimal, utilizada comumente entre as pessoas,
geraria dez níveis diferentes de voltagem na arquitetura do computador, o que
tornaria seu controle praticamente impossível. Com os códigos binários, seria
possível a representação de dois níveis de voltagem (alto e baixo), o que seria o
suficiente para arquitetar todo o funcionamento dos computadores.
A computação começou a se estabelecer durante a segunda guerra
mundial. Nesta época os computadores foram encarregados de descriptografar
mensagens trocadas entre diferentes bases militares. Os computadores que
realizavam essas tarefas foram intitulados de MARK I (Cruickshank, 1961), e
haviam sido criados por Alan Turing, homem responsável por desenvolver
métodos de resolução de problemas corriqueiros por meio da computação. Apesar
de revolucionários, nesta época os computadores eram grandes máquinas, que
ocupavam espaços de até salas e andares de prédios. Por possuírem este porte e
utilizarem uma tecnologia de ponta, possuíam um preço inviável para cidadãos
“comuns”, sendo utilizados apenas em grandes empresas e universidades.
9
Com o passar do tempo a tecnologia foi se aprimorando, chegando no nível
que chamamos de computação moderna. Esta computação é definida pela
utilização de computadores digitais, os quais possuíam tamanho
consideravelmente reduzido. Contudo, no início do que foi denominado “era
digital”, os computadores ainda possuíam preços elevados e de difícil acesso para
a população como um todo, dado que a fabricação de seus componentes internos
utilizava, em geral, matéria-prima cara.
A partir deste momento, as pesquisas da área foram direcionadas para
produção de dispositivos mais baratos, feitos de materiais menos nobres, até que
na metade do século XX foram inventados os transistores. Estes componentes
são responsáveis pela amplificação do sinal elétrico, funcionando como um
controlador para interromper ou permitir o fluxo da corrente elétrica. Os
transístores surgiram a partir de pesquisas militares que buscavam reduzir o
aperfeiçoamento das válvulas, que erem relativamente grandes e queimavam com
frequência. O resultado foi que houve uma redução no tamanho e a melhoria da
eficiência energética dos computadores, tornando-os mais viáveis
economicamente. Os transistores funcionavam com três terminais. Um dos
terminais é responsável por receber a tensão elétrica e outro por enviar um sinal
amplificado como resposta desta recepção. O terminal restante, presente no meio
dos outros, é responsável por permitir que esta corrente elétrica circule dentre os
terminais. Com este avanço significativo, diversas empresas começaram a
direcionar seus esforços para projetar computadores mais acessíveis.
O primeiro resultado do avanço da computação foi o computador Altair
8800, que simplesmente foi um sucesso inigualável, atraindo a atenção de Bill
Gates, que posteriormente criou sua própria linguagem de programação
(Hardware, 2011). Em agosto de 1981 a IBM lançou o primeiro computador que de
fato foi considerado de uso pessoal para atividades variadas: O IBM PC. Este
computador deu início a uma era de computadores denominada de Personal
Computers (PCs), na qual qualquer pessoa poderia possuir um computador em
casa.
Com a evolução das pesquisas e o passar dos anos, as tecnologias
10
utilizadas nos componentes foram melhorando, chegando aos componentes de
hoje em dia. Os componentes computacionais atuais apresentam diversos níveis
de capacidade de: processamento de dados; processamento gráfico;
armazenamento; entre outros. Contudo, esta grande variedade de componentes
também acarretou em uma grande variedade de preços.
Dada a popularização do uso de computadores pessoais em qualquer tipo
de atividade, a grande diversidade de componentes computacionais e,
consequentemente, grande variedade dos preços, é comum que os usuários,
geralmente leigos, possuam dúvidas em relação à aquisição do computador mais
adequado para suas necessidades, ou seja, o computador que apresente melhor
custo/benefício. Os casos mais comuns são os de usuários que querem adquirir
um computador para entretenimento em mídias sociais, mas por serem leigos,
acabam comprando um equipamento que é muito mais robusto, acabando por
gastar uma quantia desnecessária de dinheiro para isso. Ou ainda casos em que
usuários desejam utilizar o computador para jogos, tornando necessário um poder
de processamento gráfico e lógico superior, além de mais memória e outros
componentes melhorados, como o uso de SSD (Solid State Drive) mas por não
terem um bom conhecimento sobre estes hardwares, acabam comprando algo
sem ter total ciência de sua capacidade, acarretando em um equipamento incapaz
de processar seus jogos, ou adquirindo um computador tão eficaz, que acaba não
o utilizando com seu total processamento.
Comprar um computador inadequado em relação a sua utilização pode
ocasionar problemas como: o usuário paga um valor elevado no computador,
adquirindo um grande poder de processamento/armazenamento, porém não o
utiliza por completo, desperdiçando dinheiro e recursos computacionais; o usuário
paga um valor baixo no computador, porém tem uma grande dificuldade para
realizar as tarefas que pretendia, causando um grande aborrecimento.
Apesar deste problema que usuários leigos costumam enfrentar, ou seja,
encontrar o melhor computador em relação aos custos/benefícios que este teria
para o usuário, não existe uma plataforma automática que possa auxiliá-los nesta
escolha.
11
Pensando nisso, este trabalho propõe um aplicativo de para auxílio na
escolha de computadores. O aplicativo tem o objetivo de mapear o perfil dos
usuários com base em um breve questionário que este responderá e gerar, com
base em um banco de dados, uma configuração do computador que seria
equilibrada e ideal para o seu uso, ou seja, uma configuração que traga o melhor
custo/benefício para o usuário. O aplicativo será desenvolvido para celulares
Android, pois de acordo com a pesquisa realizada pela Mobile Operating System
Market Share Worldwide, o sistema operacional da Google detém a maioria
absoluta dos usuários, conforme mostra a Figura 1.
Fonte: STATCOUNTER (2018).
Este aplicativo será programado na plataforma do Android Studio e contará
com os diversos dispositivos de hardware cadastrados em seu código, procurando
a partir do questionário previamente respondido pelo usuário, inferir a
configuração ideal de acordo com o seu perfil.
O restante deste trabalho está dividido da seguinte forma: a seção 2
apresenta alguns trabalhos relacionados a este. A seção 3 mostra o levantamento
Figura 1. Uso de Sistemas Operacionais em diferentes dispositivos móveis.
12
e a análise de requisitos funcionais e não funcionais utilizados para o
desenvolvimento do aplicativo proposto. A seção 4 apresenta como resultado as
telas referentes ao aplicativo desenvolvido. Por fim, na seção 5, são apresentadas
as conclusões deste trabalho.
1.1 Objetivos
1.1.1 Objetivo Geral
O objetivo geral deste trabalho é desenvolver um protótipo para mapear e
auxiliar usuários leigos na escolha de computadores visando um foco na relação
custo/benefício com seu perfil de utilização.
1.1.2 Objetivos Específicos
Podemos definir os objetivos específicos deste trabalho de conclusão de
curso como:
Mapear os tipos de usuários em termos de utilização de computadores;
Verificar a necessidade de utilização de diferentes recursos computacionais
com relação aos tipos de usuários;
Projetar o aplicativo em questão considerando: requisitos do sistema,
diagrama de classes e de casos de uso; e
Desenvolver um protótipo que, dado um perfil do usuário, descreva de
forma sucinta um computador adequado para o mesmo.
1.2 Justificativa
Tendo em vista que uma parcela considerável da população não possui
grau de conhecimentos em informática suficiente para descrever peças de
hardware de um computador, o aplicativo em questão se faz necessário para
auxiliar estes usuários leigos a adquirirem equipamentos relevantes para o seus
perfis de uso.
13
2. METODOLOGIA
Para o projeto do diagrama de classes e de caso de uso do aplicativo foi
utilizada a ferramenta Astah Community. Já as telas do aplicativo foram
prototipadas utilizando-se a plataforma de programação da Google: Android
Studio. Esta plataforma foi escolhida devido a sua proximidade com o sistema
operacional Android. A escolha da plataforma Android, por sua vez, se deu devido
ao fato de que a mesma é de âmbito livre, ou seja, não há necessidade de uma
licença para a sua utilização.
Com relação a lógica de seleção de peças no aplicativo, foi desenvolvido
um pequeno questionário contento três perguntas, cada uma com três opções de
respostas afim de mapear o tipo de usuário que está utilizando o aplicativo. Desta
forma, o aplicativo faz uma análise do computador ideal para aquele perfil de
usuário com base nas informações coletadas e com computadores que são pré-
definidos no protótipo.
14
3. TRABALHOS RELACIONADOS
Nesta seção estará disponível a seleção de trabalhos relacionados, assim
como a descrição de suas funções.
3.1 O Papa Hardware
A Figura 2 apresenta a tela principal do site Papa Hardware. Este site conta
com um sistema de comparações para conjuntos de hardwares pontuais, tais
como processadores (CPU’s) e placas de vídeo (GPU’s). Seu principal objetivo é
mostrar ao público o real desempenho das configurações em jogos, transpondo
seus resultados e calculando seu custo-benefício, e deixando a cargo do usuário
que o utiliza, decidir sua viabilidade. Para atender a todos os públicos, os testes
são realizados em diversos jogos, e com três diferentes resoluções de vídeo:
1920x1080, 2560x1440 e 3840x2160, chamadas usualmente como FULL HD,
2.5K, e 4K.
Todos os testes são realizados buscando analisar o custo benefício a uma
média geral de 60 FPS, porém o site também conta com comparações
Figura 2. Tela principal do site PapaHardware.
15
consideradas high-end, com melhores desempenhos, buscando a taxa de 100
FPS, todos os testes realizados nas três resoluções. As configurações recebem
uma nota de acordo com seu desempenho e custo-benefício, sendo ao final
classificadas, e as 5 melhores opções serão destacadas. O cálculo base para a
definição do custo-benefício é feito de acordo com o valor atual da configuração
desejada, que é dividido pela quantidade de frames entregue pela mesma. A
disposição é feita como demonstrado nas Figuras 3 e 4.
Figura 3. Top 5 Melhores valores para 60 Frames por Segundo (FPS).
16
Figura 4. Top 5 Melhores valores para 100 ou mais Frames por Segundo (FPS).
17
Além disso, o site conta com um sistema de notificação via e-mail das
novidades disponíveis no site, para eventuais lançamentos de novos harwares, ou
a atualização dos já analisados (Figura 5). Ele também conta com uma aba
específica para alocar as análises mais recentes (Figura 6). Por fim, encontramos
uma classificação com as melhores configurações do site (Figura 7).
Figura 5. Receber novidades de atualizações sobre novos hardwares.
Figura 6. Alocar as análises mais recentes.
18
Figura 7. Classificação com as melhores configurações do site
19
O website Papa Hardware® foi criado no Brasil em 2013 por André
Cardoso, que profere estas palavras com relação a idealização do site:
“Eu sempre tive a ideia de criar um banco de dados dos meus
testes feitos no youtube, que era fácil de acessar e gratuito para
todos, então a ideia de criar o site e compartilhá-lo com você
surgiu, meu site hoje é comparar CPUs e GPUs, analisando o
custo x benefício de cada configuração assim como possíveis
gargalos. O site está atualmente na terceira versão e foi mantido
e pago 100% por mim até o momento. A idéia do site é aumentar
cada vez mais o número de placas de vídeo e processadores
para que você não tenha dúvidas em qual kit de CPU e GPU
comprar. Se você quiser saber mais sobre a nossa história,
mande-nos um email para [email protected] Estamos
localizados em uma pequena cidade no Brasil, chamada
Estância Velha - RS.” (Cardoso, 2018)
20
3.2 Chipart: Vai jogar o que?
O site da Chipart, empresa de venda de computadores gamers, conta com
um sistema idealizado para pessoas que possuem pouco conhecimento na área
da informática, ou para as que se sentem inseguras ao definirem uma
configuração que atenda a suas necessidades pessoais.
No website da empresa Chipart, encontra-se uma aba destinada ao “Vai
jogar o que?”. Esse sistema conta com um algoritmo que dispõe de uma vasta
biblioteca de jogos, os quais foram selecionados entre os mais jogados
atualmente. Ao selecionar um ou mais jogos o sistema fornece automaticamente a
configuração indicada para sanar a necessidade do cliente em termos daquele
jogo, podendo o usuário escolher ainda a resolução na qual pretende jogar,
fazendo com que a configuração ideal seja alterada a cada resolução.
Enquanto a Figura 8 apresenta a tela principal do website, as figuras 9, 10 e
11 apresentam as configurações mínimas necessárias para que o jogo Battlefield
1 funcione corretamente considerando resoluções Full HD, 2.5k e 4k,
respectivamente, como uma maneira de exemplificação.
Figura 8. Tela principal do Website Chipart.
21
Figura 9. Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução Full HD.
Figura 10. Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução 2.5K.
22
Figura 11.Tela com resultado de pesquisa para o jogo Battlefield 1 considerando
uma resolução 4K.
23
4. MODELAGEM DO APLICATIVO
Nesta seção o aplicativo é descrito com base em princípios da análise de
requisitos, conforme proposto em Sommerville (2008), e diagramas de modelagem
da UML 2.0, como apresentado em Guedes (2018).
A primeira parte do desenvolvimento do aplicativo foi focado na análise de
requisitos, uma etapa crucial na construção de softwares. A descrição dos
requisitos é importante pois tende a gerar uma noção mais limpa e clara de como
o aplicativo deve funcionar, ou seja, quais funcionalidades serão necessárias para
que o problema seja sanado, definindo de maneira sistemática o que de fato o
cliente quer. Segundo Sommerville (2008), esta é uma das tarefas mais complexas
e que exigem mais cuidado por parte dos profissionais da área, pois uma análise
de requisitos errônea pode gerar problemas com um alto custo de correção em
uma fase mais adiante no desenvolvimento de software.
A segunda etapa foi a construção de dois diagramas: Diagrama de Classes
(Class Diagram) e Diagrama de Casos de Uso (Use Case Diagram). Estes
diagramas fazem parte da UML - Unified Modeling Language (Linguagem de
Modelagem Unificada), uma linguagem-padrão, utilizada igualmente em todo o
globo para a estruturação de projetos de software (Guedes, 2018). O Diagrama de
Classes é utilizado com o objetivo de construir uma representação estática da
estrutura de classes de um software orientado a objetos. Neste diagrama não são
especificadas explicitamente as ações ou dinâmicas de interação do usuário com
o sistema, mas sim como as classes serão compostas, em termos de
(características) e métodos, e qual é a relação entre estas classes. Por outro lado,
o Diagrama de Casos de Uso tem como função descrever como o usuário interage
com o sistema em relação as suas funcionalidades.
Por fim, para que seja compreendido como as estruturas de decisão do
aplicativo se comportarão com relação as escolhas do usuário, esta seção
apresenta também uma árvore de decisões contendo as possíveis escolhas do
usuário e qual seria o computador indicado pelo aplicativo em cada caso.
24
4.1 Análise de Requisitos
As informações a seguir são referentes ao documento de análise de
requisitos do aplicativo. Estes estão dispostos da seguinte forma: Requisitos
Funcionais (RF) e Requisitos Não-Funcionais (RNF).
Segundo Sommerville (2008), enquanto os Requisitos Funcionais se
referem a descrição das funções que clientes e usuários querem ou precisam que
o software ofereça, os Requisitos Não-Funcionais são relacionados as
propriedades do software, como por exemplo a sua manutenibilidade, usabilidade,
desempenho, custos, entre outros.
4.1.1 Requisitos Funcionais
RF1 O Sistema deverá apresentar telas contendo perguntas.
RF1.1 As perguntas apresentadas deverão ser objetivas, contendo apenas três
opções de resposta.
RF1.2 O sistema deverá guardar as respostas para mapear as características do
usuário que respondeu.
RF1.3 As respostas e o tipo de usuário deverão ser analisadas e gerar um
resultado (computador).
RF2 O usuário responderá um questionário dinâmico.
RF2.1 O sistema deverá apresentar perguntas diferentes, de acordo com os
diferentes tipos de perfis de usuários.
RF2.2 Cada nova pergunta deverá ser exposta com base na resposta da
pergunta anterior.
RF3 Verificação com as informações de hardware disponíveis no aplicativo.
RF3.1 O sistema não deverá salvar os dados no dispositivo do usuário.
25
RF3.2 Ao final da aplicação do questionário, o sistema deverá analisar os dados
fornecidos e inferir, com os conjuntos de hardware disponíveis, a melhor opção de
computador.
RF4 O sistema mostrará uma tela com o computador mais adequado em termos
de custo-benefício para o usuário.
RF5 O computador inferido será baseado de acordo com o conjunto de respostas
de como o computador será utilizado, além da sua faixa de preço.
4.1.2 Requisitos Não-Funcionais
RNF1 O sistema deverá ser implementado como um aplicativo apenas para
Sistema Operacional Android.
RNF2 O sistema deverá funcionar de forma offline, não utilizando servidores
remotos.
RNF3 O sistema deverá ter uma resposta rápida em relação a interação com o
usuário.
4.2 Diagrama de Casos de Uso
Segundo Guedes (2018), o Diagrama de Casos de Uso descreve as
funcionalidades propostas para o sistema que será projetado e como o usuário
interage com estas. Em outras palavras, o diagrama de Casos de Uso descreve
um cenário dinâmico com atividades e interações usuário-sistema, tendo como
ponto de vista o do próprio usuário.
Em termos técnicos, um caso de uso narra a interação entre o sistema e os
atores envolvidos, para atingir um ou mais objetivos. O usuário é identificado como
o Ator, que é responsável direta ou indiretamente pela interação com o sistema.
Este pode ser subdividido em Ator principal e secundário, que respectivamente
interagem diretamente com o sistema e interage com outros atores.
26
No caso do aplicativo proposto neste trabalho para auxílio na escolha de
computadores por perfil de usuário, existe apenas um único ator, sendo este o
principal, que interage diretamente com o sistema e define suas variações de
resultado final. A Figura 12 apresenta o esboço de um diagrama de casos de uso
para a aplicação proposta.
Figura 12. Diagrama de Casos de Uso do aplicativo proposto.
27
4.2.1 Especificação dos Casos de Uso
1. INTRODUÇÃO
Se propõe auxiliar usuários leigos em informática durante a escolha de seu
computador ideal de acordo com sua necessidade e renda.
2. ATORES
1. Usuário.
3. DESCRIÇÃO DOS CASOS DE USO
Este documento tem por objetivo tornar claras a interações entre usuário-
sistema, seus fluxos básicos e alternativos, as pré e pós condições para que os
casos de uso ocorram.
Caso 1 – Definir seu tipo de uso
NOME DO CASO DE USO: Definir seu tipo de uso
DESCRIÇÃO: Apresentará uma tela que contém três tipos de perfil de usuário
para que o mesmo possa escolher dentre as opções, o que melhor se
identifica.
ATORES: Usuário.
PRÉ-CONDIÇÕES: Nenhuma.
PÓS-CONDIÇÕES: Definido o tipo de perfil de usuário
FLUXO BÁSICO: 1. Aplicativo apresenta uma tela com opções de escolha de
perfil de usuário. 2. Usuário seleciona o perfil aproximado. 3. Usuário avança
para a próxima tela. 4. Fim do caso de uso.
FLUXO ALTERNATIVO: Caso de uso: 2 - 1. Usuário seleciona por equívoco
uma opção e deseja retornar. 2. Fim do caso de uso.
28
Caso 2 – Definir a quantidade de horas
NOME DO CASO DE USO: Definir a quantidade de horas.
DESCRIÇÃO: Aplicativo apresenta uma tela contento três opções que contém
diferentes quantidades de horas de utilização diárias serão exigidas do
hardware.
ATORES: Usuário.
PRÉ-CONDIÇÕES: Definir seu tipo de uso.
PÓS-CONDIÇÕES: Quantidade de horas definidas.
FLUXO BÁSICO: 1 Aplicativo apresenta uma tela com três opções de escolha
de horas de utilização. 2. Usuário seleciona a quantidade aproximada de horas
que pretende utilizar o computador por dia. 3. Usuário avança para a próxima
tela. 4. Fim do caso de uso.
FLUXO ALTERNATIVO: Caso de uso: 2 - 1. Usuário seleciona opção que
mais se aproxima a quantidade prevista porém acredita que possa haver uma
opção melhor e deseja retornar. 2. Usuário retorna a tela anterior para
selecionar novamente. 3. Fim do caso de uso.
Caso 3 – Definir a faixa de preço desejada
NOME DO CASO DE USO: Definir a faixa de preço desejada
DESCRIÇÃO: Aplicativo apresenta uma tela contento três opções de faixas de
preço que contemplam a maioria da população, para que o usuário possa
escolher a que melhor se encaixa em sua realidade.
ATORES: Usuário
PRÉ-CONDIÇÕES: Definir seu tipo de uso e definir a quantidade de horas.
PÓS-CONDIÇÕES: Apontado o limite máximo de valor que usuário está
disposto a pagar pelo computador.
FLUXO BÁSICO: 1. Aplicativo apresenta uma tela com três opções de escolha
de valores máximos a se pagar pelo computador. 2. Usuário seleciona a
quantia limite que pretende investir no computador. 3. Usuário avança para a
29
próxima tela. 4. Fim do caso de uso.
FLUXO ALTERNATIVO: Caso de uso: 2 - 1. Usuário seleciona opção que
mais se aproxima a sua condição financeira, porém decide retornar para rever
as opções disponíveis. 2. Usuário retorna a tela anterior para selecionar
novamente. 3. Fim do caso de uso.
Caso 4 – Consultar resultado de computador ideal
NOME DO CASO DE USO: Consultar resultado de computador ideal
DESCRIÇÃO: Aplicativo apresenta uma tela contento o resultado da análise
feita, recomendando o computador que melhor se adequou aquele perfil de
usuário para que o usuário possa escolher a que melhor se encaixa em sua
realidade.
ATORES: Usuário
PRÉ-CONDIÇÕES: Definir seu tipo de uso, definir a quantidade de horas e
definir a faixa de preço desejada.
PÓS-CONDIÇÕES: Computador ideal recomendado.
FLUXO BÁSICO: 1. Aplicativo apresenta uma tela com o computador
recomendado. 2. Fim do caso de uso.
Caso 5 – Reiniciar a consulta
NOME DO CASO DE USO: Reiniciar a consulta
DESCRIÇÃO: Aplicativo apresenta ao final da tela de recomendação do
computador um botão “INICIO” para que o usuário possa retornar a primeira
pergunta, podendo realizar uma nova consulta de computador ideal.
ATORES: Usuário
PRÉ-CONDIÇÕES: Consultar resultado de computador ideal
PÓS-CONDIÇÕES: Consulta reiniciada.
FLUXO BÁSICO: 1. Aplicativo apresenta botão para retornar ao início do
aplicativo 2. Fim do caso de uso.
30
4.3 Diagrama de Classes
O Diagrama de Classes é mais um dos elementos da linguagem UML 2.0.
Sua principal função é apresentar as principais classes necessárias para que o
sistema seja construído. Além disso, o diagrama conta com os atributos, métodos
e relações entre as classes previamente estabelecidas.
A Figura 13 apresenta o Diagrama de Classes para o aplicativo proposto,
bem como seus métodos e relações entre as classes. O aplicativo conta com um
total de 15 classes, definidas para abranger completamente todas as
funcionalidades do aplicativo.
Figura 13. Diagrama de Classes da Aplicação.
31
4.4 Estrutura de Decisão do Aplicativo
Cada possibilidade de escolha presente no aplicativo foi idealizada para
atender a maior quantidade de requisitos que o usuário impõe ao uso de seu
futuro equipamento. De acordo com cada resposta, o aplicativo altera seu
resultado final, informando um computador que seja equivalente às opções
escolhidas.
O aplicativo considera três possíveis escolhas para: Tipos de uso do
computador; média de horas de utilização do computador; e faixa de preço
disponível para gasto.
As escolhas possíveis foram definidas para atender a um público variado,
de acordo com o uso do computador. O aplicativo verifica a necessidade ou não
de um hardware melhor, necessário para algum fim específico, por exemplo: Um
computador com seu tipo de uso definido como gamer informa para ao aplicativo
que este computador necessitará obrigatoriamente de uma GPU (Placa de vídeo),
ou ainda um computador profissional, que terá sua demanda não voltada a
processamento gráfico, mas processamento lógico, que exigirá um processador
melhor. Além disso, uma maior quantidade de horas de utilização deste
computador fará ser preciso uma maior quantidade de memória RAM. Por fim, há
uma faixa de preço que será utilizada para que o aplicativo possa adequar todos
os elementos anteriormente citados, à da faixa de preço escolhida para se gastar
em um computador.
4.4.1 Tipos de Perfil de Usuário
Por conta da grande variedade de hardware em seus diversos segmentos,
há uma enorme dificuldade para que um usuário, dado como leigo em quesitos
técnicos em informática, escolha dentre estas infinitas opções um conjunto de
hardware que seja ideal, tanto para seu uso, quanto para seu poderio econômico,
que entregue o desempenho necessário para suas atividades, mas também seja
considerado um bom custo-benefício. Cada custo-benefício, porém, é diferente
para cada pessoa, pois cada uma utiliza seu computador para diferentes fins. Em
32
consequência disso, o aplicativo propõe três principais perfis de usuários: Gamer,
Profissional e Doméstico. Respectivamente, cada um destes perfis abrange um
determinado tipo de uso para o computador, alterando entre cada uso, o hardware
que será recomendado.
4.4.2 Uso Diário
Muitas pessoas pensam que o tempo de uso diário de um aparelho
eletrônico não influencia em seu desempenho, porém esse pensamento está
incorreto. Ao utilizá-lo por um período excessivo, o computador ficará com dados
acumulados em cache, e dependendo da configuração que está sendo utilizado,
esse fator pode acabar causando lentidão em algumas funcionalidades
encontradas em seu sistema operacional, ou até mesmo em softwares
profissionais 3D e em jogos, onde muitos arquivos novos trafegam, e se houverem
muitos arquivos em cache, acarretará em um congestionamento de dados. Esta
tela tem como objetivo definir a quantidade de horas diárias que o usuário fará uso
de seu computador, para que haja a garantia de uma configuração adequada para
a quantidade de horas desejadas.
4.4.3 Faixas de Preço
Com a atual situação econômica brasileira, a população teve seu poder de
compra muito limitado. Isso se deve a vários fatores, dentre eles, a altíssima taxa
de desemprego, que está atualmente em 13,3%. (Do UOL, em São Paulo). Além
disso, a parcela populacional que possui uma renda mensal fixa, com sua carteira
de trabalho assinada e detentora dos direitos trabalhistas, é consideravelmente
pequena, com cerca de apenas 34 milhões de trabalhadores no primeiro trimestre
de 2017. (IBGE-UOL). Buscando um valor justo e compatível com esta situação,
foram definidos os seguintes valores base para um bom computador: R$ 3.000,00,
R$ 2.000,00, e R$ 1.000,00. Esses valores foram analisados e definidos de acordo
com a renda média da população/família brasileira, onde mais de 56% das
famílias brasileiras possuem a renda mensal de até R$ 2.166,00, e 27% recebem
33
de R$ 2.166,00 até R$ 5.223,00. Esses valores totalizam mais de 83% da renda
das famílias brasileiras.
Figura 14. Pirâmide das famílias brasileiras em 2016.
Utilizando estes dados, esta tela foi idealizada para ser compatível com o
reduzido poder de compra dos brasileiros, oferecendo uma gama de valores
considerados os mais comuns dentre os pesquisados. De acordo com cada
seleção de valores, haverá uma variável de resultados de recomendação de
computador ideal para a escolha feita.
4.4.4 Árvore de Decisões do Aplicativo
A árvore de decisões tem como objetivo apresentar um mapa de possíveis
resultados para as diferentes opções. Ela permite comparar e diferenciar cada
opção de escolha uma das outras. Este tipo de diagramação tem como principal
vantagem a facilidade de compreensão. A Figura 15 apresenta a árvore de
decisões do aplicativo, mostrando como cada tipo de uso, cada quantidade de
horas de utilização do computador, e cada faixa de preço disponibilizada pelo
34
questionário influenciam no resultado final de recomendação de computador para
aquela sequência de escolhas. A Tabela 1 mostra as configurações de
computadores possíveis que o aplicativo leva em conta para escolha, as quais
estão contidas na árvore de decisão da Figura 15.
Tabela 1. Possíveis configurações de PCs geradas pelo aplicativo.
Identificação CPU
(Intel) GPU
(Nvidia) Placa-mãe
(ASUS) Memória
RAM
PC1 i5 1060 1151 8 Gb
PC2 i3 1060 1151 8 Gb
PC3 i3 1050 1151 8 Gb
PC4 i5 1050 1151 16 Gb
PC5 i5 1050 TI 1151 8 Gb
PC6 i3 1030 1151 4 Gb
PC7 i5 1060 1151 8 Gb
PC8 i3 1060 1151 8 Gb
PC9 Pentium G4560 GT 1030 1151 4 Gb
PC10 i5 1050 1151 16 Gb
PC11 i5 1050 1151 8 Gb
PC12 i3 GT 1030 1151 8 Gb
PC13 i5 1050 1151 16 Gb
PC14 i5 GT 1030 1151 8 Gb
PC15 i3 - 1151 6 Gb
PC16 i5 1050 1151 16 Gb
PC17 i3 1030 1151 8 Gb
PC18 i3 - 1151 8 Gb
PC19 Pentium G4560 GT 1030 1151 8 Gb
PC20 Pentium G4560 9800 GT 1151 6 Gb
PC21 Pentium G4560 - 1151 4 Gb
PC22 Pentium G4560 GT 1030 1151 8 Gb
PC23 Pentium G4560 9800 GT 1151 6 Gb
PC24 Pentium G4560 - 1151 4 Gb
PC25 Pentium G4560 GT 1030 1151 8 Gb
PC26 Pentium G4560 9800 GT 1151 6 Gb
PC27 Pentium G4560 - 1151 4 Gb
35
Figura 15. Árvore de Decisões para escolha do computador.
36
5. TELAS DO APLICATIVO
Nesta seção são apresentadas as telas referentes a um protótipo do
aplicativo que foi desenvolvido. É importante observar que, por se tratar de um
protótipo, o design das telas foi simplificado, mostrando apenas as informações
imprescindíveis para o funcionamento do protótipo do aplicativo.
Figura 16. Tela inicial do protótipo.
A Figura 14 apresenta a tela inicial do aplicativo. Nesta tela, estão dispostas
três opções de escolha, as quais foram idealizadas para que a pessoa que está
utilizando o aplicativo possa definir qual será o foco de uso do computador que ela
busca, a fim de garantir que a opção marcada, entregue uma recomendação de
computador condizente com seu uso. Cada opção contém caminhos dinâmicos,
ou seja, a cada resposta diferente, haverá também uma tela, com diferentes
recomendações de configuração ideal.
37
Figura 17. Tela para definição de um tempo médio de uso diário.
Figura 18. Tela de escolha da faixa de preço do usuário.
38
A Figura 17 apresenta a tela de resultados gerados a partir das escolhas do
usuário para o computador em questão. Cada resultado possuirá algum dado
diferente, os quais serão definidos de acordo com cada resposta.
Os dados, em termos de descrição de hardware, apresentados nesta tela
são simplificados, já que o aplicativo está sendo desenvolvido principalmente para
usuários leigos na área de informática/hardware. Desta forma, dados como
frequência do processador (Ghz - Gigahertz), da memória RAM (Mhz -
Megahertz), ou ainda ficha técnica de uma placa de vídeo (a qual descreveria sua
arquitetura) não são mostrados ao usuário.
A tela de resultados apresenta apenas dados como: Modelo de
processador, placa de vídeo, a placa mãe e seu socket e a quantidade de
memória RAM recomendada. Ao final de cada pesquisa, estará disponível no final
da tela um botão dedicado para o usuário retornar à primeira tela, para caso
deseje, realize uma nova consulta.
A Tabela 2 apresenta um exemplo de uma descrição de hardware completa
Figura 19. Tela de resultado do hardware.
39
e como ela seria simplificada pelo aplicativo ao mostrar estes dados para o
usuário na tela final.
Tabela 2. Quadro comparativo de simplificação de hardware do aplicativo.
Descrição Completa do Componente Descrição
Resumida
Placa de vídeo: RTX 2080 – Ray Tracing
2.944 núcleos CUDA;
Frequência de 1.5 GHz (1.7 GHz em boost);
184 TMUs (unidades para texturas);
64 ROPs (unidades para renderização);
8 GB de memória GDDR6;
Interface de memória de 256 bits;
Largura de banda de 448 GB/s; e
TDP de 215 W.
Placa de
vídeo:
RTX 2080
Processador: INTEL I9 XTREME EDITION 7900X
i9-7900X;
Litografia 14nm;
Nº de threads 20;
Velocidade do barramento o 8 GT/s DMI3;
Cache 13.75 MB L3; e
Frequência da Tecnologia Intel Turbo Boost Max 4.50 GHz.
Processador:
Intel core I9
Memória RAM: HYPERX FURY DDR4
Capacidades Kits de 8GB,16GB, 32GB e 64GB;
Velocidades de 2.133MHz, 2.400MHz, 2.666MHz;
Latência CAS CL14-CL15;
Baixo consumo de energia a 1,2V;
Otimizada para chipset X99 da Intel; e
DDR4 não é compatível com os chipsets Intel ou AMD
mais antigos.
Memória
RAM:
8, 16, 32 e
64GB
Placa Mãe: GA-X99-Ultra Gaming
Suporte aos processadores Intel® Core™ i7 6950X Extreme
Edition;
Suporte ao Intel® Turbo Boost Max Technology 3.0 Quad
Channel de memórias registradas (ECC);
Suporte a 3-Way/2-Way SLI™ e CrossFire™;
Conectores Traseiros I/O Dual Hybrid Fan Headers com
PWM e Controlador de voltagem para bombeamento de
água e Fan mais precisos; e
GIGABYTE UEFI DualBIOS™.
Placa Mâe:
Gigabyte X99
40
5. CONSIDERAÇÕES FINAIS E TRABALHOS FUTUROS
Este trabalho propôs a criação de um protótipo de aplicativo com a
finalidade de auxiliar todas as pessoas que utilizam em seu dia-a-dia um
computador ou equipamento eletrônico, e que são majoritariamente leigos em
termos e dados técnicos em informática, e por este motivo acabam se sentindo
inseguras para realizarem sozinhas, a compra de um computador que seja ideal
para o seu tipo de uso, com um bom custo-benefício. Comprar um computador
inadequado em relação a sua utilização pode ocasionar problemas como: O
usuário paga um valor elevado no computador, adquirindo um grande poder de
processamento lógico e gráfico, porém não o utiliza por completo, desperdiçando
dinheiro e recursos computacionais; O usuário paga um valor baixo no
computador, porém tem uma grande dificuldade para realizar as tarefas que
pretendia, causando um grande aborrecimento.
Cada pessoa possui um tipo específico de uso de seu computador, e por
isso, o custo-benefício acaba se tornando uma variável, pois dependerá da
utilidade a que este será submetido. Os componentes computacionais atuais
apresentam diversos níveis de capacidade de: Processamento de dados;
Processamento gráfico; e Armazenamento. Por isso, cada tipo de uso acarretará
em um foco específico, que será necessário para que o uso proposto seja
realizado de forma coerente com a limitação financeira do usuário.
Futuramente o aplicativo terá funcionalidades adicionais, tais como a
exibição de uma nota que classificará a viabilidade deste computador para
determinado perfil, sendo esta baseada em testes de desempenho, pela sua
aplicabilidade e seu preço. Somado a isso, contará com uma opção de download
do resultado de computador ideal para aquele usuário, e por fim também possuirá
uma aba com sites de indicação para a compra do computador.
41
REFERÊNCIAS BIBLIOGRÁFICAS
[1] Cardoso A.: Papa Hardware. Papa Hardware. Disponível em:
<https://papahardware.net/>. Acesso em 30 de Setembro de 2018.
[2] Cardoso A.: Chipart – Vai jogar o que?. Site da Chipart. Disponível em:
<https://www.chipart.com.br/>. Acesso em 30 de Setembro de 2018.
[3] Cruickshank, D. W. J.; Pilling, D. E.; Bujosa, A.; Lovell, F. M.; Truter, M. R.
Crystallographic calculations on the Ferranti Pegasus and Mark I computers.
Computing methods and the phase problem in X-ray crystal analysis, 32-78, 1961.
[4] Fernanda F.: Poder de compra dos brasileiros será limitado até 2026. Site
Diário do Comércio. Disponível em:
<https://dcomercio.com.br/categoria/economia/poder-de-compra-dos-brasileiros-
sera-limitado-ate-2026>. Acesso em 19 de Outubro de 2018.
[5] Guedes, G. UML 2 - Uma abordagem prática. Novatec Editora, 2018.
[6] Gugik G.: A história dos computadores e da computação. Site TecMundo.
Disponível em: <https://www.tecmundo.com.br/tecnologia-da-informacao/1697-a-
historia-dos-computadores-e-da-computacao.htm>. Acesso em 18 de Abril de
2018.
[7] Ifrah, G.; A história universal de computar: Do ábaco ao computador de
Quantum. New York: John Wiley & Filhos, 2001.
[8] Lourenço, L.: A História da informática (Parte 6: Sistemas embarcados e
supercomputadores) O Altair. Site hardware. Disponível em:
<https://www.hardware.com.br/guias/historia-informatica/altair.html>. Acesso em
17 de Abril de 2018.
[9] Maciel, C.; Agência Brasil. Disponível em:
<http://agenciabrasil.ebc.com.br/geral/noticia/2014-04/brasil-ja-tem-136-milhoes-
de-computadores-em-uso-aponta-fgv>. Acesso em: 14 de Abril de 2018.
Sommerville, I. Arakaki, R.; Melnikoff, S. Engenharia de software. Pearson
Prentice Hall, 2008.
[10] UOL.: Brasil tem menor número de trabalhadores com carteira assinada
desde 2012. Disponível em: <https://economia.uol.com.br/empregos-e-
42
carreiras/noticias/redacao/2018/03/29/trabalhadores-com-carteira-assinada-
ibge.htm>. Acesso em 19 de Outubro de 2018.
[11] Versignassi, A.; Veja 20 grandes invenções e avanços tecnológicos do século
XX. Revista Superinteressante. Disponível em:
<https://super.abril.com.br/galeria/veja-20-grandes-invencoes-e-avancos-
tecnologicos-do-seculo-xx/>. Acesso em: 14 de Abril de 2018.