Relatório Interno Inpe
Projeto ATIFS - Ambiente de Teste Baseado em Injeção de Falhas
por Software - www.inpe.br/atifs
Responsáveis: |
Ana Maria Ambrosio |
|
Fátima Mattielllo Francisco |
1. Introdução
O objetivo deste projeto é a exploração de técnicas e métodos de teste de software de aplicações espaciais. Esta exploração é apoiada no desenvolvimento de um sistema para testes que usa a técnica de injeção de falhas por software e conceitos de teste de conformidade de protocolos de comunicação. As áreas cobertas pelo projeto são:
- geração automática de casos de teste a partir de especificação formal, por exemplo, uma Máquina de Estados Finita,
- suporte à execução dos testes: permite realizar testes de conformidade, de interoperabilidade, de tolerância a falhas, através de uma arquitetura comum,
- facilidade de injeção de falhas de forma controlada para validação de sistemas Tolerantes a Falhas,
- armazenamento, tratamento e análise dos dados coletados durante os testes,
- manutenção de histórico de testes,
- medidas de eficiência de mecanismos de Tolerância a Falhas, como por exemplo, o Fator de Cobertura (probabilidade do sistema continuar corretamente na presença de uma falha), cujo valor é importante na avaliação da confiabilidade do software em teste.
2.Principais Resultados e Atividades Desenvolvidas
2.1. Projetos/trabalhos concluídos
As atividades do projeto ATIFS concluídas neste ano são:
a) definição de uma estratégia de teste que usa a ferramenta MME e ConDado e
A estratégia se baseia em análise de riscos e descrição funcional em Casos de Uso. A descrição desta estratégia está na referência [2].
Os resultados dos testes gerados para a aplicação espacial: “Software de apoio à elaboração do Plano de Vôo do Satélite de Aplicações Científicas (SACI)”, encontram-se descritos na dissertação de mestrado a ser defendida no início do ano que vem, na UNICAMP.
Este trabalho permitiu concluir que:
- os critérios para análise de risco aplicados pela estratégia coincidiram com a intuição do especialista no desenvolvimento do software real.
- o uso de aplicações reais como estudos de caso aproxima o trabalho acadêmico à realidade dos problemas e motiva o pesquisador, sendo benéficos para ambos os lados.
b) Definição de um processo de teste de conformidade que e se apoia no uso das ferramentas MME, Condado e fSofist (injeção de falhas)
O processo se baseia nos conceitos da ISO9646 para testes de conformidade. A descrição deste processo está publicada na referência [3].
Este processo de teste de conformidade foi aplicado à norma, da ESA, ECSS-E-70-41A que descreve os serviços de utilização de telemetria e telecomando, cuja descrição encontra-se no relatório [6]
c)Correções na ferramenta PerformCharts, desenvolvida no Laboratório Associado de Computação (LAC) para integração à Condado.
- A integração destas ferramentas permitirá o uso integrado de análise de desempenho e geração automática de casos de teste, permitindo novas explorações que combinem estas duas áreas.
2.2. Resultados parciais obtidos.
Como resultados parciais podemos citar o re-projeto da Fsofist com o uso de padrões de projeto e a exploração de técnicas que evitem a explosão de estados em especificações de sistemas complexos. As publicações [4] a [5] ilustram estes resultados parciais.
2.3. Principais campanhas técnico-científicas realizadas:
- Campanhas:
- Apresentação das ferramentas e resultados de uso das mesmas nos workshops do projeto Plavis realizados em Março, em Setembro e em Novembro de 2004.
- Principais parceiros e intercâmbios.
Neste projeto da Divisão de Desenvolvimento de Sistemas de Solo - DSS, mantivemos cooperação com as seguintes divisões e áreas do INPE:
- Laboratório Associado de Computação e MatemáticaAplicada - LAC,
- Divisão de Eletrônica Aeroespacial - DEA,
- Divisão de Mecânica Espacial – DEM,
- Coordenação Geral de Ciências Espaciais e Atmosféricas – CEA.
- Objetivo e local da campanha
O objetivo das apresentações sobre o projeto ATIFS é promover o uso das ferramentas em outros contextos e divulgar os resultados obtidos até o momento.
- Apoio financeiro (interno ou externo).
- Transporte proporcionado pelo INPE para participação dos funcionários envolvidos no projeto em reuniões técnicas na UNICAMP.
2.4. Comparação entre metas previstas e realizadas.
A tabela a seguir mostra, na coluna da esquerda, as atividades previstas para realização em 2004 e na coluna da direita, uma análise e comentários sobre as realizações, indicando as publicações decorrentes da execução da atividade e as relações com outros grupos de trabalho. No caso da impossibilidade de realização da atividade prevista, o motivo é explicitado.
Atividades previstas para o ano 2004 |
Análise e comentários sobre a execução |
- avaliar uma estratégia de testes de aplicação Web utilizando a Condado (tese de mestrado da Danielle C. Guimarães)
|
- a estratégia de teste foi direcionada para testes de sistemas reativos e não mais aplicações WEB. Resultados parciais podem ser vistos na referência [2].
|
- implementar um algoritmo otimizado para realizar percurso em grafo (base da geração da teste codificação) em linguagem procedural, a ser integrado à ferramenta MME.
|
- Não executada por falta de recursos.
|
- estender a Fsofist para testes multi-ponto, necessária para o sistema de teste de computadores de bordo.(tese de mestrado)
|
- Trabalho em andamento. Resultados parciais na referência [4].
|
- integrar as ferramentas PerfromCharts e ConDado
(tese de mestrado)
|
- Trabalho em andamento no contexto da tese de mestrado de Ana Sílvia S. Amaral (LAC) sob orientação do Dr. Nandamudi Vijaykumar (LAC) e da Dra. Eliane Martins (IC/Unicamp), com acompanhamento das responsáveis deste projeto no INPE. Resultados parciais estão publicados em [5].
|
- integrar o uso das ferramentas do ATIFS na validação protocolo de comunicação do experimento APEX com o computador de bordo do satélite FBM.
|
- Parcialmente realizada. A modelagem do aplicativo que reconhece comandos no APEX foi modelada e os casos de teste gerados pela Condado. Entretanto a integração de todas as ferramentas não foi possível devida a falta de recursos para conclusão das mesmas.
|
- Instalar e promover afamiliarização da Fsofist usando o software de Recepção de TM do MASCO como demonstrativo com o objetivo de disponibilizá-la para outros projetos.
|
- Não executada por falta de recurso humano. Esta atividade foi prevista contando com o envolvimento de um aluno de mestrado do IC/ UNICAMP que foi contratado pelo CPqD.
|
- estudar e comparar a norma para teste de protocolo ISO-9646, na qual o ATIFS foi baseado, e as normas para desenvolvimento e teste de software de aplicações espaciais, ECSS e CCSDS e propor uma metodologia de teste de serviços de bordo.
|
- Trabalho concluído. Ver referências [1] [3] [6].
|
- Definir e prover facilidades para a atualização do site do ATIFS pelos participantes
|
- Uma primeira versão do site foi desenvolvida e encontra-se disponível, porém falta recursos para manter as atualizações.
|
- Promover workshops do projeto
|
- Devido a participação de todos membros do ATIFS no projeto Plavis, os workshops do ATIFS foram realizados em conjunto.
|
- Participar de eventos nacionais e internacionais na área de teste de software
|
- Participação na Conferência Internacional de Operações de Satélites (SpaceOps2004)
|
2.5. Análise e comentários sobre os principais destaques e problemas verificados no período, e comparação com o desempenho do ano anterior.
O envolvimento da Divisão de Desenvolvimento de Sistemas de Solo - DSS neste projeto tem trazido benefícios diretos às atividades de desenvolvimento de sistemas computacionais e software caracterizadas como área de competência da divisão, uma vez que ele tem permitido a aplicação do estado da arte no que concerne a testes de software aos projetos de missões espaciais em andamento.
A possibilidade de aplicar as ferramentas e metodologias de teste a implementações reais em projetos de desenvolvimento em andamento no INPE, ilustra que a cooperação entre pesquisa e desenvolvimento é factível e traz vantagens para ambas as partes.
Estudos de caso com protocolos de comunicação solo-bordo de satélites, com sistemas de teste de computadores de bordo e sobre as normas de padronização de aplicações espaciais é fundamental para a capacitação das equipes da divisão uma vez que mantém o foco de especialização consonante com a atividade fim da instituição em aplicações espaciais.
Através deste projeto de pesquisa aplicada temos contribuímos com outros setores da instituição como:
- Setor de Lançamento de Balão do INPE – sob a Coordenadoria de Ciências Espaciais (CEA),no aprimoramento da validação e modelagem do protocolo OBDH – APEX,
- Divisão de Engenharia Espacial (DEA), na orientação para realização de uma arquitetura reutilizável para sistemas de teste de computadores de bordo;
- Laboratório Associado de Computação e Matemática Aplicada (LAC), na definição e orientação de teses de mestrado e doutorado em assuntos diretamente relacionados com a área de engenharia e tecnologia espacial.
2.6. Publicações Técnico-Científicas
Os trabalhos publicados durante o ano de 2004 estão listados a seguir:
[1] Ana Maria Ambrosio, , Eliane Martins, Claudia. S. Silva M.F. Mattiello-Francisco,N.L. Vijaykumar,
On the use of test standardization in space communication applications. AIAA. Eighth International Conference on Space Operations SpaceOps2004, Montreal, Canadá, 17 a 21 de maio de 2004.
[2] Eliane Martins, Daniele C. Guimarães, Ana Maria Ambrosio.
STER: A Strategy for TEsting Reactive Systems . IEEE Computer Society - 2004 International Conference on Dependable Systems and Networks DSN2004 – Fast Abstract, 27 june – 01 july 2004, Florence, Italy.
[3] Ana Maria Ambrosio, Eliane Martins, N.L. Vijaykumar, Solon V. de Carvalho.
CoFI: a Test Process for Space Application Service Validation Anais do IV Workshop dos Cursos da Computação Aplicada do INPE – IV WORCAP, 20 e 21 de outubro de 2004, INPE, São José dos Campos, SP, Brasil
[4] Claudia. S. Silva, Eliane Martins, N.L.Vijaykumar.
Utilização de Padrões de Projeto na arquitetura da FSoFIST - Anais do IV Workshop dos Cursos da Computação Aplicada do INPE – IV WORCAP, 20 e 21 de outubro de 2004, INPE, São José dos Campos, SP, Brasil
[5] Ana Silvia M. S Amaral; N.L. Vijaykumar, Eliane Martins.
Estudo de Técnicas usadas em verificação formal de modelos para prevenção do problema “explosão de estados”. Anais do IV Workshop dos Cursos da Computação Aplicada do INPE – IV WORCAP, 20 e 21 de outubro de 2004, INPE, São José dos Campos, SP, Brasil.
[6] Ana M. Ambrosio, Eliane Martins,N.L.Vijaykumar, S.V. de Carvalho. CoFI –
Conformance and Fault Injection – a testing process including test and fault cases derivation for space application software validation.Relatório INPE - REPORT - INPE-11485-RPQ/779 - October 2004.
2.7. Atividades de Divulgação Técnico-Científica
Os trabalhos relacionados ao projeto ATIFS foram apresentados nos seguintes eventos:
- 2004 International Conference on Dependable Systems and Networks - DSN2004 June 2004 - Florence, Italy;
- International Conference on SpaceOperations 2004, Montreal, Canadá, 17 a 21 de maio de 2004;
- IV Workshop dos Cursos da Computação Aplicada do INPE – IV WORCAP, 20 e 21 de outubro de 2004, INPE, São José dos Campos, SP, Brasil,
- Workshops do projeto Plavis realizados na UNICAMP e na USP/São Carlos.
2.8. Comentários e Metas para 2005
Dando continuidade aos resultados alcançados no ano anterior, pretende-se no próximo ano atingir as seguintes metas:
- Continuidade aos trabalhos de mestrado e doutorado
- Extensão das ferramentas com nova tecnologia
- Realizar comparações de casos de teste gerados pela Condado com outras técnicas, estratégias e ferramentas, utilizando aplicações reais desenvolvida pelo INPE.
As atividades a serem realizadas para atingir as metas no próximo ano são relacionadas na tabela abaixo.
Atividades previstas para o ano 2005 |
Estudo de técnicas para evitar explosão de estados usando statecharts e máquina de estados finita (CONDADO e PerformCharts). |
Promover a implementação da Condado e da GeraSCript sob a plataforma Eclipse da IBM. |
Converter a saída dos casos de teste da Condado para um formato XML, para substituir o TCL. |
Pesquisar e projetar uma ferramenta que estenda a Condado para gerar dados mais coerentes ao invés de aleatórios, usando algoritmos evolutivos. |
Re-projetar a Fsofist usando padrões de projeto. |
São José dos Campos, 26 de novembro de 2004.
Ana Maria Ambrosio
Maria de Fátima Mattiello-Francisco