Term Project

Program Comprehension & the Psychology of Programming

 

The project must contain a strong research component directly related to the topics covered in the course (i.e., program comprehension and/or the psychology of programming).  In many cases the development of a prototype software system to test and/or demonstrate your concept will form a large part of the project.  Other projects involve the investigation of specific comprehension techniques for a particular problem, an in-depth survey to achieve a specific research goal, refinement of existing taxonomies that describe aspects of program comprehension, etc.

 

A project proposal is required and must be completed before midterm (see schedule for specific date).   Topics will arise from in class discussion and students can meet with me to formalize ideas and topics.  Of course, the student must become familiar with the literature, via the first 3-4 weeks of course, before any concrete project topics can be defined.

 

Other requirements:

á      The format of the final project report will be in IEEE 2 column proceedings format (with one change - citations will be [AuthorYear])

á      Length should be approximately 10 pages

á      Citations must be complete, accurate, and meet typical ACM/IEEE standards and guidelines

 

Resources:

á      I have a MS Word template (dot) for IEEE 2 Column.  The styles are defined with examples and instructions.  ItÕs in the same folder as the papers.

á      I highly recommend using a bibliography/citation tool.

á      The tool I use is Endnote .  They have a free trial version.  This is a plugin to MSWord that makes doing the references and bibliography much simpler.   The full version from the bookstore is around $100 for KSU students.

á      KSU has an agreement with RefWorks.  All KSU students and staff can use this service for free.  This is a tool much like Endnote but is served online.  There are plugin's for MSWord and other tools.  For instructions see the KSU Library (see "What's new" on the left)

á      If you use LaTeX then you'll want to use BibTex.

á      There is an Endnote library for my research Lab that I can make available.  I have also developed citation and bib formats, the ens files. 

 

Project Ideas:

á      Survey/study of program comprehension tasks

á      Design and run an experiment to assess a program comprehension task

á      Use eye tracking to see if beacons are used in source code

á      Does code completion facilitate bad library design?

á      How to layout design patterns in UML class diagrams

á      Survey of programming paradigm on program understanding

á      Understanding interfaces via data mining of source code

á      Visualizing refactorings

á      Visualizing patterns

á      Tools and methods to assist in teaching programming

á      Visual languages and algorithm animation for education

 

 

Last Updated: 03/04/2008