Program comprehension tools are a valuable resource for navigating and understanding large software systems. Package explorers, fan-in / fan-out views, dependency graphs and coverage analysis are example contributions from the program comprehension community. While many of these research projects have lead to exciting enhancements in our field, many other projects have failed to be adopted because of poor interface design or lack of integration with existing tools. Designing, building, integrating and evaluating interfaces is a challenge to software engineering researchers.In this paper we borrow from the field of Model Driven Engineering (MDE) to assist with the creation of highly customizable interfaces for software visualization. MDE moves the level of abstraction from implementation to design, and will help improve the efficiency of building software visualizations. By moving away from implementation details, and providing researchers with the ability to customize their visualizations in an efficient manner, software engineers will have more resources to design and evaluate their ideas.
We explore how to support the creation of customized visualizations of ontology instance data through the specification of ontology mappings. We combine technologies from the disciplines of software modeling and ontology engineering. The feasibility of our approach is demonstrated by extending an existing ontology mapping tool, COGZ, to translate ontology mappings into software model transformation rules. The tool uses these transformations to automatically convert domain instance data into data that conforms to a model describing a visualization. After this transformation, a visualization of the domain instance data is generated.
Wepropose that collaborative software visualization can improve team software maintenance. We first review how visualization can support software maintenance from the perspectives of system understanding, process understanding and software evolution. From this, we conclude that visualization tools are rarely designed to provide explicit support for collaborative authoring and sharing of views. We then provide an overview of research from a Computer Supported Cooperative Work perspective, and propose that this research should be applied to software visualization. We explore the opportunities and challenges this research focus presents and conclude that more attention paid to the social aspects of software visualization should improve both individual and team processes in software maintenance.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.