Modelos abstractos de comportamiento basados en habilitación

Autores
Caso, Guido de
Año de publicación
2013
Idioma
inglés
Tipo de recurso
tesis doctoral
Estado
versión publicada
Colaborador/a o director/a de tesis
Uchitel, Sebastián
Descripció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 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: Caso, Guido de. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
Materia
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
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
Repositorio
Biblioteca Digital (UBA-FCEN)
Institución
Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
OAI Identificador
tesis:tesis_n5247_DeCaso

id BDUBAFCEN_27f4e46a541055626fa526e6040ca952
oai_identifier_str tesis:tesis_n5247_DeCaso
network_acronym_str BDUBAFCEN
repository_id_str 1896
network_name_str Biblioteca Digital (UBA-FCEN)
spelling Modelos abstractos de comportamiento basados en habilitaciónEnabledness-based abstract behaviour modelsCaso, Guido deABSTRACCIONES DE COMPORTAMIENTO DE GRANO GRUESOMODELOS DISEÑADOS PARA LA VALIDACION GUIADA POR HUMANOSPROTOCOLO DE USO DE APISGUIAS PARA LA VALIDACIONEXPRESIVIDAD VS. ENTENDIBILIDADCOARSE-GRAINED BEHAVIOUR ABSTRACTIONMODELS AIMED AT HUMAN-DRIVEN VALIDATIONAPI USAGE PROTOCOLVALIDATION GUIDELINESEXPRESSIVENESS VS. UNDERSTAND ABILITYMuchas 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: Caso, Guido de. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesUchitel, Sebastián2013info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_db06info:ar-repo/semantics/tesisDoctoralapplication/pdfhttps://hdl.handle.net/20.500.12110/tesis_n5247_DeCasoenginfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/arreponame:Biblioteca Digital (UBA-FCEN)instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesinstacron:UBA-FCEN2025-09-29T13:41:26Ztesis:tesis_n5247_DeCasoInstitucionalhttps://digital.bl.fcen.uba.ar/Universidad públicaNo correspondehttps://digital.bl.fcen.uba.ar/cgi-bin/oaiserver.cgiana@bl.fcen.uba.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:18962025-09-29 13:41:27.786Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse
dc.title.none.fl_str_mv Modelos abstractos de comportamiento basados en habilitación
Enabledness-based abstract behaviour models
title Modelos abstractos de comportamiento basados en habilitación
spellingShingle Modelos abstractos de comportamiento basados en habilitación
Caso, Guido de
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
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
dc.creator.none.fl_str_mv Caso, Guido de
author Caso, Guido de
author_facet Caso, Guido de
author_role author
dc.contributor.none.fl_str_mv Uchitel, Sebastián
dc.subject.none.fl_str_mv 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
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
dc.description.none.fl_txt_mv 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: Caso, Guido de. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
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.
publishDate 2013
dc.date.none.fl_str_mv 2013
dc.type.none.fl_str_mv info:eu-repo/semantics/doctoralThesis
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_db06
info:ar-repo/semantics/tesisDoctoral
format doctoralThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv https://hdl.handle.net/20.500.12110/tesis_n5247_DeCaso
url https://hdl.handle.net/20.500.12110/tesis_n5247_DeCaso
dc.language.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-sa/2.5/ar
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
dc.source.none.fl_str_mv reponame:Biblioteca Digital (UBA-FCEN)
instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron:UBA-FCEN
reponame_str Biblioteca Digital (UBA-FCEN)
collection Biblioteca Digital (UBA-FCEN)
instname_str Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron_str UBA-FCEN
institution UBA-FCEN
repository.name.fl_str_mv Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
repository.mail.fl_str_mv ana@bl.fcen.uba.ar
_version_ 1844618706715410432
score 13.070432