Barnabé tem um afilhado que sempre foi muito ligado em tecnologia, e por isto acabou recebendo como presente um treinamento de desenvolvimento de portais do seu Padrinho. Em modo de agradecimento, ficou combinado entre ambos que ao final do curso o Crispin iria de alguma forma ajudar o Barnabé com o controle da sua quitanda, entregando um portal para automatizar este trabalho.
De fato a entrega foi feita, Barnabé ficou muito feliz porém com o tempo começou a perceber que nem todas as informações apresentadas condiziam com o que o mesmo sabia que tinha. Crispin informou que isso era um MVP, e que assim que ele voltasse de férias iria continuar com novas entregas.
Barnabé não tem tempo disponível para aguardar seu afilhado, e o controle na caderneta já está sendo muito estressante.
Você foi contratado pelo Barnabé, como consultor de desenvolvimento de sistemas, para entregar o que ele precisa:
- Sistema confiável com o que mostra.
- Sem lentidões.
Na conversa de levantamento de requisitos com o Barnabé, obviamente você não obteve sucesso em levantar documentações técnicas e nem funcionais escritas pelo Crispin, pois o mesmo não deixou nada. Por sorte, você encontrou no servidor um arquivo txt com as seguintes informações:
NÃO ESQUECER Antes de começar a programar, preciso de: NodeJS, Uma vez com o node instalado, preciso: npm install npm install -g bower npm install -g grunt bower install
Depois que tiver feito isto, preciso executar o grunt: grunt serve
!!!IMPORTANTE!!! Estou usando como Frontend o AngularJS
!!!TO DO!!! Já criei a camada de testes do projeto integrada com o Maven, porém preciso criar os teste unitários. No próximo módulo aprenderei isso.
!!!NÃO ESQUEUCER!!! Preciso do maven para rodar o projeto. É springboot, não SpringBreak! Lembrar de baixar o SQL Developer para conectar no banco, ao invés de usar o shell. Arquivo com dados de acesso ao banco em application.properties
O objetivo deste laboratório é avaliar os seguintes conceitos:
- Técnicas de otimização de sistemas;
- Boas práticas de programação;
- Habilidade em desenvolvimento para Frontend, Backend e Banco de dados;
- Capacidade de abstração de cenários com pouca informações técnicas;
- Será considerado para avaliação um fork entregue até a hora de limite final estipulado pelo avaliado. Compartilhe seu fork com o e-mail: [email protected]