Final Project

This is an INDIVIDUAL assignment.

In the final project, you are asked to identify a human-compute interaction problem and describe a solution. This can take one of two forms.
  1. A research paper, in which you research and report on the state-of-the-art (i.e.,up to date research and practice) approaches to addressing it, and discuss the issues, benefits and drawbacks of these particular approaches.This takes the form of a comprehensive survey paper. For example, you might choose to do such a paper on assistive techniques for mobile phone users and the issues of supporting mobile phone use in a variety of contexts. If you choose this, you must:
    1. review the appropriate research. Consider venues such as ACM CHI, IFIP Interact, DIS, UIST, and IEEE InfoVis, among others.
    2. Discuss alternatives. Why is one better than another? How were they evaluated ?
    3. Discuss generalisability. IS the approach limited to a particular hardware/software or application configuration or context , or is it more generally applicable? If it is not generalisable, what might (if anything) a redesign or extension look like?
    4. Justify your choice of of the problem and the selection of the techniques you discuss in detail. Why should we care?
    5. What are the outstanding (as in remaining, not excellent) issues
  2. A prototype implementation , in which you describe the problem and implement a prototype application of a technique or a set of techniques to solve it. This must be of sufficient complexity beywond your assignment implementations. You must write a design report that details:
    1. the problem being solved and why this is an appropriate approach;
    2. the technical issues;
    3. the design constraints;
    4. appropriate resources and research (although at a lesser level than the research paper);
    5. the architecture of your implementation
    6. how you might evaluate this.
    7. implementation must be in Java, and can use extrnal libraries, but of course you must identify and detail your use of these.

Some possible topic areas:

  1. assistive technologies for aging or disabled users for both input and output;
  2. haptic feedback: what it is, how it is implemented and where it is appropriate;
  3. large screen vs small screen interfaces: you could choose to concentrate on application and visual issues, interaction techniques,perception/cognition advantages/disadvantages;
  4. computer supported collaboration interfaces, particularly with respect to presence, real-time vs. asynchronous, or gaming;
  5. game interfaces and interaction techniques, especially on different platforms;
  6. privacy and security (think of bank machines, confidence in e-commerce, social media, etc);
  7. sensor-enabled and ubiquitous computing interfaces; (what does it mean when the environment has behaviour?)
  8. wearable and embedded technology, as in examples of health care;
  9. touch surfaces: whiteboards and tabletops (large, shared) vs tablets and phones (small, personal) ;
  10. mapping/geospatial applications (such as GPS tools and automotive displays);
  11. interfaces for children;
  12. educational applications
  13. dynamic queries, magic lenses or other search techniques (implementation);
  14. visualization interfaces:

You must clear your choice and topic with the instructor by week 8 of the course, at which point the scope and expectations of your project will be fully defined.