Results 1 -
4 of
4
Visualizing interactions in program executions
- In Proceedings of the 19th International Conference on Software Engineering
, 1997
"... Implementing, validating, modifying, or reengineering an object-oriented system requires an understanding of the object and class interactions which occur as a program executes. This work seeks to identify, visualize, and analyze interactions in object-oriented program executions as a means for exam ..."
Abstract
-
Cited by 60 (3 self)
- Add to MetaCart
Implementing, validating, modifying, or reengineering an object-oriented system requires an understanding of the object and class interactions which occur as a program executes. This work seeks to identify, visualize, and analyze interactions in object-oriented program executions as a means for examining and understanding dynamic behavior. We have discovered recurring interaction scenarios in program executions that can be used as abstractions in the understanding process, and have developed a means for identifying these interaction patterns. Our visualizations focus on supporting design recovery, validation, and reengineering tasks, and can be applied to both object-oriented and procedural programs.
Translating Description Logics to Information Server Queries
- In Proceedings of the ISMM International Conference on Information and Knowledge Management CIKM
, 1993
"... Description Logic (DL) Systems can be useful as front-ends for databases, particularly in applications that involve browsing and exploring, such as data mining. Such use of DL systems raises some pragmatic and theoretical issues. In this paper, we adopt a general architecture for "loose coupling " D ..."
Abstract
-
Cited by 19 (0 self)
- Add to MetaCart
Description Logic (DL) Systems can be useful as front-ends for databases, particularly in applications that involve browsing and exploring, such as data mining. Such use of DL systems raises some pragmatic and theoretical issues. In this paper, we adopt a general architecture for "loose coupling " DL systems with databases; in the context of this architecture, we have built a system called qindl that can generate, from a specification, a translator from a description logic to a database query language. qindl was used to generate translators from classic, a typical DL, to 3 different database query languages. We also present one view of safety of classic when it is used to query databases, and present a semantical basis for this view. 1 Introduction There is currently a great deal of interest in "data mining" applications, where a large source of data is combed for useful knowledge [15]. Following [4], we distinguish between data mining approaches, where autonomous tools run freely ...
Visualizing Message Patterns in Object-Oriented Program Executions
, 1996
"... The dynamic behavior of object-oriented programs is difficult to design, implement, and modify. Understanding the interactions between classes and objects is necessary to create efficient designs and make safe modifications. This work seeks to identify, visualize, and analyze recurring message patte ..."
Abstract
-
Cited by 19 (2 self)
- Add to MetaCart
The dynamic behavior of object-oriented programs is difficult to design, implement, and modify. Understanding the interactions between classes and objects is necessary to create efficient designs and make safe modifications. This work seeks to identify, visualize, and analyze recurring message patterns in object-oriented program executions as a means for understanding and examining dynamic behavior. Our visualizations focus on supporting design recovery, validation, and reengineering tasks. Keywords: software visualization, object-oriented programs, program understanding, software reengineering 1 Addressing Problems of OO Dynamics The importance of dynamic behavior in the design and implementation of object-oriented (OO) systems cannot be over-emphasized. Object-oriented analysis and design techniques (OOA/D) that evolve around object models created from static problem statements or object decomposition of real-world systems must not avoid the dynamic issues. Usage-scenario based a...
How To Write a GEN++ Specification
, 1993
"... Syntax Tree Machine Code Output Output Semantic Analyzer Checker Front End Back End Figure 1: Internal structure of language tools the tree by doing symbol resolution, type inference, etc, and produces an abstract semantics graph (ASG). This ASG forms the basis of most language tools; the ..."
Abstract
- Add to MetaCart
Syntax Tree Machine Code Output Output Semantic Analyzer Checker Front End Back End Figure 1: Internal structure of language tools the tree by doing symbol resolution, type inference, etc, and produces an abstract semantics graph (ASG). This ASG forms the basis of most language tools; the particular tool's task, be it abstraction, checking or code generation, is performed on the abstract semantic graph representation. The fact that most language tools (independent of language and intended task) work with some intermediate representation of the source code is the basic concept underlying genoa. 4 Basic Concepts: gnodes, gtrees and traversals genoa is a tool for generating source code analyzers; it is designed to work with a range of different programming languages. This is made possible by adopting a language-independent view of source code, the abstract semantics graph. We refer to ASG's as gtrees 1 , which are actually graphs made up of gnodes which represent the variou...

