Baixe o app para aproveitar ainda mais
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.
Compartilhar