Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/11693
Title: Uma técnica para modelagem e verificação de programas JAVA concorrentes auxiliada por anotações de código.
Other Titles: A technique for modeling and verifying competing JAVA programs aided by code annotations.
???metadata.dc.creator???: OLIVEIRA, Elthon Allex da Silva.
???metadata.dc.contributor.advisor1???: FIGUEIREDO, Jorge César Abrantes de.
???metadata.dc.contributor.advisor2???: GUERRERO, Dalton Dario Serey.
???metadata.dc.contributor.referee1???: FECHINE , Joseana Macedo.
???metadata.dc.contributor.referee2???: SIMÃO, Adenilso da Silva.
Keywords: Verificação de Software;Programas Concorrentes;Verificação de Modelos;Métodos Formais;Software Verification;Concurrent Programs;Model Verification;Formal Methods
Issue Date: 2-Jun-2006
Publisher: Universidade Federal de Campina Grande
Citation: OLIVEIRA, E. A. da S. Uma técnica para modelagem e verificação de programas JAVA concorrentes auxiliada por anotações de código. 2006. 148 f. Dissertação (Mestrado em Ciência da Computação) Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2006. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/11693
???metadata.dc.description.resumo???: Métodos formais vêm sendo utilizados muito hoje em dia em projetos de desenvolvimento em que há uma grande exigência de que o software se comporte exatamente conforme esperado. Entretanto, os projetos que fazem uso de métodos formais se limitam aos poucos projetos que estão dispostos a investir em recursos humanos capacitados. Neste trabalho é apresentada uma técnica desenvolvida para viabilizar a inclusão de métodos formais, mais especificamente a técnica de verificação de modelos (model checking), nos processos de desenvolvimento de software concorrente orientado a objetos. É então definida uma linguagem de descrição comportamental capaz de descrever e abstrair o comportamento de programas orientados a objetos com múltiplas linhas de execução. Tal linguagem, escrita junto ao código na forma de linguagem de anotação, atua como mecanismo de abstração do programa a ser verificado. Por ser uma linguagem semelhante a uma linguagem de programação, o programador é quem modela seu próprio código, dispensando o especialista que seria necessário para modelagem formal do sistema. Além disso, por ser de anotação, ameniza o problema da sincronização entre o modelo e o sistema modelado. Os modelos descritos usando a linguagem de descrição comportamental são então traduzidos para uma linguagem formal executável existente. A partir deste modelo formal e das propriedades especificadas a serem verificadas, é realizada a verificação de modelos utilizando um verificador de modelos. O desenvolvedor permanece em contato apenas com as anotações e os resultados obtidos no processo de verificação. O restante do processo ocorre de forma totalmente escondida do usuário, numa caixa preta.
Abstract: Formal methods have been used so much nowadays in development projects in where there is a requirement for the software behavior being as it is expected to be. However, there are few projects that are disposed to invest their money in capable human resources. In this work it is presented a technique developed for making it easier to use formal methods, model checking more precisely, in the concurrent object oriented software development processes. It is defined a behavioral description language that is able to model multi-threaded object oriented programs. Such a language, written together with the source code, in an annotation language format, acts like the abstraction of the program to be verified. Due to its similarity to a programming language, the programmer is who models its own code, not being necessary to have an expert to formal modelling of the system. Besides, also due to its annotation characteristic, it eases the synchronization problem between the model and the modelled system. The described models using the behavioral description language are translated to an existent executable formal language. With this formal model and the specified properties to be checked in hands, the model checking process is done by using a model checker. The developer just stays in direct contact with annotations and returned results from the verification process. The rest of the process occurs in a totally hidden way to the user, in a black box.
Keywords: Verificação de Software
Programas Concorrentes
Verificação de Modelos
Métodos Formais
Software Verification
Concurrent Programs
Model Verification
Formal Methods
???metadata.dc.subject.cnpq???: Ciência da Computação
URI: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/11693
Appears in Collections:Mestrado em Ciência da Computação.

Files in This Item:
File Description SizeFormat 
ELTHON ALLEX DA SILVA OLIVEIRA - DISSERTAÇÃO (PPGCC) 2006Elthon Allex da Silva Oliveira - Dissertação (PPGCC) 2006.1.2 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.