3 research outputs found

    Using Program Analysis Infrastructure for Software Maintenance

    Get PDF
    Enabling the reuse of available techniques and tools for software maintenance is a major topic. However, research focuses mostly on two topics: parsing and tool interoperability. In the future, more sophisticated approaches to maintenance will be needed and dataflow analysis has to be used. As building dataflow analyzers for real languages is expensive, we must start to provide reusable dataflow analysis infrastructures for software maintenance. This paper first reports on our experience in building program analysis based maintenance tools. From that perspective, we formulate specific requirements for reusable program analysis infrastructures and then take a look at some program analysis infrastructures from compiler optimization research to evaluate if they are (re)usable for software maintenance tools

    Representing and Accessing Extracted Information

    No full text
    Source code repositories best support program comprehension tasks when they can successfully answer the many questions a maintainer conceives. To provide the flexibility needed to answer these questions, the Jupiter repository system has been developed. Jupiter, using Maia, a Model based on Annotations, Indices and Attributes, can store any of the syntactic, type and flow information extractable from a program. Jupiter’s query language, Mercury, formed by merging an existing query language with Scheme, is used to access the repository and manipulate query solutions. Together, these components provide a foundation on which to build systems for solving the queries that occur during program comprehension.

    Representing and Accessing Extracted Information

    No full text
    Source code repositories best support program comprehension tasks when they can successfully answer the many questions a maintainer conceives. To provide the flexibility needed to answer these questions, the Jupiter repository system has been developed. Jupiter, using Maia, a Model based on Annotations, Indices and Attributes, can store any of the syntactic, type and flow information extractable from a program. Jupiter's query language, Mercury, formed by merging an existing query language with Scheme, is used to access the repository and manipulate query solutions. Together, these components provide a foundation on which to build systems for solving the queries that occur during program comprehension.
    corecore