Projetos apoiados pelo Estado Português e por Fundos Comunitários

Projeto SOA-TA - Candidatura Nº 38239

Breve Descrição:
O projeto SOA Test Accelerator visa o desenvolvimento de uma inovadora solução a ser disponibilizada através do paradigma de Cloud Computing e que é endereçada ao mercado internacional segundo um regime de SaaS, que tem como objetivo efetuar o teste aos processos de negócios de uma qualquer empresa que os disponibilizam através das Plataformas de Serviços que existem no mercado. Pretende-se desenvolver uma solução universal e extremamente flexível, pois esta deverá operar sobre qualquer plataforma de serviços, bem como ser capaz de identificar e configurar os processos das empresas, independentemente de quais eles sejam ou do setor em que atuam.

A solução a desenvolver será capaz de efetuar de forma automática a chamada de vários serviços, os quais constituem o processo de negócio, apresentando a capacidade e inteligência para, em função do resultado obtido pela chamada anterior, decidir qual o serviço a chamar em seguida. No entanto, a diferenciação será ainda mais evidente, uma vez que além da capacidade da solução em desenhar o grafo (processo de negócio) dentro da ferramenta e configurar os vários pontos de decisão, complementado com a inteligência do sistema saber que serviços chamar, a solução será capaz, de forma automática, calcular o número mínimo de casos de teste e identificar os dados de entrada que são necessários para alimentar esses mesmos casos de teste.

Em suma, a WinTrust pretende disponibilizar ao mercado uma solução única e inovadora segundo um regime de SaaS, apresentando a resposta adequada ao mercado para os seus problemas e dificuldades sentidas atualmente que passam pelo aumento exponencial dos serviços disponibilizados, comummente em diversas e heterogéneas tecnologias, o que obriga a um trabalho de integração de grande complexidade e bastante suscetível a erros e falhas, colocando-a um passo à frente da sua concorrência, a qual se traduz em produtos de empresas de referência e conhecidos à escala global, como a ORACLE ou a HP.

Objetivos:
O projeto SOA Test Accelerator visa o desenvolvimento de uma Framework capaz de efetuar a simulação e teste de um qualquer processo de negócio de uma empresa, independentemente do setor em que esta atua, bem como da Plataforma de Serviços que esta utiliza para os disponibilizar.

Pretende-se com este projeto desenvolver uma solução a ser disponibilizada na Cloud e através de um regime de SaaS, o que permitirá à WinTrust fornecer uma Plataforma única e inovadora no mercado internacional, ao mesmo tempo que alinha a vertente de produto com a vertente de serviço, neste caso concreto, denominada TaaS - Testing as a Service. Pretende-se que a Framework SOA Test Accelerator seja uma solução universal, capaz de operar sobre qualquer uma das Plataformas existentes no mercado para integração de serviços. Como tal, é objetivo que a mesma seja suficientemente flexível para dessa forma não só operar sobre qualquer uma das plataformas, como também para ser capaz de identificar e desenhar um qualquer processo de negócio de uma qualquer empresa para posterior teste.

A solução SOA Test Accelerator será constituída por um conjunto de módulos diferenciadores e constituídos por mecanismos e metodologias bastante inovadores. O módulo Configuração dos Processos de Negócio, tal como o próprio nome indica, visa efetuar uma identificação e configuração dos processos de negócio que se pretendem testar. Importa referir que um processo de negócio traduz-se numa sequência de chamadas a serviços. Assim, este módulo irá permitir efetuar a identificação e sintetização de cada uma das chamadas a serviços, resultando deste processo um modelo em forma de grafo, o qual conterá todos os casos possíveis de teste. Em suma, este módulo tem como objetivo efetuar a configuração exata do grafo, o qual consiste na tradução do processo de negócio da empresa.

Após configurado o grafo, o resultado obtido entrará no módulo seguinte que constitui a solução, a saber, o Módulo Redução do Número de Cenários de Teste. Após se ter definido o grafo, é necessário simular que todos os ramos do grafo são percorridos. Este módulo será constituído por mecanismos de desenho de casos de testes baseados em técnicas manuais que se pretende codificar e posteriormente automatizar. Este processo revela-se como um desafio, uma vez que será necessário desenvolver um algoritmo complexo para que seja possível automatizar estes mecanismos tendo como base as técnicas previamente definidas.

Refira-se também que a técnica que servirá de base a este algoritmo estará devidamente suportada pelas melhores práticas defendidas pelo ISTQB (International Software Testing Qualifications Board), o que demonstra bem os parâmetros de qualidade e rigor com que a WinTrust pretende dotar a solução. Este algoritmo terá como objetivo descobrir os vários caminhos possíveis e reduzi-los ao menor número possível, de forma a atingir a taxa de cobertura do teste que for desejada e que terá sido previamente definida.

Para descobrir qual o menor número de caminhos possíveis, pretende-se implementar uma metodologia, a qual permite obter taxas de cobertura do teste com base na análise dos dados de entrada e respetivos dados de saída. Esta taxa de cobertura, será assim conseguida através da análise de grafos que sintetizarão o algoritmo do software em análise.

Definidos e descoberto qual o menor número de cenários possíveis para se atingir a taxa de cobertura desejada, passa-se então para o Módulo Descoberta de Dados, o qual será dotado de um conjunto de mecanismos altamente inovadores e que visam avanços bastante relevantes face ao estado da arte atual. Este módulo tem como objetivo identificar quais os dados de entrada no software para que este percorra o caminho desejado. Pretende-se que esta identificação seja efetuada de forma automática, evoluindo assim a metodologia supramencionada, para uma metodologia onde será possível saber à partida quais os caminhos que se pretende percorrer. Dessa forma, consegue-se identificar quais os dados de entrada necessários. Este conhecimento permitirá automatizar o grafo, bem como o menor número de cenários de teste para cobrir esse mesmo grafo. Adicionalmente, consegue-se também automatizar os dados de entrada.

Após esta informação disponível, esta passa para o módulo Script Generator, o qual será responsável por executar os casos de teste com base na informação disponibilizada pelos módulos anteriores. Será assim criado de forma automática um Script para cada cenário de teste a executar, sendo este efetuado de forma automática suportado pelas ferramentas de teste existentes no mercado, sejam as referidas ferramentas da Oracle ou HP, sejam ferramentas opensource como é o caso do JMeter No âmbito desta iniciativa será dada maior ênfase ao produto JMeter. O resultado da execução deste script deverá mostrar se o comportamento observado está de acordo como o comportamento esperado, ou, ao invés, se os resultados obtidos na saída não eram os esperados, o que por consequência, demonstra a existência de erros.

No final o módulo Validação de Cobertura vai verificar se o grafo foi executado pelos caminhos que era suposto percorrer e assim obter-se a taxa de cobertura desejada.

Em suma, este projeto visa uma solução altamente diferenciadora do que existe atualmente, capaz de se cotar como uma referência no setor a que se dirige, e que fruto dos desenvolvimentos a resultar de si, irá conseguir um conjunto de avanços significativos sobre o estado da arte, quer em termos tecnológicos, quer até em termos científicos, uma vez que resultará numa inovadora metodologia capaz de conseguir automatizar todo o processo.

A WinTrust tem vindo a desenvolver um conjunto de serviços para os seus clientes nesta área, através do teste aos seus processos de negócio a correr sobre as várias plataformas de serviço existentes no mercado. No entanto, fruto de um conjunto de lacunas e limitações identificadas nas ferramentas atuais, bem como das necessidades e dificuldades sentidas pelos seus clientes que passam pelo aumento exponencial dos serviços disponibilizados, comummente em diversas e heterogéneas tecnologias, o que obriga a um trabalho de integração de grande complexidade e bastante suscetível a erros e falhas, a WinTrust considera ser agora a altura ideal para a execução deste projeto. Para o seu sucesso, a empresa irá apoiar-se no seu profundo conhecimento e know-how sobre o setor em que atua, mas também no auxílio do grupo ALGOS do INESC-ID, da qual resultou a metodologia em que a WinTrust pretende apoiar-se para desenvolver este projeto.

Assim, com o desenvolvimento deste projeto, a WinTrust irá conseguir impulsionar o setor onde opera com uma solução disruptiva e marcadamente inovadora, que consegue avanços claros face ao estado da arte, ao mesmo tempo que se diferencia do que existe e que é disponibilizado por empresas que são verdadeiras referências do setor e conhecidas mundialmente como o são a ORACLE e a HP.

Programa Financiador:
Candidatura apoiada pelo FEDER, apresentada pela WinTrust, ao Programa Operacional Regional do Norte, nos termos do Aviso de abertura de concurso para apresentação de candidatura 07/SI/2012 no âmbito da subalínea i) da alíena a) do nº 1 do artigo 5º do Regulamento do Sistema de Incentivos à Investigação e Desenvolvimento Tecnológico, anexo à Portaria nº 146/2007, de 15 de Novembro, alterado e republicado pelas Portarias nº 353-B/2009, de 3 de Abril e 1102/2010, de 25 de Outubro, designado Regulamento SI & DT, criado ao abrigo do enquadramento nacional dos sistemas de incentivos aprovado pelo Decreto-Lei nº 287/2007, de 17 de Agosto, alterado e republicado pelo Decreto-Lei nº 65/2009, de 20 de Março.

Investimento Global:
Investimento Candidatura: 279.000,00 €
Investimento Elegível: 268.000,00 €
Incentivo Aprovado: 196.000,00 €

Datas de realização:
O período de investimento deste projeto decorre entre 2013-08-01 e 2015-06-30.

 

Projeto CrossTT

Breve Descrição:
O projeto "Cross Independent Testing Tool" nasce da vontade da Primavera Technology, a WinTrust e o CCG, adiante designadas por consórcio "Cross Independent Testing Tool", em disponibilizar ao mercado uma ferramenta que possibilite uma automatização de testes em software desenvolvido em diferentes tecnologias e para diferentes plataformas.

Objetivo:
Criar uma ferramenta independente de motores de execução que permita evoluir o estado da arte de produção de testes automáticos, conseguindo-se dessa forma um aumento de eficiência nestas tarefas e uma redução de tempo e do desgaste dos recursos. A solução terá a capacidade de acompanhar o ciclo de desenvolvimento de um software, necessitando apenas de ser configurada e parametrizada para que, testes definidos inicialmente para um software, continuem a ser válidos ao longo do seu desenvolvimento, bastando apenas pequenos ajustes que acomodem a evolução do software. Desta forma, esta será a única solução no mercado capaz de conseguir uma reutilização dos testes, independentemente da linguagem de programação e do motor de execução de testes.

Assim, tendo como ponto de partida as mais recentes técnicas utilizadas, pretende-se desenvolver uma metodologia inovadora e claramente diferenciadora do que existe, capaz de evoluir as soluções disponíveis no mercado atualmente, que se caracterizam pela sua morosidade, complexidade e rigidez, através de uma ferramenta capaz de reaproveitar o trabalho já realizado.

A complementaridade de competências e de interesses comuns no aproveitamento de resultados de atividades de I&DT culminou com a criação deste Consórcio. O projeto "Cross Independent Testing Tool" nasce das necessidades sentidas pelos clientes dos promotores, e pelos próprios, em desenvolverem uma plataforma que permita realizar testes de forma mais rápida, eficiente e num menor período de tempo.

Programa Financiador:
O projeto "Cross Independent Testing Tool" foi apresentado no âmbito do Quadro de Referência Estratégico Nacional (QREN) na tipologia de projetos de I&DT em Co Promoção, com o número de projeto 38256 e financiado pelo EU/FEDER, através do POFC.
 
Investimento Global: 391.420,95 €
Incentivo Aprovado: 248.266,42 €

Datas de realização:
O período de investimento deste projeto decorre entre 2014-01-01 a 2015-06-30.

 

Com o apoio: