SOLIMVA: A methodology for generating model-based test cases from natural language requirements and detecting incompleteness in software specifications

Autor: Valdivino Alexandre de Santiago Júnior
Jazyk: angličtina
Rok vydání: 2011
Zdroj: Biblioteca Digital de Teses e Dissertações do INPEInstituto Nacional de Pesquisas EspaciaisINPE.
Druh dokumentu: Doctoral Thesis
Popis: Em maior ou menor extensão, a Linguagem Natural (LN) é ainda amplamente usada para elaborar especificações de requisitos de software ou outros artefatos criados para a documentação de requisitos. Entretanto, fornecimentos elaborados em LN apresentam ambiguidade, inconsistência e não completude. Esta tese de doutorado apresenta uma metodologia, SOLIMVA, a qual alcança dois objetivos. O objetivo primário é a geração de casos de teste de sistema e aceitação baseados em modelos a partir de artefatos de requisitos elaborados em LN. Para esse propósito, uma ferramenta, também denominada SOLIMVA, foi projetada e implementada, e tal ferramenta traduz automaticamente requisitos elaborados em LN em modelos Statecharts. Uma vez gerados os Statecharts, outra ferramenta, GTSC, é usada para gerar Casos de Teste Abstratos os quais depois são transformados em Casos de Teste Executáveis. Entre outras características, um método para Desambiguidade de Sentido de Palavras, o qual ajuda no processo de tradução, foi implementado na ferramenta SOLIMVA, e designs combinatoriais são usados para identificar cenários para testes de sistema e aceitação baseados em modelos. A metodologia SOLIMVA foi aplicada a um estudo de caso principal, um produto de software da área espacial relacionado ao Segmento Espacial, e a metodologia foi comparada com uma abordagem manual desenvolvida anteriormente por um especialista sob dois aspectos: cobertura de objetivos de teste e características dos Casos de Teste Executáveis. Em ambos os aspectos, a metodologia SOLIMVA mostrou benefícios tais como uma melhor estratégia com os objetivos de teste claramente separados de acordo com as diretivas dos designs combinatoriais, e a geração de Casos de Teste Executáveis que previram comportamentos que não existiam na abordagem do especialista. Além disso, diretivas para aplicar a metodologia SOLIMVA a um segundo estudo de caso do domínio espacial, relacionado ao Segmento Solo, são também apresentadas. As principais vantagens em aplicar a metodologia SOLIMVA no contexto de um processo de Verificação e Validação são a facilidade de uso e o suporte de um método formal, fazendo com que a metodologia seja potencialmente adequada para ser usada em projetos de software complexos. O objetivo secundário é a detecção de não completude em especificações de software. A SOLIMVA foi então estendida para alcançar esse objetivo secundário. Model Checking combinado com arranjos simples de valores de variáveis e padrões de especificação foram usados para alcançar essa meta. A metodologia SOLIMVA demonstrou a sua eficiência pelo fato de detectar 21 defeitos de não completude, ao ser aplicada ao mesmo estudo de caso principal mencionado anteriormente.
In greater or lesser extent, Natural Language (NL) is still widely used to develop software requirements speci_cations or other artifacts created for documenting requirements. However, NL deliverables su_er from ambiguity, inconsistency, and incompleteness. This PhD thesis presents a methodology, SOLIMVA, which achieves two objectives. The primary objective is to generate model-based system and acceptance test cases considering NL requirements deliverables. For this purpose, a tool, also called SOLIMVA, was designed and implemented and such a tool makes it possible to automatically translate NL requirements into Statechart models. Once the Statecharts are created, another tool, GTSC, is used to generate Abstract Test Cases which are later translated into Executable Test Cases. Among other features, a Word Sense Disambiguation method which helps in the translation process was implemented in the SOLIMVA tool, and combinatorial designs are used to identify scenarios for model-based system and acceptance testing. The SOLIMVA methodology was applied to a main case study, a space application software product related to the Space Segment, and the methodology was compared with a previous manual approach developed by an expert under two aspects: coverage of test objectives and characteristics of Executable Test Cases. In both aspects, the SOLIMVA methodology presented bene_ts such as a better strategy with test objectives clearly separated according to the directives of combinatorial designs, and the generation of Executable Test Cases which predicted behaviors that did not exist in the expert's approach. In addition, guidelines to apply the SOLIMVA methodology to a second case study of the space domain related to the Ground Segment are also presented. The key advantages from applying the SOLIMVA methodology in the context of a Veri_cation and Validation process are the ease of use and the support of a formal method, making it potentially suitable for use in complex software projects. The secondary objective is the detection of incompleteness in software specifications. The SOLIMVA methodology was then extended to achieve this secondary objective. Model Checking combined with kpermutations of n values of variables and specification patterns were used to address this goal. The SOLIMVA methodology has proved its efficiency by the detection of 21 incompleteness defects when applied to the same main case study mentioned earlier.
Databáze: Networked Digital Library of Theses & Dissertations