Introdução

editar

Visão Geral

editar

O SaudeEmCasa, é um aplicativo mobile desenvolvido para Android por alunos da disciplina de Métodos de Desenvolvimento de Software da Universidade de Brasília. O aplicativo engloba dois programas governamentais relacionados à área de saúde, são eles o Melhor em Casa e o Farmácia Popular. O Melhor em Casa, é um programa que visa facilitar o atendimento a pessoas com necessidades de atendimento doméstico ou que tenham dificuldade na locomoção à um hospital ou posto de saúde. O Farmácia Popular é um programa facilitador ao acesso de medicamentos por parte da sociedade.

Propósito

editar

As principais funcionalidades do aplicativo são:

  • Listar Hospitais mais próximos do Usuário.
  • Listar Farmácias mais próximas do Usuário.
  • Traçar rotas de um usuário até uma farmácia ou hospital.

Repositório

editar

O link para o repositório oficial do aplicativo pode ser encontrado no github, descrito abaixo:

https://github.com/AndroidSlaves/saudeemcasa

O link para a Receita Chef é disponibilizada no link:

https://github.com/freemanpivo/chef-android-development

Objetivo

editar

Os principais objetivos do gerenciamento de configuração deste repositório são estimulados pela falta de um ou mais itens de gerência de configuração que são importantes para a manutenção deste software. Os alunos se propõe a:

  • Realizar a integração contínua
  • Configurar uma receita Chef para instalação e padronização de ambiente de desenvolvimento
  • Configuração de uma Máquina Virtual para padronização de execução de testes.

Plano de Gerência de Configuração

editar

Ferramentas

editar
Gerência de Configuração de Software
Ferramenta Descrição Responsáveis
Android Studio IDE para desenvolvimento de aplicativos para Android Geovanni e Pedro Ivo
Chef Recipe Script de automação de configuração e instalação de software Geovanni e Pedro Ivo
Circle CI Ferramenta de Integração Contínua Geovanni e Pedro Ivo
Sublime Text Editor de texto Geovanni e Pedro Ivo

As ferramentas escolhidas estão representadas na tabela acima, com o intuito de cumprir o objetivo do projeto com o auxílio dessas ferramentas.

Cronograma

editar

O cronograma de atividades a serem realizadas no projeto estão representadas na tabela abaixo para guiar o desenvolvimento do projeto.

Cronograma
Data Atividade Descrição Responsáveis
Levantamento inicial das possiveis

ferramentas para serem atualizadas

Levantar ferramentas para possivel utilização

no projeto

Geovanni Oliveira e Pedro Ivo
Estudo das ferramentas escolhidas Estudar as ferramentas escolhidas para trabalhar

no projeto de forma com que seu uso seja dominádo.

Geovanni Oliveira e Pedro Ivo
Gerar Spripts de integração contínua Gerar spripts para implementar integração contínua entre

os elementos criados

Geovanni Oliveira e Pedro Ivo
Gerar virtualização de ambiente virtualizar ambiente para utilização Geovanni Oliveira e Pedro Ivo
Gerar script de automação gerar script para que a automação de configuração para o

aplicativo Saude Em Casa

Geovanni Oliveira e Pedro Ivo

Relatório

editar

Integração Contínua

A integração contínua do projeto foi realizada com a ferramenta CircleCI, ela é bem fácil de usar, um arquivo foi adicionado ao projeto para que o projeto pudesse ser identificado pela ferramenta. Houveram algumas dificuldades por falta de conhecimento em integração contínua e com a própria ferramenta, a geração do script para execução da integração contínua foi um dos problemas, várias tentativas foram feitas, e com o auxílio da monitoria foi possivel verificar que era recomendável modificar a estrutura do projeto, os arquivos deveriam estar todos na pasta raiz do repositório no GitHub, após fazer isso, o script funcionou, porém alguns testes não rodaram, o script Circle.yml foi modificado de forma que fosse possivel executar os testes, após algumas tentivas a build no CircleCI ficou com o estatus "Fixed", após realizar a build novamente pela ferramenta o estatus foi modificado para "Sucesso" o que indicou que a integração contínua foi realizada com sucesso.

Receita Chef

As receitas Chef foram criadas de maneira que alguns itens fossem atualizados no sistema de distribuição Linux e alguns softwares fossem instalados para que o Android Studio fosse capaz de funcionar em uma máquina e de forma que rodasse o projeto Saude em Casa de maneira correta. Os itens para que as receitas foram feitos são:

  • Criação da receita de instalação do Oracle JDK 8
  • Criação da receita de instalação do Android Studio 2.2
  • Criação da receita de instalação do VirtualBox 5.1
  • Criação da receita de instalação do Genymotion
  • Criação do Shell Script que gerencia pacotes e executa as receita