Fechamento do projeto - fga-eps-mds/2017.1-Cadernos-API GitHub Wiki
Resumo do projeto
O projeto foi realizado através de uma parceria entre o institudo IdA e a disciplina de GPP e MDS da Faculdade Gama da Universidade de Brasília. Conforme especificado no documento de visão, esse projeto tem como principal objetivo desenvolver um produto de software para suporte ao processo de desenvolvimento de projeto do instituto.
O projeto foi dividido em duas grandes entregas(R1 e R2). Onde a primeira tinha como objetivo a definição do produto e validação da arquitetura adotada pela equipe de desenvolvimento. A segunda parte foi reservada para a finalização do desenvolvimento.
A equipe, como um todo, considera o projeto realizado com sucesso apesar das grandes dificuldades encontras na R2 devido, principalmente, a inexperiência de da equipe com a tecnologia e com o ciclo de desenvolvimento adotados.
A equipe também passou por uma baixa na produtivdade devido a falta de motivação para a conclusão do projeto Contudo houve um esforço da equipe para a finalização mesmo sem um grande motivação.
Custo
O projeto teve custo total de R$ 108.351,20 sendo R$86.940,20 da primeira etapa do projeto e R$ 21.411,00 da segunda.
Na primeira etapa foi utilizado a técnica de hora/homem enquanto na segunta parte a técnica de EVM. O detalhamento de como foi calculado e gerênciado esse custo pode ser encontrado no relatório de custo para a R1 e no EVM para a R2.
Escopo
O escopo do projeto pode ser encontrado nos casos de uso presentes na wiki desse repositório e no backlog do produto. Esse documentos são complementares, uma vez que o escopo do projeto foi aumentando/sendo melhor defindo no decorrer do projeto. O time de desenvolvimento se encontrava periodicamente com o cliente para mostrar o que estava sendo desenvolvido e quais eram os próximos passos.
Objetivos alcançados
A equipe conseguiu produzir um software de qualidade, tal que dentro do período proposto, se produziu muito dentro do que se tinha de recursos. Basicamente os alunos de MDS eram imaturos em termos técnicos e aos poucos ganharam muita maturidade para encarar um contexto de desenvolvimento com qualidade/produtividade sempre em jogo. Já para os alunos de GPP, foi desenvolvido o senso crítico para contornar todos os dilemas de um processo de desenvolvimento, como gerência de qualidade, custos, escopo, prazo e recursos.
Em termos de conquistas acreditamos que o conhecimento dos alunos tenha sido o maior marco, tal que a experiência de trabalho em grupo revelou a todos, nem que minimamente, a imensidão e complexidade que é o processo de desenvolvimento de software. Provendo a todos membros, a graça da experiência em um projeto com cliente real.
Objetivos Não alcançados
O projeto como um todo não pode foi finalizado por questões maiores. A continuação do projeto é totalmente plausível e de grande potencial.
Acredita-se ainda, que em questão de melhoras, não foi atingido o contato desejado com o cliente, para prosseguimento do projeto, seria amplamente recomendado uma forma de trazer os envolvidos para constante contato.
Melhorias futuras
- Melhoria na usabilidade do aplicativo bem como o seu design
- Melhoria na forma como a API gerência os upload de imagem. Migrar pra o AWS bucket.
- Design dos cadernos gerados.
- Testar container do aplicativo e a ações assincronas
Aprendizado
A equipe percebeu que trabalhar com tecnologias emergentes não é favorável ao desenvolvimento. Principalmente quando a equipe de desenvolvimento não possui muita experiência com desenvolvimento e a tecnologia em si. Isso se deve à natura de constantes mudanças e a falta de documentação de tecnologias em desenvolvimento. Dessa forma a equipe chegou a conclusão que a utilização do react-native como o stack de tecnologia do aplicativo não foi a melhor escolha. Contudo a ferramenta tem grande potêncial mas para esse tipo de projeto é melhor a utilização de uma tecnologia estável.
A equipe também enfrentou grande demora para a geração de builds da ferramenta de CI escolhida. Isso se deve ao fato de todos os grupo de GPP e MDS estão na mesma organização, dessa forma a ferramenta gratuita gera apenas uma fila de builds para todos esse projetos. Poderiamos contornar esse problema com a utilização de uma ferramenta de CI diferentes dos outros grupos ou utilizando uma organização diferente.
Projeto
O apk do aplicativo pode ser encontrado nesse link: APK: https://www.dropbox.com/sh/9zzsp97l7z8mo2c/AACS60JFIUlgICIi6fYI0Ib_a?dl=0 Futuramente a equipe fará o deploy para Googleplay