6 research outputs found

    How to make a bridge between transformation and analysis technologies?

    Get PDF
    At the Dagstuhl seminar on Transformation Techniques in Software Engineering we had an organized discussion on the intricacies of engineering practicle connections between software analysis and software transformation tools. This abstract summarizes it. This discussion contributes mainly by explicitly focussing on this subject from a general perspective, and providing a first sketch of a domain analysis. First we discuss the solution space in general, and then we compare the merits of two entirely di®erent designs: the monolithic versus the heterogeneous approach

    4D Ariadne the Static Debugger of Java Programs

    Get PDF
    Development environments support the programmer in numerous ways from syntax highlighting to different refactoring and code generating methods. However, there are cases where these tools are limited or not usable, such as getting familiar with large and complex source codes written by a third person; finding the complexities of huge projects or finding semantic errors.In this paper we present our static analyzer tool, called 4D Ariadne, which concentrates on these problems. 4D Ariadne is a static debugger of Object Oriented applications written in Java programming language. It calculates data dependencies of objects being able to compute them both forward and backward. As 4D Ariadne provides only the direct influences to the user, it can be considered as an alternative of traditional debuggers, without executing the code. 4D Ariadne also provides dynamic call graphs representing polymorphic properties of objects

    Designing and implementing control flow graph for magic 4th generation language

    Get PDF
    A good compiler which implements many optimizations during its compilation phases must be able to perform several static analysis techniques such as control flow or data flow analysis. Besides compilers, these techniques are common for static analyzers as well to retrieve information from source code, for example for code auditing, quality assurance or testing purposes. Implementing control flow analysis requires handling many special structures of the target language. In our paper we present our experiences in implementing control flow graph (CFG) construction for a special 4th generation language called Magic. While we were designing and implementing the CFG for this language, we identified differences compared to 3rd generation languages mostly because of the unique programming technique of Magic (e.g. data access, parallel task execution, events). Our work was motivated by our industrial partner who needed precise static analysis tools (e.g. for quality assurance or testing purposes) for this language. We believe that our experiences for Magic, as a representative of 4GLs, might be generalized for other languages too

    Structural information aided automated test method for magic 4GL

    Get PDF
    Nowadays testing data intensive, GUI enhanced applications properly on an easily maintainable way has become a more crucial part of the application life cycle. There are many evolving technologies to support automatized GUI testing in various environments. However there are hardly any methods that support 4GLs, especially Magic. Fortunately, the characteristics of the 4th generation of programming languages - like explicit definition of the relations between GUI elements and data - eliminate most of the problems raised during testing the GUI in the case of 3GLs. By utilizing these advantages we were able to develop a generalized testing method that supports 4GLs, and as a proof of concept a system for testing Magic xpa applications was built. In this paper, a generalized testing method for 4GLs, our path and script generator algorithms, and their implementations for Magic xpa applications are presented. In addition, the cooperation of these components with existing solutions is demonstrated, and a test method that has been competed by the application of our tools (and which is an instantiation of the generalized method) is introduced as a possible use of the results

    Source Code Analysis and Slicing for Program Comprehension

    Get PDF

    Acta Cybernetica : Volume 21. Number 3.

    Get PDF
    corecore