Titulo Estágio
Desenvolvimento de um Mecanismo para Interacção Visual durante uma chamada de Voz-sobre-IP
Área Tecnológica
Engenharia de Software
Local do Estágio
Coimbra
Enquadramento
O standard RCS (Rich Communication Suite) está a ser definido pela GSMA (Associação de operadores criada para definir as redes móveis GSM) para normalizar a implementação de aplicações que irão substituir as funcionalidades de voz e SMS existentes nos telemóveis actuais. As aplicações que seguirem o standard RCS são interoperáveis e permitem comunicar com outros utilizadores, mesmo que sejam clientes de outro operador de telecomunicações.
A GSMA seleccionou a WIT para fornecer a aplicação de referência para iOS e Android, lançada nalguns países Europeus com a marca “joyn”. Esta aplicação permite aos utilizadores comunicar entre si através de voz-sobre-IP, vídeo-sobre-IP, mensagens instantâneas (IM) e file-sharing. Um dos use-cases do RCS é o seguinte: durante uma chamada de voz, os utilizadores podem também trocar conteúdo tal como videos, imagens, localização ou contactos.
A WIT pretende prototipar um conjunto de serviços inovadores, que consistem no envio de conteúdo interactivo, durante uma chamada de voz. O conteúdo visual tem especial interesse quando um cliente telefona para uma empresa e recebe durante a chamada de voz conteúdo visual relevante para a conversação. Exemplos destes serviços são:
• Menu de opções visual nas chamadas para um call-center;
• Informação sobre produtos durante a chamada;
• Informação sobre os serviços de uma empresa;
• Envio de Publicidade durante a chamada de voz;
• Envio de um mapa durante a chamada de voz;
• Envio de promoções durante chamadas em espera;
Para fornecer um serviço interactivo associado a chamadas de voz, é necessário criar uma plataforma de software, integrada na rede do operador, que irá interceptar as chamadas e enviar o conteúdo para o telemóvel do assinante.
A infraestrutura de rede de operadores de telecomunicações móveis assenta numa arquitectura IMS (IP Multimedia Subsystem). Esta arquitectura permite que sejam desenvolvidos novos serviços de telefonia, utilizando protocolos standard como o SIP (Session Initiation Protocol).
Para desenvolver este serviço, a WIT está preparada para acolher e instruir um estagiário nos tópicos de VoIP, SIP, IMS e RCS, protocolos base para a implementação deste estágio.
O estagiário terá acesso aos recursos da equipa de desenvolvimento, e terá à sua disposição um conjunto de Engenheiros experientes que lhe poderão dar ajuda nas dificuldades técnicas.
Apesar do estagiário ser acolhido pela equipa de desenvolvimento este trabalho de estágio não faz parte do roadmap do desenvolvimento de nenhum produto. É um investimento da empresa no treino de futuros profissionais. O que se pretende com estes estágios é fazer “training-on-job” de alunos finalistas e prepará-los para a área de software para telecomunicações, de modo a que no final do estágio o aluno esteja preparado para ser incluído na equipa de desenvolvimento.
No final do estágio, o aluno terá conhecimento detalhado e valioso sobre protocolos VoIP, IMS, SIP e aplicações de software no domínio das telecomunicações.
Objetivo
O objectivo do estágio consiste na implementação de um servidor ligado a uma rede IMS, que irá interceptar as chamadas efectuadas para um conjunto de números e interrogar a aplicação RCS do telefone que iniciou a chamada sobre a capacidade de receber conteúdo interactivo. A aplicação RCS deverá ser alterada para suportar a recepção deste novo conteúdo interactivo.
O estagiário deverá começar por estudar a especificação RCS e a arquitectura IMS que se encontra hoje em dia em funcionamento na maioria dos operadores de telecomunicações, de modo a ganhar conhecimento sobre o seu funcionamento.
Após consolidar o conhecimento sobre IMS e RCS, deverá conduzir um estudo sobre o estado da arte dos serviços de valor acrescentado baseados em RCS. Espera-se que o aluno tenha a autonomia e capacidade crítica necessárias para recolher, analisar e estruturar toda a informação acerca de soluções existentes no mercado. Esta informação deverá ser depois aplicada no desenvolvimento da solução pretendida.
Seguidamente, deverá estudar os protocolos standard, necessários para a fase de implementação do estágio.
De seguida, deverá fazer a análise de requisitos do projecto.
Depois da análise de requisitos finalizada, o estagiário deverá avançar para o desenvolvimento das funcionalidades desejadas.
A aplicação deverá ser incluída no ambiente de testes IMS da WIT e deverá estar disponível para demonstração interna e estudos de benchmarking. No final do estágio, será feita uma avaliação do estagiário e dos conhecimentos adquiridos. Se o resultado for positivo o estagiário será convidado para fazer parte da equipa de desenvolvimento.
Plano de Trabalhos - Semestre 1
Para o 1º semestre estão planeadas as seguintes tarefas:
- Estudo da arquitectura IMS e das especificações RCS.
- Análise detalhada das funcionalidades propostas para o estágio;
- Levantamento do estado da arte;
- Análise de requisitos;
- Elaboração do plano de desenvolvimento;
- Prototipagem de uma aplicação SIP no ambiente IMS;- Desenvolvimento de aplicação inicial Java sobre SIP com as seguintes funcionalidades:
1. Intercepção de chamadas na rede IMS;
2. Obtenção de informação sobre capacidade do terminal RCS;
3. Estabelecimento de ligação e envio de HTML para terminal;
- Desenvolvimento de aplicação Java para simular terminal com capacidade de receber conteúdo interactivo;
- Preparação da solução para demonstrações internas;
- Documentação intermédia do estágio.
Plano de Trabalhos - Semestre 2
Para o 2º semestre estão planeadas as seguintes tarefas:
- Finalização dos desenvolvimento do servidor SIP:
1. Back-office para gestão do servidor;
2. Alteração do fluxo da chamada em resposta a teclas do utilizador;
- Aplicação Android RCS, com base na aplicação RCS da WIT:
1. Exposição da nova capacidade da aplicação;
2. Rendering de conteúdo HTML dentro da aplicação de voz;
3. Envio de input do utilizador para servidor;
- Preparação da solução para demonstrações internas;
- Testes funcionais;
- Avaliação de requisitos não funcionais através de benchmarking;
- Preparação de uma solução de demonstração
- Documentação final do estágio.
Condições
O local de trabalho será na sede da WIT Software em Coimbra.
O estágio será remunerado.
Além da remuneração, o estagiário poderá ser convidado para receber formação na WIT Academy (que inclui tópicos tais como: IMS, VoIP, SIP, iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software). Além desta possibilidade, o estagiário poderá também ser convidado (se tiver bom desempenho) para participar em eventos de team-building e eventos de brainstorming.
Os candidatos a este estágio serão seleccionados através de um conjunto de testes técnicos (com especial ênfase em conceitos de programação, conhecimentos de sistemas distribuídos, tecnologias de internet e bases de dados), testes de QI, de Inglês e de uma entrevista presencial.
Observações
- Toda a documentação de projecto será em Inglês.
- Será usado uma adaptação de SCRUM, como metodologia de desenvolvimento.
- Existe um Scrum Master e um Project Owner. O Project Owner define os requisitos do estágio e acompanha os resultados parciais do projecto. O Scrum Master garante o cumprimento das tarefas, define as prioridades do Backlog, promove os Scrum meetings e acompanha o aluno com mais regularidade.
Orientador
Paulo Sousa
paulo.sousa@wit-software.com 📩