Code search has become an integral part of the day-to-day programming activity with developers seeking to take advantage of the vast amount of code and advice available on sites such as Stack Overflow, GitHub, and Ohloh. Finding the 'right' code, however, remains a serious challenge. CodeExchange is a new code search platform that offers social-technical code search: search enriched with social-technical metadata through which targeted queries can be formulated, results quickly filtered, and code that is found easily integrated into the project at hand.
Given the availability of large-scale source-code repositories, there have been a large number of applications for clone detection. Unfortunately, despite a decade of active research, there is a marked lack in clone detectors that scale to large software repositories. In particular for detecting near-miss clones where significant editing activities may take place in the cloned code.
Computer games may well be the quintessential domain for software engineering R&D. Why? Modern multi-player online games (MMOG) must address core issues in just about every major area of Computer Science and SE research and education.
This research focuses on techniques for identifying and reducing the costs, streamlining the process, and improving the readiness of future workforce for the acquisition of complex software systems. Emphasis is directed at identifying, tracking, and analyzing software component costs and cost reduction opportunities within acquisition life cycle of open architecture (OA) systems, where such systems combine best-of-breed software components and software products lines (SPLs) that are subject to different intellectual property (IP) license requirements.
Over the last several years we have been studying how digital media affects people’s lives. Rather than bring people into a laboratory, I view the real world as a living laboratory--I go where people live, study, and work, to study them as they go about their normal activities. Digital media use affects people’s mood, stress, and behavior quite significantly. In particular, people experience disruptions when working with digital media due to multi-tasking and interruptions.
We developed a fault-localization technique that utilized correlation-based heuristics. The technique and tool was called Tarantula. Tarantula uses the pass/fail statuses of test cases and the events that occurred during execution of each test case to offer the developer recommendations of what may be the faults that are causing test-case failures. The intuition of the approach is to find correlations between execution events and test-case outcomes --- those events that correlate most highly with failure are suggested as places to begin investigation.
Sustainability has become a pressing concern, especially given the looming effects of climate change. Sustainable development aims to meet current needs while ensuring sustainability of natural systems and the environment so as to not compromise the ability of future generations to meet their own needs. Current software engineering methods, however, do not explicitly support sustainability or sustainable development.
This research addresses challenges in understanding and developing lightweight, Web-based informal music education environments that bring the complexity and joy of orchestral music to diverse audiences. The challenges span from providing awareness and appreciation of different classical music genres through creation of multi-instrument musical compositions, in ways that are fun and interactive.