Link

OVERVIEW

CREDITS

This is a three-credit course.

CANVAS COURSE URL

https://canvas.wisc.edu/courses/143916

COURSE DESIGNATIONS AND ATTRIBUTES

Undergraduate elective in computer science

MEETING TIME AND LOCATION

Scheduled class time: Tuesdays-Thursdays 1:00–2:15 pm in CS 1221

INSTRUCTIONAL MODE

Face-to-face

SPECIFY HOW CREDIT HOURS ARE MET BY THE COURSE

This class meets for two, 75-minute class periods each week over the fall semester and carries the expectation that students will work on course learning activities (reviewing lecture materials, completing weekly assignments) for about 3 hours out of the classroom for every class period. The syllabus includes more information about meeting times and expectations for student work.

COURSE DESCRIPTION

This course introduces students to the software development of user interfaces (UIs). Topics covered include state-of-the-art (1) UI paradigms, such as event-driven interfaces, direct-manipulation interfaces, and dialogue-based interaction; (2) methods for capturing, interpreting, and responding to different forms of user input and states, including pointing, text entry, speech, touch, gestures, user activity, context, and physiological states; and (3) platform-specific UI development APIs, frameworks, and toolkits for platforms including web/mobile/desktop interfaces, natural user interfaces, and voice user interfaces. Through readings, lectures, and hands-on-activities, students will learn about the fundamental concepts, technologies, and methods in building user interfaces. Assignments will provide an opportunity to gain hands-on experience in the use of state-of-the-art UI development tools and build a UI development portfolio.

REQUISITES

CS-400

LEARNING OUTCOMES

COURSE LEARNING OUTCOMES

Student will be able to:

  • Engage in design thinking around user interface needs and problems, ideate and communicate conceptual design solutions
  • Create visual designs, layouts, and navigation structures, and effectively use design languages, color palettes, and platform-specific design elements
  • Prototype and develop user interfaces for the Web, mobile, and voice user interfaces (VUIs)
  • Program front-end, user-facing software elements using the state-of-the-art programming languages, frameworks, and libraries
  • Follow user-centered design principles, heuristics, and methods to iteratively build, assess, and refine design solutions

COURSE STRUCTURE

WEEKLY ASSIGNMENTS

The majority of student work for the class will involve weekly assignments that incrementally build three user interfaces (web, mobile, voice user interfaces). Students will complete a total of 11 weekly assignments and 3 final deliverables for each unit, and the assignment with the lowest grade will not count toward student grade. For each interface, students will be provided design specifications and starting code that they will build on to design and build their own solutions.

EXAMS

The class will involve two exams—a midterm and a final—that will make up 40% of the grade.

REQUIRED TEXTBOOK, SOFTWARE & OTHER COURSE MATERIALS

The instructional content for the class is curated from different books, articles, and multimedia resources. All reading and multimedia material will be provided through Canvas as PDFs or links to archives or multimedia resources (e.g., YouTube). Similarly, information and tutorials on all necessary tools and software will be provided on Canvas. A number of recommended (optional) textbooks are provided for students interested in further study.