Specifying code analysis tools
- 1 January 1996
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Customised code analysis tools for the maintenance and evolution of existing software systems can be created by storing program information in a database, and using an application generator to translate the high-level specifications of the analyses the tools are intended to perform. We present a high-level domain-specific language for the specification of program analysis tools that exploit an algebraic program representation called F(p). The algebraic representation is a compact program view which describes the static composition of the control structures and the set of the resulting potential executions. Operands of the algebraic expression (that represent the program's constructs) are used as indexes to access information stored in the database. The specification language provides facilities for the traversal of the program representation and access to the associated information in the database. The program model and the analysis results are integrated into a unique conceptual model, thus simplifying the reuse of the results of an analysis and the integration of the tools.Keywords
This publication has 13 references indexed in Scilit:
- Data flow testing of parallelized codePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Automated construction of testing and analysis toolsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- An environment for the reengineering of Pascal programsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Algorithms for program dependence graph productionPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A unified interprocedural program representation for a maintenance environmentIEEE Transactions on Software Engineering, 1993
- A logic-based approach to reverse engineering tools productionIEEE Transactions on Software Engineering, 1992
- GENOA - A Customizable, Language- And Front-end Independent Code AnalyzerPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1992
- Reverse engineering: Algorithms for program graph productionSoftware: Practice and Experience, 1991
- Metrics and software structureInformation and Software Technology, 1987
- Implementing relational views of programsPublished by Association for Computing Machinery (ACM) ,1984