Propostas com aluno atribuído (auto-proposta)

DEI - FCTUC
Gerado a 2024-11-24 16:11:55 (Europe/Lisbon).
Voltar

Titulo Estágio

Upgrade do OneCare para arquitetura microserviços

Áreas de especialidade

Engenharia de Software

Local do Estágio

Rua Pedro Nunes, Edifício D 3030-199 Coimbra

Enquadramento

A linha de produtos OneCare apesar de ter várias aplicações é basicamente uma arquitetura monolítica em que é difícil conciliar atualizações de serviço frequentes e controlo de qualidade da solução. Esta situação agrava-se com o crescimento do produto. Apesar de muitas atualizações implicarem apenas alterações localizadas é sempre necessário garantir o controlo de qualidade de toda a solução executando a bateria de testes completa. Alguns exemplos de novos componentes são drivers para novos sensores, novos protocolos para interoperabilidade, suporte a atualizações de protocolos de terceiros. Nestes casos apenas seria necessário provar que os componentes se comportam como esperado.

Objetivo

O objetivo do estágio é implementar o núcleo do OneCare numa arquitetura micro serviços que permita atualizações ágeis da plataforma ao mesmo tempo garantindo a qualidade, disponibilidade e escalabilidade do sistema. Adicionalmente deverá ser possível instalar apenas os componentes necessários e suficientes para proporcionar as funcionalidades que o cliente necessita.
O interface do sistema está implementado em JSF estando provado que proporciona uma boa experiencia de utilização aos pacientes, cuidadores e operadores da plataforma. Será necessário efetuar algumas alterações mas pretende-se minimizar o impacto das alterações estruturais no interface de utilizador.
Crucial para toda a solução, uma vez que se tratam dados especialmente sensíveis são os mecanismos de autenticação, autorização e auditoria do sistema. Tem de ser provado que a introdução de uma arquitetura micro serviços não compromete a segurança do sistema e que não é permitida a ligação ao sistema de componentes maliciosos que poderiam colocar em causa a segurança e integridade dos dados.
O aluno terá ainda de demonstrar que a solução proposta cumpre o projeto de diretiva europeia relativa à proteção de dados pessoais.
No final do ano pretende-se que pelo menos os produtos OneCare Safe e OneCare Sensing estejam migrados para a nova arquitetura.

Plano de Trabalhos - Semestre 1

O processo a utilizar durante o primeiro semestre será ACDM, fases 1 a 6. As fases 1 e 2 têm por objetivo estabilizar os requisitos funcionais, atributos de qualidade e restrições técnicas e de negócio devendo. As fases 3,4,5 e 6 são dedicadas a desenvolver e avaliar a arquitetura do sistema. Durante esta fase deverão ser efetuadas as experiencias necessárias que provem que todas as restrições técnicas ou de negócio são cumpridas assim como os atributos de qualidade.
Fase 1 – Set Out ACDM Fases 1 e 2.
No final de outubro o documento de requisitos deve estar na primeira versão.
Pretende-se apenas que o aluno formalize os requisitos relativos á migração do sistema e naõ os requisitos completos para o produto. De acordo com o processo ACDM os requisitos poderão ser atualizados durante o desenvolvimento da arquitetura.
Fase 2 – Nov a Jan ACDM fases 3 a 6.
Tendo em conta a experiencia da Intellicare com utilização do ACDM e a carga horária, o aluno deverá conseguir efetuar 4 a 6 iterações na especificação da arquitetura incluindo as experiencias necessárias para documentar e provar que as decisões de arquitetura cumprem todos os requisitos necessários.

Plano de Trabalhos - Semestre 2

No segundo semestre o aluno deverá migrar a solução OneCare Safe e OneCare Sensing do modelo atual para a arquitetura que desenvolveu. Tratando-se de um volume de trabalho com alguma dimensão o aluno poderá ter ajuda de um programador junior tendo de assumir o papel de líder de equipa.
Plano de trabalho:
Fevereiro, definição do plano de projeto incluindo definição das métricas a utilizar para monitorização do progresso.
Março a junho: implementação da migração
Nesta fase o aluno deverá ter ajuda de um programador júnior sendo sua responsabilidade a gestão do projeto incluindo distribuição de tarefas, controlo de qualidade e reporte de progresso.
O ambiente de desenvolvimento será Java, o servidor será wildfly, servidor de integração será Jenkins. O aluno será responsável pro criar e manter o ambiente de integração incluindo a gestão das bases de dados sobre as quais os testes são executados. Tratando-se de uma aplicação que irá ser executada com servidores em cluster o aluno terá de definir a estratégia de testes para um ambiente de staging.
Julho: Elaboração do relatório de estágio.

Condições

O aluno terá á sua disposição todos os recursos necessários para a implementação do projeto em termos de equipamentos.
Poderá ter ainda um programador júnior que o irá ajudar na implementação do segundo semestre.
Outras condições:

• Subsidio de alimentação (escalão correspondente a 6,15€ - sujeito a acerto)
• Esta parcela varia do primeiro para o segundo semestre de acordo com a alocação do estagiário
• 35€ mensais para ajuda em transportes
• Prémio a atribuir no final do estágio dependendo do desempenho

Observações

O aluno proposto para o estágio realizou estágio de verão na Intellicare tendo mostrado um desempenho exemplar. Sendo nosso conhecido temos confiança que vai dedicar-se ao projeto e abraçar a enorme quantidade de desafios que terá de ultrapassar.
O aluno proposto é um atleta de alta competição de natação quem ambiciona participar nos grandes eventos da modalidade no próximo ano. A Intellicare está preparada para garantir as condições de trabalho em termos de horário semanal e gestão de presenças para garantir ao aluno/atleta a compatibilização entre o estágio e o tempo que ele terá de lhe alocar e as atividades de treino e competição de natação.

Orientador

António Pedro Gaspar Damasceno
adamasceno@intellicare.pt 📩