Registro:
| Documento: | Tesis de Grado |
| Título: | MENTAT : una herramienta de validación dinámica para código Java |
| Autor: | Bonfiglio, María Antonia; Nussembaum, Pablo Gabriel |
| Editor: | Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales |
| Publicación en la web: | 2025-06-12 |
| Fecha de defensa: | 2015 |
| Fecha en portada: | 2015 |
| Grado Obtenido: | Grado |
| Título Obtenido: | Licenciado en Ciencias de la Computación |
| Departamento Docente: | Departamento de Computación |
| Director: | Czemerinski, Hernán |
| Director Asistente: | Pavese, Esteban José |
| Jurado: | Asteasuain, Fernando; Garbervetsky, Diego David |
| Idioma: | Español |
| Formato: | PDF |
| Handle: |
http://hdl.handle.net/20.500.12110/seminario_nCOM000674_BonfiglioNussembaum |
| PDF: | https://bibliotecadigital.exactas.uba.ar/download/seminario/seminario_nCOM000674_BonfiglioNussembaum.pdf |
| Registro: | https://bibliotecadigital.exactas.uba.ar/collection/seminario/document/seminario_nCOM000674_BonfiglioNussembaum |
| Ubicación: | Dep.COM 000674 |
| Derechos de Acceso: | Esta obra puede ser leída, grabada y utilizada con fines de estudio, investigación y docencia. Es necesario el reconocimiento de autoría mediante la cita correspondiente. Bonfiglio, María Antonia; Nussembaum, Pablo Gabriel. (2015). MENTAT : una herramienta de validación dinámica para código Java. (Tesis de Grado. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.). Recuperado de http://hdl.handle.net/20.500.12110/seminario_nCOM000674_BonfiglioNussembaum |
Resumen:
Por lo general, un componente de software en un lenguaje orientado a objetos tiene requerimientos que no son simples de especificar cuando se trata del orden en que sus métodos pueden ser invocados. Generalmente sólo se provee documentación para cada método sin especificar cuál es el protocolo esperado de uso y la interacción entre los métodos, lo que puede llevar a usos inválidos. La minería de especificaciones, si provee información apropiada al programador, puede ayudar a mitigar estos problemas. Esto ha incentivado varias investigaciones de técnicas de inferencias de modelos que infieren un modelo basado en Finite State Machines (FSMs). Actualmente existen herramientas capaces de analizar el código fuente en forma estática generando modelos que ayudan a contrastar la implementación con su especificación. Herramientas como Contractor crean un Labeled Transition System (LTS) específico llamado Enabledness Preserving Abstraction (EPA) [dCBGU11] a partir de una especificación por contratos o código fuente haciendo análisis estático. El presente trabajo se propone hacer minería de modelos utilizando una técnica de análisis dinámico, mediante la generación de modelos para aproximar el EPA, basándose en la información obtenida a partir de ejecuciones reales. Para realizar dicho análisis se creó Mentat, una herramienta que construye dichos modelos a partir de clases Java con anotaciones para especificar su invariante y las precondiciones de sus métodos.
Abstract:
Generally, a software component in an object-oriented language has requirements that are not simple to specify, for instance, the order in which its methods can be invoked. Usually only documentation for each method is provided without specifying what the expected use protocol and the interaction between methods, which can lead to invalid usages. If the programmer provides proper information, mining specification can help mitigate these problems. This has encouraged several researches about inference models techniques that builds a model based on Finite State Machines(FSM). Currently there are tools that perform static analysis on source code that help to contrast an implementation with its specification. Tools such as Contractor builds an specific Labeled Transition System (LTS), known as Enabledness Preserving Abstraction (EPA) [dCBGU11], from a contract specification or performing an static analysis directly from source code. The current work presents a dynamic analysis technique to perform mining model inference of classes by generating models to approximate the EPA, based on information obtained during actual executions. To this end Mentat was created, it’s a tool that builds models from Java classes with annotations to specify the invariant and the preconditions of his methods.
Citación:
---------- APA ----------
Bonfiglio, María Antonia; Nussembaum, Pablo Gabriel. (2015). MENTAT : una herramienta de validación dinámica para código Java. (Tesis de Grado. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.). Recuperado de https://hdl.handle.net/20.500.12110/seminario_nCOM000674_BonfiglioNussembaum
---------- CHICAGO ----------
Bonfiglio, María Antonia; Nussembaum, Pablo Gabriel. "MENTAT : una herramienta de validación dinámica para código Java". Tesis de Grado, Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales, 2015.https://hdl.handle.net/20.500.12110/seminario_nCOM000674_BonfiglioNussembaum
Estadísticas:
Descargas mensuales
Total de descargas desde :
https://bibliotecadigital.exactas.uba.ar/download/seminario/seminario_nCOM000674_BonfiglioNussembaum.pdf
Distrubución geográfica