Modules

CS-349/CS-M29 Mobile Interaction Design

Credit Points: 10
Contact Hours: 20
Taught: Semester 2
Lecturer: Prof. Jones
Assessment: 30% coursework, 70% written exam (May/June)

Synopsis

This module presents key human computer interaction design issues, methods, tool and techniques in a mobile and ubiquitous systems context. Students will learn how to improve the user interfaces they design and be equipped to develop efficient, effective and satisfying applications for an important, emerging class of computing device. The module will involve students in prototyping and evaluating mobile applications and introduce embedded application development environments.

Syllabus

  • User interface technologies and components;
  • Characteristics of effective user interfaces;
  • Human-factors design and development methodologies;
  • User-centred requirements gathering & analysis;
  • Prototyping & evaluation;
  • Mobile & Embedded programming;
  • Design issues and strategies for (example list): accessing complex functions (menus, modes etc); mobile web browsing and searching; rich media access; and, mobile communities.

  • Learning Outcomes

    Students will gain a thorough understanding of the human-factor issues relating to mobile and ubiquitous computing systems. Students will have a deep knowledge of user-centred software design tools, models and methods.

    Trasferable Skills

    Course encourages "design" based thinking; the high degree of analytical, reflective and critical skills needed for user-centred interactive system development are widely applicable in many other contexts.

    Course Text

    M. Jones and G. Marsden, Mobile Interaction Design, John Wiley & Sons, 2006.

    CS-M19 Interactive System Design

    Credit Points: 10
    Taught: Whole Session
    Lecturer: Prof. Thimbleby
    Assessment: 100% coursework

    Synopsis

    Interactive systems are ubiquitous - from handheld devices, even medical implants, to large systems such as the world wide web. Some systems are safety-critical (such as aircraft flight decks); some are mission-critical (such as ticket machines); some are utilitarian; some are fun. Almost all are badly designed and badly documented - and they cause users problems. Surprisingly, the theory and practice of interactive systems design is not well-developed, and what is known is not widely known. This module reviews the problems and obvious solutions, and shows how information theory, graph theory, finite state machines, and other elementary computer science techniques, when applied well, can make a huge difference. The module has an underlying theme of the social and ethical imperatives why one should make better systems.

    Syllabus

    Part 1: Problems
    Usability, evaluation, error. Review of HCI, classic issues, cognitive psychology.
    Part 2: Theory
    Information theory, Graph theory, FSAs, Markov Models, user manual generation. Defining and programming interactive systems (statecharts etc). Overview of Human Factors theory and issues: ergonomics, affordance, human error, user models.
    Part 3: Solutions
    Larger systems, ethics and design principles.
    Part 4: Research topics
    Classic literature and personalities

    Learning Outcomes

    Students will be able to recognise, critique and (know how to) solve many usability problems in interactive systems; they will be able to design and make reliable interactive systems. Students will have a significant appreciation for 'user centred design' and will know practical means to achieve it, from requirements analysis through to evaluation, as well as technical approaches. They will have a thorough appreciation of the social and ethical framework.

    Trasferable Skills

    The ability to analyse, design and constructively criticise any complex system. To see computer science as a wider subject, able to address non-computing problems.

    Course Texts

    H. Thimbleby, Press On, MIT Press, 2007.
    R. J. Wieringa, Design Methods for Reactive Systems: Yourdon, Statemate, and the UML, Morgan Kaufmann, 2003.

    CS-M39 Seminars and Readings

    Credit Points: 10
    Contract Hourrs: 10
    Taught: Whole Session
    Lecturer: Prof. Thimbleby
    Assessment: 100% continuous assessment

    Synopsis

    This module encourages students to explore the advanced literature and research results underpinning the field of interaction technologies. Classic papers (and controversies) are covered, as well as recent work from the leading journals and conferences. Students achieve a clear view of the 'cutting edge' and issues in the field.

    Syllabus

    Papers are selected from the recent research literature, presented and discussed in seminars. Classic papers and some books are covered, as well as reviewing the work of the leading researchers and laboratories in the field.

    Learning Outcomes

    The ability to demonstrate detailed understanding of a set of topics in interaction. The ability to review and critically assess the literature on specific topics in that area at the current limits of theoretical or research understanding. The ability to analyse and present the results of a literature review both as a scientific report and as an oral presentation.

    Trasferable Skills

    The ability to engage and present their own academic work e.g., to professionals in their own field. Autonomous study, and full awareness of resources to aid the study of research topics in interaction technologies. Effective research management (in terms of time, direction of study, sources of information and relevance to the topic).

    Course Texts

    R. M. Baeker, Morgan Kaufmann series of Readings in Human-Computer Interaction, ACM Digital Library, 1995.
    J. M. Carroll, Human-Computer Interaction in the New Millennium, ACM Press, 2001.

    CS-M79 Hardware and Devices

    Credit Points: 10
    Contract Hourrs: 20
    Taught: Semester 2
    Lecturer: Dr. Eslambolchilar
    Assessment: 50% coursework, 50% written examination (Mary/June)

    Synopsis

    Future interaction technologies rely on developments in hardware, and being able to interface the hardware and software. Students are expected to achieve substantial hands-on practical experience of the ‘cutting edge’ and issues in the field.

    Syllabus

    Input devices, output devices. Drivers. Hardware protocols, eg, USB, phidgets etc. Software protocols, eg, MVC. Non-standard devices, such as haptic, multiple mice, 3D displays, special purpose sensors.

    Learning Outcomes

    Thorough knowledge of hardware and I/O devices. Ability to build interactive devices and program drivers. Knowledge of non-standard devices, such as haptic devices and phidgets etc.

    Trasferable Skills

    Practical skills in building complex systems, both hardware and software, and debugging hardware/software interfaces.

    Course Texts

    Mobile HCI conference papers.
    CHI conferences papers relevant to handheld devices, ubiquitous computing and mobile computing.
    Python, Online materials to learn Python for programming on handheld devices, http://docs.python.org/tut/
    Phidgets, Online catalogs for USB sensing and control: www.phidgets.com.
    Arduino, Electronic prototyping for interaction design: http://www.arduino.cc/