Abstract:
Code artefacts that have non-trivial requirements with respect to the ordering in which their methods or procedures ought to be called are common and appear, for instance, in the form of API implementations and objects. This work addresses the problem of validating if API implementations provide their intended behaviour when descriptions of this behaviour are informal, partial or non-existent. The proposed approach addresses this problem by generating abstract behaviour models which resemble typestates. These models are statically computed and encode all admissible sequences of method calls. The level of abstraction at which such models are constructed has shown to be useful for validating code artefacts and identifying findings which led to the discovery of bugs, adjustment of the requirements expected by the engineer to the requirements implicit in the code, and the improvement of available documentation. © 2011 ACM.
Registro:
Documento: |
Conferencia
|
Título: | Program abstractions for behaviour validation |
Autor: | De Caso, G.; Braberman, V.; Garbervetsky, D.; Uchitel, S. |
Ciudad: | Waikiki, Honolulu, HI |
Filiación: | Departamento de Computación, FCEyN, UBA, Buenos Aires, Argentina Department of Computing, Imperial College, London, United Kingdom
|
Palabras clave: | automated abstraction; behaviour model synthesis; source code validation; Admissible sequences; automated abstraction; Behaviour models; Level of abstraction; Non-trivial; Source codes; Software engineering; Abstracting |
Año: | 2011
|
Página de inicio: | 381
|
Página de fin: | 390
|
DOI: |
http://dx.doi.org/10.1145/1985793.1985846 |
Título revista: | 33rd International Conference on Software Engineering, ICSE 2011
|
Título revista abreviado: | Proc Int Conf Software Eng
|
ISSN: | 02705257
|
CODEN: | PCSED
|
Registro: | https://bibliotecadigital.exactas.uba.ar/collection/paper/document/paper_02705257_v_n_p381_DeCaso |
Referencias:
- Alur, R., Černý, P., Madhusudan, P., Nam, W., Synthesis of interface specifications for Java classes (2005) POPL '05, pp. 98-109
- Beyer, D., Henzinger, T., Jhala, R., Majumdar, R., The software model checker Blast (2007) STTT, 9, pp. 505-525
- Dallmeier, V., Knopp, N., Mallon, C., Hack, S., Zeller, A., Generating test cases for specification mining (2010) ISSTA 2010
- De Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S., (2010) Contractor for Code Validation, , Technical Report. DC. UBA
- De Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S., Automated abstractions for contract validation (2010) TSE, , Nov. pre-print
- DeLine, R., Fahndrich, M., Enforcing high-level protocols in low-level software (2001) PLDI '01, pp. 59-69
- Gabel, M., Su, Z., Symbolic mining of temporal specifications (2008) ICSE '08, pp. 51-60
- Giannakopoulou, D., Pǎsǎreanu, C., Interface generation and compositional verification in JavaPathfinder (2009) FASE '09, pp. 94-108
- Graf, S., Saïdi, H., Construction of abstract state graphs with PVS (1997) CAV '97, pp. 72-83
- Grieskamp, W., Gurevich, Y., Schulte, W., Veanes, M., Generating finite state machines from abstract state machines (2002) ISSTA '02, pp. 112-122
- Grieskamp, W., Kicillof, N., Stobie, K., Braberman, V., Model-based quality assurance of protocol documentation: Tools and methodology STVR, , in press
- Henzinger, T., Jhala, R., Majumdar, R., Permissive interfaces (2005) ESEC/FSE '05, pp. 31-40
- Leavens, G.T., Leino, K.R.M., Muller, P., Specification and verification challenges for sequential object-oriented programs (2007) Formal Aspects of Computing, 19 (2), pp. 159-189. , DOI 10.1007/s00165-007-0026-7
- Lee, D., Yannakakis, M., Online minimization of transition systems (1992) STOC '92, pp. 264-274. , extended abstract
- Liu, L., Meyer, B., Schoeller, B., Using contracts and boolean queries to improve the quality of automatic test generation (2007) TAP '07, pp. 114-130
- Lorenzoli, D., Mariani, L., Pezzè, M., Automatic generation of software behavioral models (2008) ICSE '08, pp. 501-510
- Strom, R.E., Yemini, S., TYPESTATE: A PROGRAMMING LANGUAGE CONCEPT FOR ENHANCING SOFTWARE RELIABILITY. (1986) IEEE Transactions on Software Engineering, SE-12 (1), pp. 157-171
- Uribe, T., (1999) Abstraction-based Deductive-algorithmic Verification of Reactive Systems, , Stanford University, Dept. of Computer ScienceA4 - Assoc. Comput. Mach., Spec. Interest Group Softw.; Eng. (ACM SIGSOFT); IEEE Computer Society; Technical Council on Software Engineering (TCSE)
Citas:
---------- APA ----------
De Caso, G., Braberman, V., Garbervetsky, D. & Uchitel, S.
(2011)
. Program abstractions for behaviour validation. 33rd International Conference on Software Engineering, ICSE 2011, 381-390.
http://dx.doi.org/10.1145/1985793.1985846---------- CHICAGO ----------
De Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S.
"Program abstractions for behaviour validation"
. 33rd International Conference on Software Engineering, ICSE 2011
(2011) : 381-390.
http://dx.doi.org/10.1145/1985793.1985846---------- MLA ----------
De Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S.
"Program abstractions for behaviour validation"
. 33rd International Conference on Software Engineering, ICSE 2011, 2011, pp. 381-390.
http://dx.doi.org/10.1145/1985793.1985846---------- VANCOUVER ----------
De Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S. Program abstractions for behaviour validation. Proc Int Conf Software Eng. 2011:381-390.
http://dx.doi.org/10.1145/1985793.1985846