1 / 35

Metodologia de geração de teste para sistemas embarcados – uma experiência no INPE

Metodologia de geração de teste para sistemas embarcados – uma experiência no INPE. Ana Maria Ambrosio 06/out/2007. Tópicos. Visão geral do INPE Metodologia de teste CoFI Aplicação da CoFI no projeto QSEE: lições aprendidas e resultados obtidos. INPE.

hung
Download Presentation

Metodologia de geração de teste para sistemas embarcados – uma experiência no INPE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Metodologia de geração de teste para sistemas embarcados – uma experiência no INPE Ana Maria Ambrosio 06/out/2007

  2. Tópicos • Visão geral do INPE • Metodologia de teste CoFI • Aplicação da CoFI no projeto QSEE: lições aprendidas e resultados obtidos

  3. INPE Instituto Nacional de Pesquisas Espaciais Subordinado ao Ministério de Ciência e tecnologia - MCT Missão: Produzir ciência e tecnologia nas áreas espacial e do ambiente terrestre e oferecer produtos e serviços singulares em benefício do Brasil.

  4. Instalações do INPE

  5. Principais áreas de atuação Laboratório de Integração e Testes Ciências espaciais e atmosféricas Previsão de tempo e estudos climáticos Engenharia e Tecnologia Espacial Observação da Terra Centro de rastreio e controle de satélites

  6. Áreas favorecidas pelo programa espacial brasileiro no contexto do INPE energia agricultura ecosistemas clima saúde biodiversidade desastres

  7. Missões espaciais realizadas MECB – Missão espacial completa brasileira SCD1/93 SCD2/98 SCD2A/97 CBERS – China-Brazil Earth Resources Satellite CBERS3 - CBERS1/99 CBERS2/03 CBERS4 - CBERS2B/07 Satélites científicos e tecnológicos Mirax - SACI-1/99 SACI-2/99 Satec/03

  8. Metodologia de geração de teste para sistemas embarcados COFI Conformidade e Falhas Injetáveis

  9. Motivação • “Os excelentes resultados de geração automática de teste de software, apresentados pela academia ainda não estão sendo adotados na indústria. “ Fonte: Lai, 2002

  10. Condado Geração automática de teste a partir de FSM/EFSM inicial(Idle) trans(Idle,t1,WCon,L0,Ln):- transmitu(‘SENDr',L2,Ln). receiveu(‘CR',L0,L1), trans(WCon,t2,C,L0,Ln):- transmit(‘CC’,L2,Ln). receiveu(‘SEND',L0,L1), ... ConDado Seqüência abstrata de casos de teste senddata (U, SENDrequest) recdata (L, CR) senddata (L, CC) recdata (U, SENDconfirm) senddata (U, DATArequest, “xHn*e”, 2, 14) recdata (L, DT) senddata (L, ACK) recdata (L, DISrequest) senddata (L, DISrequest) recdata(U, DISindication)

  11. Dificuldades • teste de conformidade com geração automática: • baseada em métodos formais, • requer um modelo formal completo que represente o comportamento do software  difícil de ser obtido • pode gerar um número intratável de casos de testes

  12. CoFI- Conformidade e Falhas Injetáveis • Sistematizar a criação de casos de testes • Atender necessidades de teste de software em aplicações espaciais • Fazer uso das técnicas e ferramentas de geração automática de teste a partir de FSM/EFSM • Incluir a técnica de injeção de falhas Objetivo:

  13. Descrição formal do software Visão geral da CoFI Passos de transformação da descrição do software diagramas UML Especificações textuais Seqüência Teste Arquitetura de teste Casos de teste Casos de falha

  14. Passos da CoFI 1. SERVIÇO /propósitos de teste Definição do contexto da IUT 2. Usuários, meio físico 4. Casos de uso 3. Entradas, Saídas,Arq. Teste, PCOs CENÁRIOS NORMAIS CENÁRIOS EXCEPCIONAIS 5. Diagrama Seqüência Normal Transformações 6. Diagrama EstadosNormal 8. Matriz de Transições 9. Modelo de Falhas 10. Diagrama Seqüência Excepcional 11. Diagrama Estados Excepcional Geração automática 7. Deriva casos de teste 12. Deriva casos de falha Seqüência de teste CoFI

  15. Decomposição do SuT na CoFI Por serviço (ou por propósito de teste), que por sua vez é dividido em cenários Por tipo de comportamento: • normal; • exceções especificadas, • caminhos furtivos (entradas inoportunas) • tolerância a falhas (falhas provocadas pelo hardware)

  16. Modelos parciais do comportamento

  17. Aplicação da CoFI no projeto QSEE – Qualidade de Software Embarcado em aplicações Espaciais : lições aprendidas e resultados obtidos

  18. Projeto QSEE Qualidade de Software Embarcado em aplicações Espaciais • Transferência de tecnologia do INPE para a indústria nacional de software • Uso das normas ECSS pela Ciências Espaciais e Atmosféricas (CEA/INPE) no desenvolvimento de software de cargas úteis de satélite • Desenvolvimento de um processo de aceitação de software para o INPE apoiado na abordagem de Verificação e Validação Independente de Software Objetivos:

  19. SWPDC - aplicação em teste • software embedded in an Payload Data handling Computer that controls scientific experiments on-board of a MIRAX satellite under development at INPE • C language; Labview • Main functions: • Scientific data aquisition • housekeeping, test & diagnostic data preparation • error recognition and handling mechanism for commmunication, memory and processor failures • Communication with OBDH, event processors, thermistors

  20. Ambiente de teste do SWPDC

  21. EPPs Simulator QSEE-TAS Watchdog simulation Mem. error Restrições, Facilidades de Teste Modelo de falhas de hardware: memória, processador comunicação SWPDC embarcado Na placa do PDC

  22. Ambiente de teste no INPE

  23. Criação dos modelos de estado Serviços Tipos de comportamento Especificação (Norm) Normal (SExc) Specified exception (SPat) Sneak path (M&Pr) Fault Tolerance Entradas/Saídas Ambiente de teste Modelos Nomes dos eventos Comandos para o injetor de falhas Tipos de falhas de hw, parâmetros, temporizadores

  24. Tipos de falhas x entradas/saídas Comunicação Memória Processador

  25. S4 - serviço Dados de teste – M&Pr

  26. Derivação de casos de teste e casos de falhas MME para edição Modelos Condado para geração Arquivo de saída CTest.seq

  27. Arquivo com casos de teste de uma máquina File.seq

  28. Resultados 11 serviços foram definidos 97 modelos gerados 770 casos de teste 51 erros

  29. Casos de falha 319 normais 12 51 erros 39 770 casos 451 Casos de falha

  30. Comentários sobre os resultados do projeto QSSE • Os resultados surpreenderam com 51 erros ainda encontrados • Considerando que a validação se deu sobre um software fornecido por uma empresa Brasileira de Software proeminente, desenvolvido por uma equipe competente sob rigorosas regras de garantia de qualidade • 45% erros de código • 33% erros de não-conformidade nos documentos • 22% ambos • Considerando que todas as não-conformidades entre código e documentos foram computadas. • Atenção às falhas é mais efetivo que no comportamento normal para a validação

  31. Lições aprendidas – CoFI em um caso real O esforço de criar os modelos foi compensado pela superior organização dos testes alcançada com a aplicação da metodologia CoFI em comparação com o projeto dos testes de forma ad-hoc Os modelos voltam a atenção dos testadores para falhas e exceções que podem ocorrer durante a operação do software levando ao projeto de situações que os desenvolvedores normalmente não pensam Os casos de teste gerados pela Condado são auto-contidos, i.é, cada caso pode ser executado independentemente, desta forma o veredicto não depende da ordem de execução dos casos e facilita a re-execução.

  32. Comentários sobre a metodologia de teste CoFI A metodologia CoFI reduz a distância entre a prática (geração de teste a partir de uma especificação textual) e o uso de métodos formais (especificação em autômatos) É de fácil aprendizagem e permite automação dos passos, pois usa modelos UML Possibilita reuso em teste, porque a geração parte da especificação Orienta a definição de experimentos determinísticos para Injeção de Falhas

  33. Estação Espacial Internacional Construção 1998 - 2005 Sputnik – 1º satélite artificial a orbitar a terra - USRR 1957 ana@dss.inpe.br

More Related