
Esta série de artigos tem como objetivo apresentar a evolução dos membros do Terralab ao longo dos últimos meses. Neste artigo, apresentamos parte do progresso dos projetos atualmente em andamento no Terralab, que envolvem nossas equipes de Ux, Backend e Crawler, Terramapper, Terraplanner, Infra, Q&A e Marketing.
Marketing
O time de Marketing realizou diversas atividades, como o andamento de algumas sprints envolvendo postagens semanais dos textos sobre os papéis e responsabilidades do scrum master, além do relatório sobre o processo seletivo do time de Marketing. Além disso, um estudo sobre o landing page do blog do Terralab ainda está em andamento, com o objetivo de torná-la mais funcional e acessível possível. Uma análise detalhada das métricas do instagram no mês de junho e também dos meses de julho, agosto e setembro foram feitas, resultando no aumento e diminuição de seguidores no instagram do Terralab, apesar da pouca interação do público. Medidas serão tomadas para aumentar a visibilidade do laboratório, que está abaixo da média. O time de Marketing também foi responsável por fazer os preparativos e divulgação do processo seletivo do Terralab para o semestre 23.3.
UI/UX
Durante os últimos meses, foram realizadas diversas atividades, incluindo a prototipagem de telas para análises das Áreas de Influência, que servem para observar como elas podem afetar tanto as lojas pertencentes ao usuário como a concorrência. Além disso, foi feito o desenvolvimento de prototipagem de telas de um Indicador em Python que permite a criação de fórmulas usando os atributos presentes nas tabelas, camadas de dados e mapas de interferência. Para facilitar a visualização e interpretação dos Indicadores, foram desenvolvidas telas para Dashboards, proporcionando uma representação gráfica dos dados analisados nos Indicadores.
Foi realizado um processo de revisão de requisitos para o lançamento do MVP (Minimum Viable Product) dos produtos TerraPlanner e TarraMapper. Foram revisados cada aspecto das funcionalidades, identificando possíveis melhorias e ajustes necessários para assegurar que o usuário final tenha uma experiência consistente e satisfatória. A revisão de requisitos mostra-se essencial para que o MVP seja lançado com sucesso, alinhando as expectativas com a visão estratégica do produto e garantindo que os recursos essenciais estejam prontos para serem entregues.
Backend & Crawler
Para o time de backend, foram realizados novos testes unitários e houve um trabalho junto ao time de QA para a implementação dos testes funcionais. Além disso, tivemos correções na parte de documentação do QGIS e correções em relação ao CORS do QGIS. Para o time do crawler, tivemos a alimentação do alimentador do crawler e também a criação de novas chaves da API da Google. Foi dado continuidade ao desenvolvimento do Serviço de Testes, com a criação de novos testes unitários juntamente a refatoração geral do código. Ademais, foi iniciado o desenvolvimento do Serviço de Refatoração da Infraestrutura do Servidor Qgis, onde foi realizado a mudança geral da forma como o servidor de desenvolvimento do Qgis funciona.
Para o Crawler, foi realizada manutenções nas chaves das API e também implementadas novas chaves no sistema. Ademais, foi realizada uma nova alimentação no Crawler assim como mudanças no consumo das chaves e máquina.
Testes unitários criados e refatorados:
– AddRaster
– AddShapefile
– Address (todos as rotas)
– ListLayers
– RemoveProject
– RemoveLayer
– ListProjects
Refatoração da Infraestrutura do Servidor Qgis:
– Criação de dotenv para desenvolvimento e produção
– Criação de passagem de argumentos para o interpretador do Python
– Reformulação das rotas MainHandler e MainTempHandler
– Retirada do servidor Qgis do Docker de Desenvolvimento
– Mudança das variáveis de ambiente para dotenv
– Implementação do hotreload para o servidor de desenvolvimento
– Reformulação do servidor e porta para desenvolvimento local
– Iniciada criação do ambiente virutal para o Qgis
– Iniciada a produção da nova documentação Qgis
– A ser feita, refatoração demais rotas Qgis
Terramapper
Durante os últimos meses, uma das atualizações do Terramapper incluiu a atualização do SDK mínimo para postagem, o que provavelmente se refere a uma atualização do kit de desenvolvimento de software para garantir compatibilidade com versões mais recentes do sistema operacional Android.
Durante o desenvolvimento do aplicativo, foi identificado um bug que causava falhas durante a coleta de pontos em segundo plano para o registro de caminhamentos. Para solucionar esse problema, foi criado um serviço de foreground, que executa uma rotina de coleta de dados de caminhamento em segundo plano. A biblioteca anteriormente utilizada para esse fim estava defasada e foi substituída.
Além disso, uma nova tela de tutorial foi criada para atender aos requisitos do Android, que exige que tarefas executadas em segundo plano apresentem uma notificação de foreground. Isso provavelmente foi feito para garantir uma melhor experiência do usuário e cumprir as diretrizes do sistema operacional.
Outro desafio enfrentado foi a permissão de notificações em versões mais recentes do sistema operacional, como o Android 13. Nas versões mais antigas, a permissão de notificações era concedida por padrão, mas isso não ocorre na versão mais recente. Para solucionar esse problema, foi criada uma tela para induzir o usuário a ativar a permissão de notificações.
Além das correções e atualizações mencionadas acima, o Terramapper também concluiu o serviço de pesquisa por geocodificação. Isso envolveu a criação de um algoritmo de filtragem de respostas por regiões do Brasil e a implementação de tratamento de exceções para casos de falta de conexão com a internet ou erros de comunicação com o servidor da API.
O aplicativo passou por uma geração de uma nova versão na Play Store, que incluiu o serviço de pesquisa e a correção do bug mencionado anteriormente.
No backlog de desenvolvimento de junho, foram realizadas várias tarefas, como a correção de bugs, testes automatizados que envolvem o uso da API de pesquisa e a checagem do servidor da API, com uma restrição para o Brasil. No entanto, algumas tarefas não foram concluídas, como a implementação de um serviço de divulgação do aplicativo, a personalização do formulário do Google Forms e o desenvolvimento de uma framework de testes automatizados. Em resumo, cerca de 57% do backlog de desenvolvimento do Terramapper foi concluído, incluindo melhorias no aplicativo, correção de bugs e implementação de recursos, como o serviço de pesquisa e a melhoria do processo de coleta de dados de caminhamento em segundo plano.
Foi feita a coleta de dados espaciais, como as de pontos e a marcação de caminhamentos. Posteriormente, foi feita a organização em projetos e suas exportações em formato GeoJSON. O time também criou vídeos de divulgação do aplicativo e fizeram correção de bugs relacionado a validação de formulários com campos de seleção. Testes regressivos das funcionalidades do MVP foram efetuados, assim como finalizações das últimas alterações no serviço de formulários do Google Forms.
Terraplanner
A equipe do Terraplanner trabalhou em melhorias na experiência do usuário ao implementar novas animações e interações com os botões e menus selecionáveis da aplicação. Também foram criadas as telas de login e esquecer senha, para que, no futuro, os usuários do Terraplanner consigam acessar seus projetos pessoais. Além desta, as telas de importação de arquivos e camadas de legenda foram outras que tiveram destaque no mês de junho, sendo elas responsáveis por manter uma comunicação entre o usuário e novas features que estão por vir.
Outros detalhes foram a correção de alguns bugs, como seleção de isócronas por tempo indevido, autocomplete de texto no input principal e também a criação da ferramenta de desenho de polígonos.
A transição para um novo gerente foi desafiadora, mas estamos progredindo na construção de uma relação de trabalho eficaz e produtiva com a nova liderança. Foram feitos esforços significativos para melhorar as funcionalidades de importação de endereço, o que resultou em melhorias perceptíveis na experiência do usuário.: Também foi investido tempo e recursos para aprimorar a tela de login, tornando-a mais intuitiva e eficiente para os nossos usuários. Além disso, foi identificado que o MVP do nosso produto está apresentando diversas falhas e deficiências. Isso nos levou a realizar discussões construtivas sobre como abordar esses problemas na próxima sprint.
Todos os esforços na melhoria do MVP do Terraplanner, concentrando-nos na correção de bugs e na introdução de novas funcionalidades. Em primeiro lugar, resolvemos um problema relacionado à distância e à duração na pilha de rotas. Um bug que causava números subscritos a aparecer ao adicionar uma rota com uma grande distância entre o ponto de origem e o destino foi corrigido. Além disso, também abordamos um problema com as isócronas que ficavam sobrepostas a alguma rota ao adicionar essas funcionalidades em regiões comuns no mapa. Outra correção importante diz respeito às isócronas, que não estavam ajustando cor e opacidade corretamente. Agora, esse problema foi solucionado. Por fim, foram implementadas duas novas funcionalidades no Terraplanner. Agora, os usuários receberão um aviso na pilha de rotas e no centro de alcance quando alguma dessas pilhas estiver vazia. Isso facilita a experiência do usuário, pois eles serão informados quando precisarem adicionar uma rota ou centro de alcance.
Infraestrutura
O tutorial “Como criar uma instância no Console Inicial GCloud” foi criado pelo time de Infraestrutura no laboratório Terralab com o objetivo de orientar os usuários sobre como criar uma instância no Google Cloud Platform (GCP) usando o Console Inicial. O Google Cloud Platform é uma plataforma de computação em nuvem oferecida pelo Google, que permite aos usuários criar e gerenciar recursos de computação, armazenamento, rede e outros serviços na nuvem.
Foi entregue, também, um aumento da segurança do docker-compose com a substituição das variáveis de ambiente por um arquivo externo. O time de Infraestrutura fez os estudos de orquestração de containers com kubernetes e arquitetura de API’s e seguimos com os testes de portas do bastion host dando seguimento no processo de melhoria de segurança. A equipe também efetuou a migração do repositório de imagens docker do laboratório para GCP e seus requisitos de funcionamento, finalizando a instalação da API-Gateway no bastion-host, configurando as rotas e instalando o Nginx.
Seguiram com os estudos para a tarefa de restrição de hardware. Da parte de arquitetura concluímos 25% da Formação Arquitetura Google Cloud da Alura. Já da parte de orquestração de containers, nós finalizamos o primeiro curso de kubernets e estamos com 80% do segundo curso concluídos. As demais atividades foram manutenções e alterações por solicitação dos demais times.
Q&A
Durante os últimos meses, o time de Q&A se concentrou em efetuar os testes funcionais de back e front end, como o serviço de perfil de deslocamento, de modo que garanta a funcionalidade adequada. Além disso, buscaram identificar bugs e efetuar as devidas correções e otimizações de bugs no código referente à brach “50-quality-assurance” do repositório do backend. O QA também fez várias interações com os outros times do terra lab, foi incorporado um processo de testagem das funcionalidades do mvp, com testes automática e manuais, elaboramos relatórios do que estava de acordo com o protótipo do software e o que ainda está faltando lapidar. 14 teste funcionais feitos 6 passando, e sobre os testes de aceitação, foram feitos relatórios e correções de ids que estavam quebrando os testes. Foi feito um acompanhamento minucioso do mínimo produto viável (mvp). O QA fez várias interações com os outros times do terra lab, em principal o front end, elaboramos relatórios do que estava de acordo com o protótipo do software e o que ainda está faltando lapidar.