Denys Poshyvanyk, Ph.D.

Home | Students | Publications | Research | Service | Software | Teaching | CV | Links





Here is a sneak peak into our latest project on REdacting Sensitive Information in Software arTifacts (RESIST). This research is a part of our large program in achieving a balance between the utilities of software engineering tasks and data privacy. Specifically, with RESIST stakeholders can balance the utility of program comprehension and data privacy by redacting sensitive information that programmers encode in software artifacts. To measure program comprehension, we use the metric of conceptual cohesion and coupling that is shown to align with developers’ opinions on feature coupling in the following paper.

Exemplar is a code search engine for finding highly relevant software projects from large archives of applications. For more information, please take your browser to Please read our ICSE paper for more information. We hope you will enjoy using Exemplar!


We have released Portfolio, a new code search engine for finding relevant functions to user queries in more than 18,000 C/C++ FreeBSD ports projects. We use a novel combination of indexing, speading activation, and a variation of PageRank as well as a cool visualization of search results. For more information, please take your browser to


TraceLab seeks to develop an experimental workbench for designing, constructing, and executing traceability experiments, and facilitating the rigorous evaluation of different traceability techniques.  TraceLab is similar in some respects to existing tools such as Weka, MatLab, or RapidMiner, except that it is highly customized to support rigorous SE experiments. The project is led by Jane Cleland-Huang @ DePaul with several collaborators, inclding W&M.


We have released CLAN, a new code search engine for finding similar Java applications. That is, this engine computes similarities between Java applications using mechanisms that detects to what degree high-level requirements are shared by these applications by examining their source code. For more information, please take your browser to


FLAT^3 is an open-source Eclipse plugin that integrates static and dynamic feature location techniques with a feature annotation function, providing a complete suite of tools to allow developers to locate the code that implements a feature and then save these mappings in a rich format. For more information (and ICSE-demo paper), please take your browser to


TopicXP is an Eclipse plugin that uses Latent Dirichlet Allocation (LDA) to extract topics present in the natural language used in identifiers and comments in source code. TopicXP presents these topics to the user through a set of visualizations, which first introduce the topics and their relationships, and then let the user examine how these topics are found in actual source code. For more information, please see



CodeTopics is an Eclipse plugin that shows developers the similarity between source code and high-level artifacts (HLAs) as well as highlights to what extent the code under development covers topics described in HLAs. Such views complement information derived by showing only the similarity between source code and HLAs helping (i) developers to identify functionality that is not implemented yet or (ii) newcomers to comprehend source code artifacts by showing them the topics that these artifacts relate to. Check it out:


We gratefully acknowledge financial support from the NSF on these research projects