Contractor.NET: Inferring typestate properties to enrich code contracts
In this work we present Contractor.NET, a Visual Studio extension that supports the construction of contract specifications with typestate information which can be used for verification of client code. Contractor.NET uses and extends Code Contracts to provide stronger contract specifications. It fea...
Guardado en:
Autores principales: | , , |
---|---|
Publicado: |
2011
|
Materias: | |
Acceso en línea: | https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_02705257_v_n_p44_Zoppi http://hdl.handle.net/20.500.12110/paper_02705257_v_n_p44_Zoppi |
Aporte de: |
id |
paper:paper_02705257_v_n_p44_Zoppi |
---|---|
record_format |
dspace |
spelling |
paper:paper_02705257_v_n_p44_Zoppi2023-06-08T15:24:40Z Contractor.NET: Inferring typestate properties to enrich code contracts Braberman, Víctor Adrián de Caso, Guido Garbervetsky, Diego Contract strengthening Enabledness abstractions Typestate inference Client code Contract specifications Enabledness abstractions Finite state Level of abstraction MicroSoft Software artifacts Source codes Two-step process Typestate Visual studios Abstracting Windows operating system Specifications In this work we present Contractor.NET, a Visual Studio extension that supports the construction of contract specifications with typestate information which can be used for verification of client code. Contractor.NET uses and extends Code Contracts to provide stronger contract specifications. It features a two step process. First, a class source code is analyzed to extract a finite state behavior model (in the form of a typestate) that is amenable to human-in-theloop validation and refinement. The second step is to augment the original contract specification for the input class with the inferred typestate information, therefore enabling the verification of client code. The inferred typestates are enabledness preserving: a level of abstraction that has been successfully used to validate software artifacts, assisting in the detection of a number of concerns in various case studies including specifications of Microsoft Server protocols. Copyright 2011 ACM. Fil:Braberman, V. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:De Caso, G. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Garbervetsky, D. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. 2011 https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_02705257_v_n_p44_Zoppi http://hdl.handle.net/20.500.12110/paper_02705257_v_n_p44_Zoppi |
institution |
Universidad de Buenos Aires |
institution_str |
I-28 |
repository_str |
R-134 |
collection |
Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA) |
topic |
Contract strengthening Enabledness abstractions Typestate inference Client code Contract specifications Enabledness abstractions Finite state Level of abstraction MicroSoft Software artifacts Source codes Two-step process Typestate Visual studios Abstracting Windows operating system Specifications |
spellingShingle |
Contract strengthening Enabledness abstractions Typestate inference Client code Contract specifications Enabledness abstractions Finite state Level of abstraction MicroSoft Software artifacts Source codes Two-step process Typestate Visual studios Abstracting Windows operating system Specifications Braberman, Víctor Adrián de Caso, Guido Garbervetsky, Diego Contractor.NET: Inferring typestate properties to enrich code contracts |
topic_facet |
Contract strengthening Enabledness abstractions Typestate inference Client code Contract specifications Enabledness abstractions Finite state Level of abstraction MicroSoft Software artifacts Source codes Two-step process Typestate Visual studios Abstracting Windows operating system Specifications |
description |
In this work we present Contractor.NET, a Visual Studio extension that supports the construction of contract specifications with typestate information which can be used for verification of client code. Contractor.NET uses and extends Code Contracts to provide stronger contract specifications. It features a two step process. First, a class source code is analyzed to extract a finite state behavior model (in the form of a typestate) that is amenable to human-in-theloop validation and refinement. The second step is to augment the original contract specification for the input class with the inferred typestate information, therefore enabling the verification of client code. The inferred typestates are enabledness preserving: a level of abstraction that has been successfully used to validate software artifacts, assisting in the detection of a number of concerns in various case studies including specifications of Microsoft Server protocols. Copyright 2011 ACM. |
author |
Braberman, Víctor Adrián de Caso, Guido Garbervetsky, Diego |
author_facet |
Braberman, Víctor Adrián de Caso, Guido Garbervetsky, Diego |
author_sort |
Braberman, Víctor Adrián |
title |
Contractor.NET: Inferring typestate properties to enrich code contracts |
title_short |
Contractor.NET: Inferring typestate properties to enrich code contracts |
title_full |
Contractor.NET: Inferring typestate properties to enrich code contracts |
title_fullStr |
Contractor.NET: Inferring typestate properties to enrich code contracts |
title_full_unstemmed |
Contractor.NET: Inferring typestate properties to enrich code contracts |
title_sort |
contractor.net: inferring typestate properties to enrich code contracts |
publishDate |
2011 |
url |
https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_02705257_v_n_p44_Zoppi http://hdl.handle.net/20.500.12110/paper_02705257_v_n_p44_Zoppi |
work_keys_str_mv |
AT brabermanvictoradrian contractornetinferringtypestatepropertiestoenrichcodecontracts AT decasoguido contractornetinferringtypestatepropertiestoenrichcodecontracts AT garbervetskydiego contractornetinferringtypestatepropertiestoenrichcodecontracts |
_version_ |
1768546627542319104 |