Propostas submetidas

DEI - FCTUC
Gerado a 2024-04-26 13:01:43 (Europe/Lisbon).
Voltar

Titulo Estágio

Service Virtualization Framework

Áreas de especialidade

Engenharia de Software

Local do Estágio

Carnaxide

Enquadramento

O trabalho proposto enquadra-se no âmbito da engenharia de software. O objectivo é a análise das mais recentes práticas e tecnologias no campo da virtualização de serviços pretendendo-se construir uma framework que suporte a criação e gestão de serviços virtuais de forma ágil.

Objetivo

A virtualização de serviços num contexto SOA ou API-driven é utilizada para eliminar dependências decorrentes da indisponibilidade de sistemas, permitindo às equipas de desenvolvimento e qualidade actuar de forma mais produtiva. Este tipo de constrangimentos é causado por inexistência de ambientes de teste, sistemas ainda em construção, complexidade/custo de configuração de novos ambientes, sistemas externos à organização, entre outros.
O objectivo da virtualização é a emulação do comportamento dos componentes indisponíveis durante todo ou parte do ciclo de vida de desenvolvimento. Os serviços virtuais reflectem o comportamento dos serviços originais de acordo com as necessidades, emulando características funcionais através de regras e conjuntos de dados, mas também características não funcionais, simulando tempos de resposta, comunicações assíncronas e diversos padrões de falha.
Pretende-se: Construção de uma framework que suporte a criação de serviços virtuais para ser utilizada em projectos de desenvolvimento BPM ou SOA, durante as fases de desenvolvimento e teste. A sua utilização permitirá (1) aos developers testarem os seus desenvolvimentos independentemente da disponibilidade dos sistemas aos quais se conectam; (2) aos testers, a possibilidade de testes a módulos aplicacionais que seriam impossíveis de testar devido a indisponibilidade de ambientes de teste de outras aplicações. Devendo ser facilitada a configuração de dados específicos, comportamentos e tempos de resposta.
O objectivo do trabalho será criar um ambiente mais ágil e desacoplado dos potenciais
pontos de falha, que salvaguarde a continuidade das tarefas de desenvolvimento e teste em
casos de indisponibilidade, ausência de dados de teste coerentes entre outros factores.

Plano de Trabalhos - Semestre 1

(1 - Formação) Esta componente tem por objectivo dar a conhecer as tecnologias a utilizar para a execução do trabalho e fazer o enquadramento com contexto profissional onde será realizado. O grande foco da formação está relacionado com os potenciais sistemas consumidores de serviços virtuais: a tecnologia Business Process Management Suite e Integration Bus da IBM. Todo o processo de formação será idêntico ao realizado por novos colaboradores da empresa.
(2 – Análise) Esta componente tem por objectivo entender qual o problema a ser abordado. Vai consistir nas seguintes actividades: (1) Pesquisada e análise de referências bibliográficas sobre as áreas de Virtualização de Serviços, Integração, SOA, APIs e DevOps. (2) Análise das componentes de uma framework de virtualização de serviços e tecnologias envolvidas. (3) Análise da solução IBM IIB do ponto de vista de interoperabilidade com ferramentas externas. Produção de um relatório escrito descrevendo a análise efectuada e trabalho relacionado, na área de virtualização de serviços.

Plano de Trabalhos - Semestre 2

(3 – Avaliação de Alternativas) Esta componente tem por objectivo estabelecer os requisitos necessários à framework de virtualização de serviços, elencar diversos cenários e aproximações possíveis. No final deverá ser escolhida uma alternativa para implementação com base em critérios justificativos. (O único requisito tecnológico da SAFIRA é o recurso a tecnologias opensource). Produção de um relatório escrito descrevendo a solução pretendida e racional de selecção.
(4 – implementação) Pretende-se que esta componente seja realizada dentro do enquadramento de projectos existente na organização, partilhando os processos e ferramentas ALM (Application LifeCycle Management) utilizadas por todos os colaboradores para: (1) Documentação dos requisitos a implementar, (2) Definição de planeamento utilizando uma metodologia ágil, (3) Definição da arquitectura do sistema, (4) Aplicação de padrões de arquitectura de software no desenvolvimento da framework.

Condições

Todas as condições necessárias serão disponibilizadas pela KPMG, quer a nível de hardware, quer a nível de software e respectivas licenças.
O estágio será remunerado na sua totalidade.

Orientador

Filipe Bartolomeu
fbartolomeu@kpmg.com 📩