Sandeep Kuttal, a PhD student in computer engineering, is a research assistant in the ESQuaRed lab in the CSE Department. In the following, she talks about her current projects, including debugging support to end user environments, and what its like to work in the lab.
What is your role in ESQuaRed?
I am a PhD student in my 4th year. My research is related to end user software engineering. This encompasses the fields of software engineering, Human Computer Interaction, and Education. We are investigating approaches, and designing and developing environments for non-professionals (end user programmers). We want to help end users by incorporating software engineering techniques and principles into the end user environments so that it is easier for end users to write better quality software. Some examples of end user environments are spreadsheets, web macros, and web mashups.
Can you tell us about the lab itself?
EsQuared is a great place to work. According to a survey presented in communications of ACM magazine, the lab was placed 5th in the world for the quality of research work in software engineering community. The professors associated with the lab are all successful researchers and great mentors. This opens up opportunities for students to learn and work on cutting edge research problems in software engineering.
How did you originally get involved? How long have you been working in the lab?
I initially started working with Dr. Rothermel, who introduced me to end user software engineering. Dr. Rothermel was one of the PI’s who started the EUSES (End-Users Shaping Effective Software) group. After taking a course with Dr. Sarma on Global Software Engineering, I became interested in the collaboration aspects of end user programming. We then started working together. Currently, Dr. Sarma is my co-advisor.
I have been involved for nearly 3 and half years in the lab. It has been a great experience working here.
What project(s) are you currently working on?
My current project involves providing debugging support to end user environments, namely web mashups. Programming for the web can be an intimidating task, particularly for end-user programmers. Mashup programming environments attempt to remedy this by providing support for such programming. However, mashup programmers create applications that contain bugs. We are looking into identifying the different types of errors that can be made, so that we can automatically identify them and provide debugging help to users.
How does this relate to your own research/coursework/dissertation?
This project is a critical component of my thesis, the other two components include providing versioning and collaboration support for end users.
What do you think you have taken away from this experience?
I am having a great learning experience in the project as well as by being a part of the ESQuaRed lab. During the course of my research here in the lab, I had the opportunity to go to various conferences to present my papers. This gave me the opportunity to meet and learn from other renowned researchers in my field and to talk to them about my research and get their feedback. This was a helpful experience and also made me aware of ongoing research in different labs around the world. Furthermore, I am a student member of the EUSES (End-Users Shaping Effective Software) and SCALE (Social Coordination Across Large Environments) groups, which are research groups spanning multiple universities.
Do you have any other projects/publications that you would like to talk about?
When end users create/reuse their software they often use alternative strategies when implementing their code, so end user environments should support backtracking and variation management. To integrate these features and other software engineering techniques (e.g., testing support, interactive visualizations, diffing among program versions), we have created prototypes for end users in the mashup domain, specifically, in Yahoo! Pipes. Our user studies showed the efficacy and usability of our techniques. This work has resulted in two conference publications and one journal article (in submission).