Modelos abstractos de comportamiento basados en habilitación

Muchas interfaces programáticas de aplicación (APIs) presentan restricciones no triviales respecto al orden en que sus operaciones deben ser invocadas. Para los desarrolladores a cargo de implementar dichas APIs, validar si las mismas proveen el comportamiento esperado es un problema desafiante. De...

Descripción completa

Detalles Bibliográficos
Autor principal: De Caso, Guido
Otros Autores: Uchitel, Sebastián
Formato: Tesis doctoral publishedVersion
Lenguaje:Inglés
Publicado: Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales 2013
Materias:
Acceso en línea:https://hdl.handle.net/20.500.12110/tesis_n5247_DeCaso
Aporte de:
id tesis:tesis_n5247_DeCaso
record_format dspace
spelling tesis:tesis_n5247_DeCaso2025-03-31T21:33:21Z Modelos abstractos de comportamiento basados en habilitación Enabledness-based abstract behaviour models De Caso, Guido Uchitel, Sebastián ABSTRACCIONES DE COMPORTAMIENTO DE GRANO GRUESO MODELOS DISEÑADOS PARA LA VALIDACION GUIADA POR HUMANOS PROTOCOLO DE USO DE APIS GUIAS PARA LA VALIDACION EXPRESIVIDAD VS. ENTENDIBILIDAD COARSE-GRAINED BEHAVIOUR ABSTRACTION MODELS AIMED AT HUMAN-DRIVEN VALIDATION API USAGE PROTOCOL VALIDATION GUIDELINES EXPRESSIVENESS VS. UNDERSTAND ABILITY Muchas interfaces programáticas de aplicación (APIs) presentan restricciones no triviales respecto al orden en que sus operaciones deben ser invocadas. Para los desarrolladores a cargo de implementar dichas APIs, validar si las mismas proveen el comportamiento esperado es un problema desafiante. De todas formas, incluso en la ausencia de requerimientos formales, los desarrolladores de APIs poseen un modelo mental informal sobre el comportamiento esperado de la API. Este trabajo apunta a asistir a estos desarrolladores en la validación de sus APIs mediante la construcción de modelos que puedan comparar con sus modelos mentales. Presentamos las abstracciones basadas en habilitación (EPAs), un novedoso modelo de comportamiento de grano grueso que presenta una versión sobreaproximada del protocolo de uso de una API. Las EPAs agrupan las instancias concretas de una API que habilitan el mismo conjunto de operaciones, lo cual ofrece buena trazabilidad entre el modelo y la API. Brindamos algoritmos que construyen EPAs a partir de especificaciones o implementaciones de APIs. Luego estudiamos nuestro enfoque mediante una serie de casos de estudio en los cuales expertos de dominio usaron EPAs para identificar problemas en APIs de escala industrial, una evaluación de la expresividad de las EPAs y tres experimentos controlados apuntando a establecer cómo entienden los desarrolladores a las EPAs. Estas experiencias confirman que los modelos de grano grueso tales como las EPAs pueden jugar un rol importante en procesos manuales tales como validación. Many application programming interfaces (APIs) present non-trivial restrictions with respect to the order in which their operations ought to be called. For a developer in charge of implementing an API, validating whether it provides the expected behaviour is a challenging problem. Nevertheless, even in the absence of formal requirements, API implementers possess an informal mental model of the expected API behaviour. This work aims to assist these developers in the validation of their APIs by constructing models that they can compare against their mental models. We introduce enabledness-preserving abstractions (EPAs), a novel coarse-grained behaviour model which presents an overapproximated version of an API usage protocol. EPAs group concrete instances of an API that enable the same set of operations, offering good traceability links between the model and the API. We present EPA construction algorithms from either API specifications or API implementations. We then study our approach by means of a series of cases studies where experts used EPAs to identify issues in industrial strength APIs, an evaluation of EPA expressiveness, and three controlled experiments aimed at establishing how developers understand EPAs. These experiences confirm that coarse-grained models such as EPAs can play an important role in human-intensive processes such as validation. Fil: De Caso, Guido. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales 2013 info:eu-repo/semantics/doctoralThesis info:ar-repo/semantics/tesis doctoral info:eu-repo/semantics/publishedVersion application/pdf eng info:eu-repo/semantics/openAccess https://creativecommons.org/licenses/by-nc-sa/2.5/ar https://hdl.handle.net/20.500.12110/tesis_n5247_DeCaso
institution Universidad de Buenos Aires
institution_str I-28
repository_str R-134
collection Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA)
language Inglés
orig_language_str_mv eng
topic ABSTRACCIONES DE COMPORTAMIENTO DE GRANO GRUESO
MODELOS DISEÑADOS PARA LA VALIDACION GUIADA POR HUMANOS
PROTOCOLO DE USO DE APIS
GUIAS PARA LA VALIDACION
EXPRESIVIDAD VS. ENTENDIBILIDAD
COARSE-GRAINED BEHAVIOUR ABSTRACTION
MODELS AIMED AT HUMAN-DRIVEN VALIDATION
API USAGE PROTOCOL
VALIDATION GUIDELINES
EXPRESSIVENESS VS. UNDERSTAND ABILITY
spellingShingle ABSTRACCIONES DE COMPORTAMIENTO DE GRANO GRUESO
MODELOS DISEÑADOS PARA LA VALIDACION GUIADA POR HUMANOS
PROTOCOLO DE USO DE APIS
GUIAS PARA LA VALIDACION
EXPRESIVIDAD VS. ENTENDIBILIDAD
COARSE-GRAINED BEHAVIOUR ABSTRACTION
MODELS AIMED AT HUMAN-DRIVEN VALIDATION
API USAGE PROTOCOL
VALIDATION GUIDELINES
EXPRESSIVENESS VS. UNDERSTAND ABILITY
De Caso, Guido
Modelos abstractos de comportamiento basados en habilitación
topic_facet ABSTRACCIONES DE COMPORTAMIENTO DE GRANO GRUESO
MODELOS DISEÑADOS PARA LA VALIDACION GUIADA POR HUMANOS
PROTOCOLO DE USO DE APIS
GUIAS PARA LA VALIDACION
EXPRESIVIDAD VS. ENTENDIBILIDAD
COARSE-GRAINED BEHAVIOUR ABSTRACTION
MODELS AIMED AT HUMAN-DRIVEN VALIDATION
API USAGE PROTOCOL
VALIDATION GUIDELINES
EXPRESSIVENESS VS. UNDERSTAND ABILITY
description Muchas interfaces programáticas de aplicación (APIs) presentan restricciones no triviales respecto al orden en que sus operaciones deben ser invocadas. Para los desarrolladores a cargo de implementar dichas APIs, validar si las mismas proveen el comportamiento esperado es un problema desafiante. De todas formas, incluso en la ausencia de requerimientos formales, los desarrolladores de APIs poseen un modelo mental informal sobre el comportamiento esperado de la API. Este trabajo apunta a asistir a estos desarrolladores en la validación de sus APIs mediante la construcción de modelos que puedan comparar con sus modelos mentales. Presentamos las abstracciones basadas en habilitación (EPAs), un novedoso modelo de comportamiento de grano grueso que presenta una versión sobreaproximada del protocolo de uso de una API. Las EPAs agrupan las instancias concretas de una API que habilitan el mismo conjunto de operaciones, lo cual ofrece buena trazabilidad entre el modelo y la API. Brindamos algoritmos que construyen EPAs a partir de especificaciones o implementaciones de APIs. Luego estudiamos nuestro enfoque mediante una serie de casos de estudio en los cuales expertos de dominio usaron EPAs para identificar problemas en APIs de escala industrial, una evaluación de la expresividad de las EPAs y tres experimentos controlados apuntando a establecer cómo entienden los desarrolladores a las EPAs. Estas experiencias confirman que los modelos de grano grueso tales como las EPAs pueden jugar un rol importante en procesos manuales tales como validación.
author2 Uchitel, Sebastián
author_facet Uchitel, Sebastián
De Caso, Guido
format Tesis doctoral
Tesis doctoral
publishedVersion
author De Caso, Guido
author_sort De Caso, Guido
title Modelos abstractos de comportamiento basados en habilitación
title_short Modelos abstractos de comportamiento basados en habilitación
title_full Modelos abstractos de comportamiento basados en habilitación
title_fullStr Modelos abstractos de comportamiento basados en habilitación
title_full_unstemmed Modelos abstractos de comportamiento basados en habilitación
title_sort modelos abstractos de comportamiento basados en habilitación
publisher Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
publishDate 2013
url https://hdl.handle.net/20.500.12110/tesis_n5247_DeCaso
work_keys_str_mv AT decasoguido modelosabstractosdecomportamientobasadosenhabilitacion
AT decasoguido enablednessbasedabstractbehaviourmodels
_version_ 1831982302567071744