Category Archives: Projects

Best Paper Nomination – CSCW 2013

Posted on by chiselgroup
Reply

Congrats to Leif, Fernando, Brendan, Christoph, and Peggy – their paper titled “Mutual Assessment in the Social Programmer Ecosystem: An Empirical Investigation of Developer Profile Aggregators” was nominated for Best Paper at CSCW 2013!

You can read more information about this paper here.

Posted in Exploring the Role of Web 2.0 in Software Engineering, News | Leave a reply

StackOverflow API Documentation Visualization Contest Winners

Posted on by chiselgroup
Reply

Congrats to CHISEL alumni Christoph and Lars, as well as CHISEL collaborator Chris Parnin for winning the StackOverflow data visualization contest! https://www.kaggle.com/c/predict-closed-questions-on-stack-overflow/details/winners

Posted in News, Software Visualization | Leave a reply

ATLANTIS – Assembly Trace Analysis Environment

Posted on by bcleary
Reply

We recently present our work on assembly trace analysis tools featuring snazzy floating comments at WCRE 2012 in Kingston, Ontario.

Download

chiselgroup.files.wordpress.com/2012/10/pid2504923.pdf

Abstract

For malware authors, software is an ever fruitful source of vulnerabilities to exploit. Exploitability assessment through fuzzing aims to proactively identify potential vulnerabilities by monitoring the execution of a program while attempting to induce a crash. In order to determine if a particular program crash is exploitable (and to create a patch), the root cause of the crash must be identified. For particular classes of programs this analysis must be conducted without the aid of the original source code using execution traces generated at the assembly layer. Currently this analysis is a highly manual, text-driven activity with poor tool support. In this paper we present ATLANTIS, an assembly trace analysis environment that combines many of the features of modern IDEs with novel trace annotation and navigation techniques to support software security engineers performing exploitability analysis.

Screenshot

spacer

Atlantis – UI

Posted in Navigation, Publications, Reverse Engineering, Reverse Engineering, Visualization | Tagged Brendan Cleary, Frederic Painchaud, Laura Chan, Margaret-Anne Storey, Martin Salois | Leave a reply

Paper “Mutual Assessment in the Social Programmer Ecosystem” – accepted to CSCW 2013

Posted on by bcleary
1

Our paper on how and why developers share their development activities on the web  “Mutual Assessment in the Social Programmer Ecosystem” has been accepted for publication by CSCW 2013! Check out Leif Singer’s blog for more on the paper and the research process behind it blog.leif.me/2012/06/mutual-assessment/

Download

leif.me/papers/MutualAssessment-DCS-347-IR.pdf

Abstract

The multitude of social media channels that programmers can use to participate in software development has given rise to online developer profiles that aggregate activity across many services. Studying members of such developer profile aggregators, we found an ecosystem that revolves around the social programmer. Developers are assessing each other to evaluate whether other developers are interesting, worth following, or worth collaborating with. They are self-conscious about being assessed, and thus manage their public images. They value passion for software development, new technologies, and learning. Some recruiters participate in the ecosystem and use it to find candidates for hiring; other recruiters struggle with the interpretation of signals and issues of trust. This mutual assessment is changing how software engineers collaborate and how they advance their skills.

Posted in Exploring the Role of Web 2.0 in Software Engineering, Publications | Tagged Brendan Cleary, Christoph Treude, Fernando Figueira Filho, Kurt Schneider, Leif Singer, Margaret-Anne Storey | 1 Reply

Summary of Graduate Research: Wayfinding in Acquired Brain Injury

Posted on by kuipersn
Reply

Think of the last time you went somewhere. Maybe you went to the grocery store, to the park, or to the university. To get there, you had to plan and follow a route. Planning and following a route is called wayfinding. Research has shown that people with brain injury often have a hard time wayfinding, which may reduce community access. But hand-held technology is becoming more advanced, and may help people with brain injury to plan and follow their routes.

With this in mind, the goal of my research was to better understand the requirements for designing a hand-held wayfinding tool for users with acquired brain injury. Through a focus group with questionnaire, as well as a series of nine personal interviews, participants with acquired brain injury shared their wayfinding experiences. They also commented on the idea and design of a hand-held wayfinding tool.

It became clear that wayfinding may invoke a deep emotional response. Some participants feel anxious about going to unfamiliar places. Others may suddenly lose their way and become terribly flustered. Coping with unexpected change, such as a detour, and feeling overwhelmed by too much going on are also serious problems. Several strategies came to light, such as marking up bus schedules and maps, going over directions step by step with a bus driver or family member, and following a series of landmarks.

Most participants were quite enthusiastic about the idea of a hand-held wayfinding tool. Some said that it would increase their confidence, but others said they would have no need for it. Cost was also a concern, along with losing or damaging the hand-held device. Many design ideas were offered, showing that each person may have different needs. There were common themes too, such as a simple interface and audio feedback. Several participants said that a map with landmarks would be very useful.

This research suggests that facilitating orientation and managing anxiety are important for survivors of acquired brain injury, and constitute complementary targets for software support . These users will likely need more support going to unfamiliar places, but their abilities and confidence may improve over time. A hand-held wayfinding tool should be aware of the abilities of each user, and respond quickly to what’s going on. It should be as interactive as possible, so that the user feels engaged and empowered. It should include information on landmarks. It must be simple to use.

This research will play an important role in a project called CanGo. CanGo is a wayfinding tool being developed at CanAssist (www.canassist.ca/). CanAssist is an organization at UVic that makes technology for people with disabilities. I am a software developer at CanAssist, and an active member of the CanGo team.

Posted in Blog Posts, Past Projects | Leave a reply

TagSEA for IDA

Posted on by Thor Kell
Reply

TagSEA is a CHISEL project from 206 by Jody Ryall, Del Myers, and John Anvik - it’s a Eclipse plugin that allows developers to add tags to their code – bugs, works-in-progress, and so on. That looks something like this:

spacer

CHISEL has been doing a bunch of work with Defence Research and Development Canada, on reverse engineering. Like most reversers. they use the mighty IDA Pro to do their hacking. So, we made them a port of TagSEA. It looks like this:

spacer

Those tags can be filtered, sorted, and explored using the tree & table. Tags can be added via comments, like in the Eclipse verison: “#tag MainTag.Subtag: Comment About A Tag”.

That is to say, make a tag called “Subtag”, under MainTag, with the comment “Comment About A Tag”. You can also add a specific author, or multiple tags per line: “#tag MainTag.Subtag OtherTag -author=Some Guy: Comment About A Tag”.

TagSEA is built in Python, courtesy of IDA’s IDAPython plugin, and the PySide framework for QT.  Further work may include simplifying the sharing of tags, and making the syntax & search more robust.

Posted in Reverse Engineering, Uncategorized | Leave a reply

Task Manager

Posted on by Thor Kell
Reply

Task Manager is a CHISEL prototype for organizing, managing, and annotationg reverse engineering tasks. It was built for Defence Research and Development Canada, and looks something like this:

spacer

The main magic of this program is that it can be run from IDA, allowing a reverse engineer to check their workflow without ever leaving IDA. It also:

  • links IDA addresses to tasks, so you don’t get lost in the source code.
  • links documents and websites to task, so you can always find your references.
  • loads & saves to an ultra-portable .XML file, so you can share your work easily.
  • allows detailed annotation & tagging of each task, so you can keep track of what you were doing.

It is built in Java, and is largely based on this code. The communication
model is borrowed from Jennifer Baldwin’s AVA project, via UVic’s Mod Squad.

Future work on this project may include porting the code to a dedicated IDA plugin, moving to a collaborative database, and generally moving the code out of the prototype stage.

Posted in Projects | Tagged IDA, Java, Reverse Engineering | Leave a reply

BioMixer

Posted on by chiselgroup
Reply

spacer Bio-Mixer is a web-based environment that supports the flexible exploration of biomedical ontologies. The concepts in the ontologies and their mappings can be explored in different views such as graph views, lists and timeline views. Drag-and-drop interaction can be used to show items and collections in different views, to create filtered views and to synchronize selections. Bio-Mixer enhances drag and drop with a new drop target highlighting and preview approach to make working with multiple collections and views easy. Bio-Mixer also provides support for ontology annotation and workspace sharing between collaborators.

Primary researcher: Lars Grammel

Partners: National Center for Biomedical Ontology (NCBO)

Posted in Visualization of Biomedical Ontologies | Leave a reply

TweetSeeker

Posted on by Jamie
Reply

spacer

TweetSeeker is a Twitter research tool for on-the-fly collection and exploration of tweets. TweetSeeker allows the user to easily select specific data ranges of interest, filter to tweets with specific keywords, and easily see conversations in a users Tweets.

This is an open source tool, and the source code is available on GitHub.

Primary researcher: Jamie Starke Continue reading

Posted in Exploring the Role of Web 2.0 in Software Engineering | Leave a reply

Crowd Documentation

Posted on by chiselgroup
Reply

As part of our research on crowd documentation, we have developed a tree map visualization that shows API usage and Stack Overflow documentation for popular APIs such as Java and Android.

Primary researchers: Chris Parnin, Lars Grammel, Christoph Treude

Posted in Exploring the Role of Web 2.0 in Software Engineering | Leave a reply