Course Structure

U/I Software Projects

  • Winter 2013
  • Department of Informatics
  • Donald Bren School of Information and Computer Sciences

From the catalog:

"Students complete an end-to-end user interface programming project based on an iterative design paradigm. Topics may include requirements brainstorming, paper prototyping, iterative development, cognitive walk-through, quantitative evaluation, and acceptance testing. Prerequisites: Informatics 131 and 133." (catalog)

However, this quarter we are going to take this course a different direction. Based on the evolving curriculum in Informatics, which offers the catalog skills in different courses, we are going to do a sequence of implementation projects that do not comprise a single end-to-end design. This will require prototyping skills as well as programming experience and the ability to work with library documentation. It naturally builds on the skills from 131 and 133, especially the latter.

Instructor: Professor Don Patterson
Lecture: TuTh: 9:30 - 10:50
Classroom: HICF 100N
Discussion Section: N/A
Email: djp3@ics.uci.edu
Office Hours: Fridays at 12:30pm in DBH 5084
Mailing List: Patterson-INF134-W13@classes.uci.edu
Discussion Forum: https://eee.uci.edu/boards/w13/inf134/
Teaching Assistant: Abhinav Kulkami
Email: amkulkar@uci.edu
Office Hours: Thursdays 11am - 1pm in ICS1 406a
Books: There are no required books for this class.
Components:
Class Attendance / Participation (2 dropped) 20%
Design Notebook 10%
Projects 70%

As the class progresses I may find it necessary to alter the percentages.

General Philosophy:

I prefer to give many small assignments which build up a picture of overall student learning success rather than to rely on one or two large exams which students may bomb based on non-learning related complications.

At the end of the day, learning is the responsibility of the student. I consider myself someone who points students in the right direction and can/will explain the fundamentals of a subject matter. I can't actually do the work of learning for a student. That takes effort and self-initiative. I will help to provide structure and motivation for that learning, but you also need to learn how to expand on this subject yourself. In a technical field like this, you will be left behind the field in about six months, regardless of how well I present the subject matter, if you can't keep learning on your own.

I like to stop talking periodically and let students ask questions.

Class Attendance:

Class attendance will be determined by completing index cards. The index cards are also a means for me to get feedback about the course.

For each class please write your name on a card, the date, and a comment about the course. (no student ID please)

If you would like to submit an anonymous comment, take an extra card and don't put your name on it.

Design Notebook:

You should begin, starting the first week, a design notebook which may be as simple as blank sheets of paper you carry around in your pocket. On it you should jot down at least one example per week of a user interface success or failure that you encounter and make some notes/sketches about for use in assignments later. Your notebook will be turned in periodically during the class.

It must be in hard copy format rather than digital.

A typical entry should be a page or two. Here are some decent examples: One, Two

Projects:

Several project assignments will be assigned consisting primarily of self-directed learning tasks.

The goal of the projects will be to give you a chance to familiarize yourself with basic software technologies for modern user interfaces. Rather than producing extensive deliverables the focus is on learning to teach yourself from on-line resources how to build user-interfaces in different technologies. This will hopefully form the basis of being able to create more extensive projects in the future.

Planned topics include:

  • Making a touch-free input for Android
  • Developing paper prototyping skills
  • Making multi-view Android U/Is
  • Making Android apps from Processing
  • Creating 3D Prototypes
  • Developing with depth sensors like Kinect

Quizzes:

There is no plan for quizzes for this class