Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Portifolio Petmonitor, Trabalhos de Desenvolvimento de Aplicações Empresariais

Trabalho feito para obtenção de nota no 5 semestre do curso de analise e desenvolvimento de sistemas na Universidade Pitagoras Unopar

Tipologia: Trabalhos

2019

Compartilhado em 12/11/2019

herlison-noronha
herlison-noronha 🇧🇷

1 documento

1 / 18

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Superior em Tecnologia em Análise e desenvolvimento de sistemasaloncio de souza lira
diego cursino pinheiro
Herlisson noronha de lima
Sistema de monitoramento “PETMonitor”
PARINTINS-AM
2019
PARINTINS-AM
2019
aloncio de souza lira
diego cursino pinheiro
Herlisson noronha de lima
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12

Pré-visualização parcial do texto

Baixe Portifolio Petmonitor e outras Trabalhos em PDF para Desenvolvimento de Aplicações Empresariais, somente na Docsity!

Superior em Tecnologia em Análise e desenvolvimento de sistemas aloncio de souza lira

diego cursino pinheiro

Herlisson noronha de lima

Sistema de monitoramento “PETMonitor”

PARINTINS-AM

PARINTINS-AM

aloncio de souza lira

diego cursino pinheiro

Herlisson noronha de lima

SUMÁRIO

1 INTRODUÇÃO 3

2 DESENVOLVIMENTO

2.1 TAREFA 1 ......................................................................................................

2.2 TAREFA 2 ......................................................................................................

2.3 TAREFA 3 ......................................................................................................

3. CONCLUSÃO ........................................................................................................

INTRODUÇÃO

Sempre nos deparamos em nossas redes sociais com mensagens desesperadas ou

esperançosas que buscam resgatar animais de estimação perdidos. Mesmo mais eficazes que

os folhetos espalhados por postes, as publicações online nem sempre dão resultado. Quanto

maior a cidade, mais difícil fica. A fim de evitar esse problema, este projeto propõe, o que é uma aplicação móvel para donos de animais para encontrar e rastrear seus animais de

estimação em qualquer lugar e a qualquer hora. Ele tem a função de encontrar o animal num

raio de 20 metros, que é o gerenciável pelo usuário, rastreamento e encontrar animais de

22

Sistema de monitoramento “PETMonitor” TrabalhoNorte da Paraná (Unopar), como requisito parcial para^ interdisciplinar^ apresentado^ à^ Universidade

a obtenção de média semestral na disciplina de: Gestão do Conhecimento; Fundamentos de Redes de Computadores; Tópicos Especiais em Desenvolvimento de Sistemas; Seminário VI. Orientadores: Vanice Dalto Professor Anderson Emidio de Macedo Gonçalves Professor Paulo Kiyoshi Nishitani Professor Adriane Ap. Loper Professora Merris Mozer

Cidade 2019

tipicamente hardware, software, pessoas, sistemas de comunicação como linhas telefônicas, e os dados propriamente ditos. As atividades envolvidas incluem a introdução de dados, processamento dos dados em informação, armazenamento de ambos, e a produção de resultados, como relatórios de gestão

Qual o nome dado para esta documentação e o que significa esta documentação?

  1. Levantamento de Requisitos Esta atividade tem como objetivo, compreender o problema, dando aos desenvolvedores e usuários, a mesma visão do que deve ser construído para resolução do problema. Desenvolvedores e clientes, em conjunto, buscam levantar e priorizar as necessidades dos futuros usuários do software (necessidades essas denominadas como requisitos). O Levantamento de Requisitos é a etapa mais importante, no que diz respeito ao retorno de investimentos no projeto. Vários projetos são abandonados pelo baixo levantamento de requisitos, ou seja, membros da equipe não disponibilizaram tempo suficiente para essa fase do projeto, em compreender as necessidades dos clientes em relação ao sistema a ser desenvolvido. E como um sistema de informações geralmente é utilizado para automatizar processos de negócio em uma organização, esses processos da organização devem ser bem compreendidos para que o restante das atividades do processo de desenvolvimento flua de acordo com as reais necessidades do cliente.
  2. Análise de Requisitos Esta etapa, também chamada de especificação de requisitos, é onde os desenvolvedores fazem um estudo detalhado dos dados levantados na atividade anterior. De onde são construídos modelos a fim de representar o sistema de software a ser desenvolvido. O interesse nessa atividade é criar uma estratégia de solução, sem se preocupar como essa estratégia será realizada, ou seja, utilizar as necessidades dos clientes, depois de compreendido o problema, para resolução do problema solicitado. Assim é necessário definir o que o sistema deve fazer, antes de definir como o sistema irá fazer.

22

  1. Projeto Nesta fase é que deve ser considerado, como o sistema funcionará internamente, para que os requisitos do cliente possam ser atendidos. Alguns aspectos devem ser considerados nessa fase de projeto do sistema, como: arquitetura do sistema, linguagem de programação utilizada, Sistema Gerenciador de Banco de Dados (SGBD) utilizado, padrão de interface gráfica, entre outros. No projeto é gerada uma descrição computacional, mencionando o que o software deve fazer, e deve ser coerente com a descrição realizada na fase de análise de requisitos. O projeto possui duas atividades básicas: projeto da arquitetura (ou projeto de alto nível), e projeto detalhado (ou projeto de baixo nível). Em um processo de desenvolvimento orientado a objetos, o projeto da arquitetura normalmente é realizado por um arquiteto de softwares. O projeto da arquitetura visa distribuir as classes de objetos relacionados do sistema em subsistemas e seus componentes, distribuindo também esses componentes pelos recursos de hardware disponíveis. Já no projeto detalhado, são modeladas as relações de cada módulo com o objetivo de realizar as funcionalidades do módulo. Além de desenvolver o projeto de interface com o usuário e o projeto de banco de dados.
  2. Implementação Nessa etapa, o sistema é codificado a partir da descrição computacional da fase de projeto em uma outra linguagem, onde se torna possível a compilação e geração do código- executável para o desenvolvimento software. Em um processo de desenvolvimento orientado a objetos, a implementação se dá, definindo as classes de objetos do sistema em questão, fazendo uso de linguagens de programação. Pode-se também utilizar na implementação ferramentas de software e bibliotecas de classes preexistentes para agilizar a atividade, como também o uso de ferramentas CASE, que dinamizam o processo de desenvolvimento, nas várias atividades, onde inclui-se geração de código-fonte, documentação, etc.
  3. (^) Testes Diversas atividades de testes são executadas a fim de se validar o produto de software, testando cada funcionalidade de cada módulo, buscando, levando em consideração a especificação feita na fase de projeto. Onde o principal resultado é o relatório de testes, que contém as informações relevantes sobre erros encontrados no sistema, e seu comportamento

enquanto retornassem à base, eles modificariam o sinal que seria refletido de volta aos radares. Isso os identificava como pilotos alemães. Mais tarde, os ingleses, sob o comando de Watson- Watt, projetaram o primeiro identificador ativo. Um transmissor era colocado em cada avião britânico e estes quando recebiam sinais das estações de radar no solo, transmitiam de volta um sinal de resposta, que identificava a aeronave como amiga. Nos RFIDs o princípio é o mesmo. Um sinal é enviado a um transponder, que é ativado e reflete de volta o sinal( passivo ) ou transmite seu próprio sinal( ativo ). A partir de então estudos e pesquisas na área de radiofrequência começaram a ser realizados e mostraram como essa energia poderia ser utilizada para identificar objetos remotamente. Começou assim o uso dessa nova tecnologia para identificar objetos em movimento. Isso foi uma vantagem em relação ao sistema de código de barra que necessita do objeto parado e de um leitor a laser. Utilizando um método de etiquetas(tags) inteligentes( etiquetas eletrônicas com um microchip instalado ) que são postas nos objetos, estes passaram a ser rastreados por por ondas de rádio através de uma resistência de metal ou carbono que funciona com antena, trocando informações com o sistema( computador ) através de seus EPCs( Eletronic Product Code) ou Código Eletrônico do Produto. As principais diferenças e semelhanças entre RFID e NFC são, portanto, listadas:

  • NFC e RFID são tecnologias sem fio que operam com um modo de comunicação ativo ou passivo do ponto de vista da fonte de alimentação para permitir a troca de dados entre dispositivos eletrônicos.
  • (^) A tecnologia RFID utiliza transmissão de dados por meio de acoplamento eletromagnético. Enquanto no caso NFC, as aplicações sempre funcionam no chamado campo próximo onde somente ocorre o acoplamento indutivo.
  • Os sistemas RFID utilizam um amplo espectro de radiofrequência, que varia dependendo das aplicações, das etiquetas utilizadas e de acordo com as diversas regulamentações nacionais. O NFC permite a comunicação apenas com a frequência de rádio de 13,56 MHz.
  • (^) O RFID pode operar em distâncias de algumas dezenas de metros, tornando-o inadequado para aplicações que exigem alta segurança. O NFC é projetado para comunicações que chegam a distâncias de 10cm, enquanto acontece na prática que as distâncias de uso são menores.
  • (^) As etiquetas RFID podem ser ativas e passivas, essa distinção não existe no NFC. Na tecnologia NFC, existem apenas tags e leitores passivos, que podem estar contidos em um único dispositivo, como um smartphone. Quanto às tags passivas, estas são muito semelhantes nas duas tecnologias, basta pensar na interoperabilidade das tags que adotam o protocolo de comunicação ISO 14443. Conforme todo o exposto acima é plenamente viável a utilização da tecnologia NFC para identificação e rastreamento dos PETs. Simplesmente abordando dois dispositivos eletrônicos é possível estabelecer essa comunicação e isso simplifica muito os problemas de identificação e segurança, o que facilita muito a troca de informações.

TAREFA 3

Partindo do princípio de localização do pet, foi desenvolvido um aplicativo que lê o gps do dispositivo móvel e apresenta uma mensagem sinalizando se o pet está dentro ou fora da distância segura de 20 metros.

Veja abaixo a tela do aplicativo para rastreamento.

22

public class MainActivity extends AppCompatActivity {

TextView latitude, longitude, distAtual, msg; Button bt; LocationManager locationManager; EditText distSegura; ImageView img; String mprovider; boolean status = false; int cont = 0; double latitudeRef, longitudeRef, latitudeAtual, longitudeAtual; LinearLayout progress;

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

latitude = (TextView) findViewById(R.id.latitude); longitude = (TextView) findViewById(R.id.longitude); bt = (Button) findViewById(R.id.bt); img = (ImageView) findViewById(R.id.img); distAtual = (TextView) findViewById(R.id.distAtual); msg = (TextView) findViewById(R.id.msg); distSegura = (EditText) findViewById(R.id.distSegura); progress = (LinearLayout) findViewById(R.id.progress);

bt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);

22

if (! locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { buildAlertMessageNoGps(); locationManager = null; } else { Toast.makeText(MainActivity.this, "Reconhecendo Local...", Toast.LENGTH_LONG).show(); status = true; if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // TODO: Consider calling return; } cont = 0; progress.setVisibility(View.VISIBLE); Location bestLocation = null;

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, myLocationListener); Criteria criteria = new Criteria(); List providers = locationManager.getProviders(true); for (String provider : providers) { if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {

longitude.setText(longitudeAtual + ""); latitude.setText(latitudeAtual + ""); float[] results = new float[1]; Location.distanceBetween( latitudeRef, longitudeRef, latitudeAtual, longitudeAtual, results); String s = results[0] + "";

distAtual.setText("Distância Atual: " + s.substring(0, 1) + "m");

int dist;

if (distSegura.getText().toString().isEmpty()) { dist = 1; } else { dist = Integer.parseInt(distSegura.getText().toString()); }

if (results[0] > dist) { img.setImageResource(R.drawable.sad); msg.setText("Atenção, fora da área segura!");

msg.setTextColor(Color.parseColor(getResources().getString(R.string.vermelho))); } else { img.setImageResource(R.drawable.good); msg.setText("Área segura!");

msg.setTextColor(Color.parseColor(getResources().getString(R.string.colorPrimary))) ; } } } else { latitudeAtual = location.getLatitude();

longitudeAtual = location.getLongitude(); cont++; } }

@Override public void onStatusChanged(String provider, int status, Bundle extras) {

}

@Override public void onProviderEnabled(String provider) {

}

@Override public void onProviderDisabled(String provider) {

} };

private void buildAlertMessageNoGps() { final AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("GPS desabilitado, deseja habilitar ?") .setCancelable(false) .setPositiveButton("Sim", new DialogInterface.OnClickListener() { public void onClick(@SuppressWarnings("unused") final DialogInterface dialog, @SuppressWarnings("unused") final int id) { startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS)); }

22

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, myLocationListener); } } } Quadro 1 – Atividade

3. CONCLUSÃO

Neste projeto, foi feita uma aplicação móvel para donos de animais para encontrar e rastrear seus animais de estimação usando um colar de rastreamento para rastrear a localização deles. Além disso, o aplicativo tem uma maneira alternativa para encontrar seu animal calculando cerca de 20 metros de distância segura. Isso faz com que as chances de encontrar animais perdidos será

22

maior. Para os problemas e as limitações deste projeto, o dispositivo de rastreamento requer conexão com internet, além disso, foi feito um estudo de documentação de softwares e análise do projeto para dá mais segurança e firmeza no App. Contudo todos os objetivos propostos foram alcançados com sucesso pela equipe.

REFERÊNCIAS BIBLIOGRÁFICAS

O que é uma startup? SENAC. Disponível em: <http://www.blogsenacsp.com.br/o- que-e-startup-entenda-como-funciona-esse-tipo-de-empresa/>. Acesso em: 30 Agosto 2019.