Personal tools
You are here: Home News ICS Proposal Defense: Pavel Senin, "Software Trajectory Analysis: An empirically based method for automated software process discovery" (8/20/2009)
Navigation
 

ICS Proposal Defense: Pavel Senin, "Software Trajectory Analysis: An empirically based method for automated software process discovery" (8/20/2009)

POST 318, 12:00noon

Software Trajectory Analysis:
An empirically based method for automated software process discovery

Pavel Senin

Thursday, August 20, 2009
12:00 - 2:00
POST 318


Software developers are creatures of habit.  Some of these habits are imposed by the nature of the tools: for example, one must always compile a Java program before running it.  Other habits are products of a development process: for example, in Test Driven Development, the programmer writes the test code for a feature before beginning its implementation.

Not all habits are good habits.  An example of a negative habit is a developer who stops writing (and running) tests when a deadline is near. Furthermore, not all habits--both negative and positive—are known by the developers or teams who practice them.  For example, a programmer might have the habit of never writing tests for getter and setter methods, which might work "almost" all the time.

The goal of this research is to investigate automated techniques for the discovery and characterization of "habits" in software development. By "habits", I mean recurrent behaviors either on an individual or team level. My research involves applying temporal data mining and knowledge discovery techniques to fine-grained software process and product data in order to discover these recurrent behaviors.

In my research, I am designing and developing the Software Trajectory Analysis framework, which implements algorithms for conversion of software process and product metrics collected by Hackystat into symbolic time-points and time-interval series. Through temporal data indexing and mining, it can identify frequent patterns within symbolic temporal data which represent recurrent behaviors. These patterns may or may not be known by the developers employing them.  I have performed pilot experiments that shed light on the potential of this approach.

My proposed research involves further improvements to the way in which software artifacts map into the temporal symbolic data. I also propose an empirical research study to evaluate the ability of this approach to discover both known and unknown recurrent behaviors.


Committee:
Philip Johnson (Chair)
Kyungim Baek
Guylaine Poisson
Henri Casanova
Daniel Port

Document Actions