Inferring visual contracts from Java programs
نویسندگان
چکیده
منابع مشابه
Extracting Visual Contracts from Java Programs
Visual contracts model the operations of components or services by preand post-conditions formalised as graph transformation rules. They provide a precise intuitive notation to support testing, understanding and analysis of software. However, due to their detailed specification of data states and transformations, modelling real applications is an error-prone process. In this paper we propose a ...
متن کاملTowards Dynamic Reverse Engineering Visual Contracts from Java
Visual contracts provide a concise and intuitive representation of preand postconditions for operations in object-oriented or component-based systems, which can be used for documentation, testing, or simulation. However, defining visual contracts to correctly describe the behaviour of existing classes or components requires a deep understanding of their data model and behaviour. We propose an a...
متن کاملContracts in the Wild: A Study of Java Programs (Artifact)
This artefact contains a dataset of open-source programs obtained from the Maven Central Repository and scripts that first extract contracts from these programs and then perform several analyses on the contracts extracted. The extraction and analysis is fully automated and directly produces the tables presented in the accompanying paper. The results show how contracts are used in real-world pro...
متن کاملContracts in the Wild: A Study of Java Programs
The use of formal contracts has long been advocated as an approach to develop programs that are provably correct. However, the reality is that adoption of contracts has been slow in practice. Despite this, the adoption of lightweight contracts — typically utilising runtime checking — has progressed. In the case of Java, built-in features of the language (e.g. assertions and exceptions) can be u...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Automated Software Engineering
سال: 2018
ISSN: 0928-8910,1573-7535
DOI: 10.1007/s10515-018-0242-9