Use this URL to cite or link to this record in EThOS:
Title: Inferring visual contracts from Java applications
Author: Alshanqiti, Abdullah Mahfodh M.
ISNI:       0000 0004 6350 7888
Awarding Body: University of Leicester
Current Institution: University of Leicester
Date of Award: 2017
Availability of Full Text:
Access from EThOS:
Access from Institution:
Visual contracts model the operations of components or services by pre- and post-conditions formalised as graph transformation rules. They provide a precise intuitive notation to support testing, understanding and analysis of software. However, creating a detailed model of a system in any language is error-prone. Visual contracts are no exception, and their specification of object states and transformations requires a deeper understanding of a system than models of externally visible behaviour. This limits their applicability in testing, verification and program understanding, thus inventing an effective technique for extracting visual contracts automatically would enable their wider use in general. In this thesis we study a reverse engineering approach to address such problems by extracting visual contracts dynamically from existing systems. We propose an inference solution and implement a prototype tool in Java with empirical evaluations of the performance, completeness, correctness and utilisations. The resulting contracts give an accurate description of the observed object transformations, their effects and preconditions in terms of object structures, parameter and attribute values, and allow generalisation by universally quantified (multi) objects. They support program understanding in general, and the analysis of tests based on a concise, visual and comprehensive representation of operations' behaviour in particular.
Supervisor: Heckel, Reiko ; Walkinshaw, Neil Sponsor: Not available
Qualification Name: Thesis (Ph.D.) Qualification Level: Doctoral
EThOS ID:  DOI: Not available