Buscar

pet monitor 2 semestre

Prévia do material em texto

19
SISTEMA DE ENSINO online ead
SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Aluno
PETMONITOR 
PRODUÇÃO TEXTUAL INTERDISCIPLINAR INDIVIDUAL
Polo-SP
2019
Aluno
PETMONITOR 
Trabalho de Análise e Desenvolvimento de Sistemas apresentado ao Polo Universitário Anhanguera Araraquara, como requisito parcial para a obtenção de nota Semestral nas disciplinas de Introdução ao Desenvolvimento de Sistemas Web, Metodologia Científica, Processo de Negócios e Software, Lógica e Técnicas de Programação, Seminário II.
Orientador: Professores
Merris Mozer;
Regina Célia Adamuz;
Marco Ikuro Hisatomi;
Anderson E. Macedo Gonçalves;
Adriane Ap. Loper.
Polo-SP
2019
SUMÁRIO
1 INTRODUÇÃO	3
2 OBJETIVO	3
3 DESENVOLVIMENTO	4
3.1 LÓGICA E TÉCNICAS DE PROGRAMAÇÃO	4
3.1.1 Algoritmo para o Petmonitor	5
3.2 INTRODUÇÃO AO DESENVOLVIMENTO DE SISTEMAS WEB 	8
3.2.1 Protótipo de Tela HTML	8
3.3 PROCESSO DE NEGÓCIOS E SOFTWARE	14
3.3.1 Atividades Executada pela Equipe	14
3.3.2 Modelo de Ciclo de Vida 	15
3.3.3 Requisito de Software 	16
3.3.4 Diagrama de Requisito 	18
4 CONCLUSÃO	19
REFERÊNCIAS	20
1 INTRODUÇÃO
Este portfolio foi realizado com base nas matérias do 1 e 2 semestres de Análise e Desenvolvimento de Sistemas.
Toda a ideia de desenvolvimento do aplicativo veio da situação geradora de aprendizagem, onde João passeava com seu pet, e teve a ideia de criar um aplicativo onde fosse possível localizar seu animal.
As matérias do semestre nos auxiliaram para o caminho do sucesso deste projeto.
E o quão importante cada processo na área de ADS.
Os donos de animais de estimação muitas vezes tratam seus animais como parte da família, se preocupando cada vez mais com sua saúde e bem estar, e como membros da família sofrem com a perda deles, seja por motivos de saúde ou mesmo pela fuga ou perda do animal.
Diante deste cenário propõem-se utilizar a Analise e Desenvolvimento de Software (ADS) para desenvolver uma solução para esse tipo de problema. A proposta é desenvolver um sistema para facilitar a descoberta de onde o animal de estimação se encontra evitando que a família sofra o abalo emocional em relação à perda do seu companheiro
	 
2 OBJETIVO
Temos a missão de criar um algoritmo que solicite a latitude e longitude do tutor e a localização do pet, também a área segura para este animal está caminhando sem o risco de se perder, caso ele sai da área segura o algoritmo dará um alerta.
3 DESENVOLVIMENTO
3.1 LÓGICA E TÉCNICAS DE PROGRAMAÇÃO
A primeira tarefa do projeto Petmonitor será o de desenvolver um algoritmo que solicite a posição do tutor, com sua latitude e longitude, obtendo a localização do pet e alertando se a distancia é segura ou não.
Atualmente as ferramentas de localização do Google fazem uso do GPS e triangulação com antenas de rede telefônica e redes wifi, para fazer a geolocalização.
Também para o monitoramento de objetos dentro de uma determinada área, como monitoramento de locais próximos, de animais, pessoas e crianças é definido através de um raio de alcance, onde é possível verificar se um objeto sai ou entra deste raio.
Uma coordenada é solicitada para ser o centro deste raio, o raio é definido em metros ou km, e com isso é possível ser usado para muitas utilidades.
Criaremos então um algoritmo que solicite a posição do tutor.
3.1.1 Algoritmo para o Petmonitor
Precisamos entender o que é um algoritmo, pois em tudo o que fazemos logicamente existe algoritmo inserido.
Um algoritmo é uma sequência de passos finita que levam a execução de uma tarefa, ou a solução de um problema.
Algoritmos são sequencias lógicas como instruções de montage, receitas, manual de um produto.
Exemplo de algoritmo:
Algoritmo: Sacar dinheiro.
INICIO
Ir ate o caixa eletronico;
Colocar o Cartão;
Digitar a Senha;
Solicitar o Saldo;
Se o saldo for igual ou maior que a quantia desejada,
sacar a quantia desejada, caso contrario, sacar o valor do saldo.
Retirar dinheiro e cartão;
FIM
Para o programa PetMonitor receber nossos comandos, o passo a passo, nosso algoritmo, precisamos desenvolver este algoritmo em uma linguagem estruturada que o computador entenda.
Podemos representar um algoritmo de várias formas, Descrição narrative, Fluxograma, Pseudocódigo ou Linguagem estruturada(Portugol).
Nosso algoritmo foi criado em uma ferramenta que possibilita a criação e representação do algoritmo em Portugol, usamos o programa VisualG.
Tela do VisualG
Abaixo o algoritmo feito para o Petmonitor.
Algoritmo "Localização"
// Disciplina : [Lógica e Técnicas de Programação]
Var
 latitudeTutor, longitudeTutor, latlongpet: real
 local: real
Inicio
 Escreval(" PETMONITOR versão 1.0 ")
 Escreval("-------------------------------------")
 Escreval("Digite a LATITUDE de sua localização:")
 Leia(latitudeTutor)
 Escreval("Digite a LONGITUDE de sua localização:")
 Leia(longitudeTutor)
 Escreval("-------------------------------------------")
 Escreval("Entre com LATITUDE E LONGITUDE de seu PET:")
 Escreval("-------------------------------------------")
 Escreval(" Digite [ 1 ] - para LAT e LONG: -3.10719, -60.0261 ")
 Escreval(" Digite [ 2 ] - para LAT e LONG: -23.5489, -46.6388 ")
 Escreval(" Digite [ 3 ] - para LAT e LONG: -19.8157, -43.9542 ")
 Escreval(" Digite [ 4 ] - para LAT e LONG: -22.9035, -43.2096 ")
 Escreval(" Digite [ 5 ] - para LAT e LONG: -30.0277, -51.2287 ")
 Leia (latlongpet)
 
 Escolha latlongpet
 Caso 1
 local <-10
 Caso 2
 local <-50
 Caso 3
 local <-20
 Caso 4
 local <-100
 Caso 5
 local <- 21
 FimEscolha
 
 Se( local> 20)entao
 Escreval("Seu Pet está há ",local," metros: RISCO DE SE PERDER!")
 senao
 Escreval("Seu Pet está há ",local," metros: ESTÁ SEGURO!")
 FimSe
Fimalgoritmo
3.2 INTRODUÇÃO AO DESENVOLVIMENTO DE SISTEMAS WEB
Quando falamos de sistemas web, na verdade estamos falando de um software que é acessado por qualquer dispositivo que tenha um navegador web, possa rodar nossa aplicação.
Sistemas web na verdade são sites dinâmicos, onde existe uma interação com o usuário, diferentemente dos sites estáticos que somente tem informações que não mudam.
Um sistema web é acessado como um site comum, através de links, sua estrutura também é baseada no HTML (Hypertext Markup Language), traduzido significa Linguagem de Marcação de Texto.
Um sistema web tem toda estrutura HTML, porém por se tratar de um software, onde existem funcionalidades como cadastrar clientes, pesquisar clientes, realizar vendas etc. Os sistemas web necessitam de uma linguagem de programação para dar vida às funções do sistema.
Um sistema web pode ser instalado, ou rodar na intranet (rede local) ou na internet comum.
3.2.1 Protótipo de Tela HTML
Pensando na divulgação via página de internet do aplicativo Petmonitor, fizemos um protótipo de tela web em HTML, contendo algumas informações sobre o aplicativo e suas funções.
Nesta tela contem algumas informações fictícias como o a cidade, nome do aplicativo e suas funções.
Logo baixo teremos uma tabela exibindo informações sobre os pet monitorados, como nome do pet, raça, sexo, latitude e longitude.
Abaixo está o print da tela do protótipo.
Tela do Protótipo HTML
Código HTML da página
<HTML>
 <head>
 
 <title>PetMonitor</title> 
 <style>
	table {
		font-family: arial, sans-serif;
		border-collapse: collapse;
		width: 100%;
	}
	td, th {
		border: 1px solid #dddddd;
		text-align: left;
		padding: 8px;
	}
	tr:nth-child(even) {
		background-color: #dddddd;
	}
 
	div{
	width:1200px; margin:50px auto 100px auto;
	}
</style>
 
 </head>
 
 <body>
 
 <div>
 <h1>PetMonitor - Seja Bem Vindo</h1>
 <hr>
 <h3>Cidade: Sao paulo</h3>
 <h3>Nome do Aplicativo: PetMonitor</h3>
 <h3>Funcao: Monitoramento de animais domésticos através de gps.</h3> 
 
 <hr>
 <table>
 
 <tr><th>Nome do Pet</th>
 <th>Raça</th>
 <th>Sexo</th>
 <th>Latitude</th>
 <th>Longitude</th>
 
 </tr>
 
 <tr>
 <td>Toto</td>
 <td>PitBul</td>
 <td>Macho</td>
	<td>-20.7000000</td>
 <td>-45.3666667</td>
 </tr>
 
 <tr>
 <td>Wolf</td>
 <td>Afegao Hound</td>
 <td>Macho</td>
	<td>-5.9500000</td>
 <td>-43.0000000</td>
 </tr>
 
 <tr>
 <td>Lolita</td>
 <td>Akita</td>
 <td>Femea</td>
	<td>-17.4333333</td>
 <td>-44.8500000</td>
 </tr>
 
 <tr>
 <td>Peta</td>
 <td>Beagle</td>
 <td>Femea</td>
	<td>3.7500000</td>
 <td>-61.3500000</td>
 </tr>
 
 <tr>
 <td>Max</td>
 <td>beagle Harrier</td>
 <td>Macho</td>
	<td>-6.7166667</td>
 <td>-37.9833333</td>
 </tr>
 
 <tr>
 <td>Betovem</td>
 <td>Boiadeiro bernes</td>
 <td>Macho</td>
	<td>-7.0833333</td>
 <td>-37.0333333</td>
 </tr>
 
 <tr>
 <td>Tizuca</td>
 <td>Border Terrier</td>
 <td>Femea</td>
	<td>-13.0166667</td>
 <td>-61.4333333</td>
 </tr>
 
 <tr>
 <td>Luza</td>
 <td>Border Collie</td>
 <td>Femea</td>
	<td>-9.8333333</td>
 <td>-42.4666667</td>
 </tr>
 
 <tr>
 <td>Thanos</td>
 <td>Pastor Alemao</td>
 <td>Macho</td>
	<td>-25.6538889</td>
 <td>-49.9833333</td>
 </tr>
 
 <tr>
 <td>Ela</td>
 <td>Borzoi</td>
 <td>Femea</td>
	<td>-7.8166667</td>
 <td>-38.1666667</td>
 </tr>
 
</table>
<hr>
</div> 
 </body>
</HTML>
O código HTML acima está pronto para ser testado em qualquer navegador, nele contem um pouco de css em sua tag <head>.
3.3 PROCESSO DE NEGÓCIOS E SOFTWARE
Quando tratamos de negócios, logo estamos falando de interação entre pessoas para executar atividades com o objetivo de gerar valor para seus clientes e retorno às partes interessadas.
Também quando expomos processos, estamos falando de um ambiente com regras e procedimentos, que processam o que entra (insumos) e resulta em produtos de saída ao cliente.
O processo de negócio é uma associação de atividades e procedimentos executados por humanos ou máquinas para entregar valor para o cliente, apoiar, ou mesmo gerenciar outros processos.
O desenvolvimento de software ao ser solicitado pelo cliente torna-se um negocio no qual deve ser gerenciado e definido seus processos e atividades, responsáveis pelas atividades, sendo assim para gerar valor ao cliente e qualidade.
3.3.1 Atividades Executada pela Equipe
As atividades executadas pela equipe de desenvolvimento devem está pautada dentro dos processos definido para cada fase do desenvolvimento.
O desenvolvimento de software tem várias fases de desenvolvimento que chamamos de Ciclo de Vida.
Ciclo de vida é estrutura contendo processos, atividades e tarefas envolvidas no desenvolvimento, operação e manutenção de um produto de software, abrangendo a vida do sistema, desde a definição de seus requisitos até o término de seu uso.
Como já sabemos essa estrutura define também processos que devem ser seguidos sequencialmente dependendo do modelo adotado, onde a equipe saberá suas atividades, responsabilidades a serem executadas.
3.3.2 Modelo de Ciclo de Vida
Para gerenciar o desenvolvimento de software, onde cada fase é definida e processos e atividades são executados, temos alguns modelos que nos permite estruturar nosso trabalho exemplos abaixo:
- Modelo Cascata - Divide todo o processo de desenvolvimento de software em fases separadas e sequenciais onde o desenvolvimento movimenta-se somente num sentido, de modo que as etapas não podem ser repetidas.
Somente quando uma fase estiver concluída a outra fase poderá iniciar.
Neste modelo nenhum componente do sistema será entregue até a proximidade final do projeto.
- Modelo Espiral - É uma combinação dos modelos interativo e sequencial com ênfase na análise de riscos e no planejamento.
O sistema de software é entregue em versões, onde cada versão passa por cada etapa do ciclo de desenvolvimento. Dessa forma o produto final é entregue rapidamente.
Determina um ciclo de atividades dividido em 4 estágios:
 1- Determina objetivos, soluções alternativas e restrições.
 2- Analisam os riscos do estágio anterior
 3- Atividades da fase de desenvolvimento: design, especificação, codificação e verificação.
 4- Revisões das etapas anteriores e o planejamento da próxima fase 
Conhecendo alguns destes modelos de ciclo de vida, podemos escolher qual melhor se adapta á nossa maneira de desenvolver. Para o nosso projeto decidimos usar o modelo Cascata, onde teremos uma sequencia de processos a serem cumpridos pela equipe.
Modelo Cascata
No modelo acima está a estrutura de ciclo de vida definida pelas fases de desenvolvimento – Processos de (Análise – Projeto – Codificação – Testes – Implementação). Estas são as atividades que deverão ser executadas pela equipe de desenvolvimento do Petmonitor.
3.3.3 Requisito de Software
Os requisitos de software são as funcionalidades que nosso sistema deve atender, ou também as necessidades que o sistema deve atender dentro do negocio do cliente.
Existem três tipos conhecidos de requisitos de software – requisitos funcionais – requisitos não funcionais ou de qualidade – regras de negocio.
Abaixo temos a descrição dos requisitos funcionais do Petmonitor;
	Requisito
	Nome do requisito
	Descrição
	R-01
	Cadastrar tutor
	Realizar cadastro do dono do animal, juntamente com login e senha do app
	R-02
	Cadastrar pet
	Realizar cadastro do animal – como nome – endereço e dono
	R-03
	Cadastrar Rastreador
	Realizar cadastro do rastreador – fabricante, data ativação, número serie, validade
	R-04
	Configurar distancia segura
	Realizar pré configuração de 20 metros para área segura onde o pet pode esta.
Acima temos uma descrição dos requisitos do app Petmonitor, onde partimos da ideia de que os requisitos são funções que nosso sistema deve atender e ter, regras de negocio são as regras do negocio do cliente e diz respeito como o sistema fará a função. 
Sabemos que o aplicativo Petmonitor deve ter a funcionalidade de definir uma área segura para o pet, alertando se caso ele saia dessa área.
O que define como e quantos metros de área será definida será a regra de negocio que diz que será em 20 metros pré-configurado, onde também o João pode consultar para obter informações sobre como proceder.
Com as funcionalidades acima a equipe de desenvolvimento pode ter a noção de como as funcionalidades atenderão nosso cliente.
3.3.4 Diagrama de Requisito
A UML (Linguagem de Modelagem unificada) – também facilita a compreensão de cada parte do sistema que está sendo modelado. Pode ser entendido por qualquer pessoa que tenha conhecimento sobre a linguagem.
Ela tem como característica principal representar o sistema através de diagramas, diagramas são recursos gráficos para visualizar o sistema. Abaixo foi elaborado um dos diagramas da UML- diagrama de caso de uso, que mostra a interação do usuário com o sistema.
No diagrama de caso de uso acima, podemos ver a interação do usuário com a funcionalidade (requisito) – Configura distancia.
Um diagrama de caso de uso também ser para levantar requisitos de um sistema.
4 CONCLUSÃO
Com o objetivo de atendermos as ideias do João, que propôs o desenvolvimento de um aplicativo para monitoramento do pet uma solução tecnológica que proporcione aos donos de animais de estimação, o monitoramento de seus pets por meio de um sistema de geolocalização, proporcionando aos usuários uma forma de localizar seus companheiros perdidos e evitar uma possível fatalidade ou incidente com eles. Portanto, visou-se suprir essa necessidade de desenvolver um sistema de monitoramento que, de forma efetiva, oferecesse aos donos de animais de estimação uma nova solução para melhorar o bem-estar do animal e de toda a família. Então foi necessário criarmos um algoritmo que solicita as coordenadas do tutor e a localização do seu pet.
O algoritmo também deverá definir a área segura para este pet, onde realizamos tal atividade através do VISUALG.
O Protótipo de tela HTML nos deu o desafio decriarmos também a interface de divulgação web, através da página web.
Para termos qualidade em nosso projeto de desenvolvimento, foi necessário escolhermos um modelo de gerenciamento de processos, onde são definidas e estruturadas cada fase. do ciclo de vida do software, para isso foram feitas pesquisas desde modelos clássicos aos mais atuais e modernos como modelos ágeis.
Sendo assim fomos introduzidos na área de desenvolvimento de software
REFERÊNCIAS
GONÇALVES, Anderson Emídio de Macedo; FREITAS, Veronice de. Técnicas de Programação. Londrina: Editora e Distribuidora Educacional S.A, 2014. 192 p.
FABRIS, Polyanna Pacheco Gomes; PERINI, Luís Cláudio. Processos de Software. Londrina: Editora e Distribuidora Educacional S.A, 2014. 192p.
MOZER, Merris; LOPER, Adriane Aparecida; SILVA, Danilo Augusto Bambini. Sistemas web. Londrina: Editora e Distribuidora Educacional S.A, 2014. 192p.
FREGONEZE, Gisleine Bartolomei et al. Metodologia Científica. Londrina: Editora e Distribuidora Educacional S.A, 2014. 184p.

Continue navegando