CS 247I: Design for Understanding
In this course, students explore the design of systems, information and interface for human use, modeling the flow of interactions, data, and context.
Autumn  |  Christina Wodtke
CS 247
These studio classes teach advanced techniques in human-computer interaction design with a focus on challenging design contexts. In studio sessions we will work on exercises and projects to build design skills with the help of peer and instructor critique. While design thinking classes center on innovative practices to come up with ways to better serve users, in CS 247 we focus on how to turn those insights into desirable, usable, and useful software.
In this course, students explore the design of systems, information and interface for human use, modeling the flow of interactions, data, and context.
Autumn  |  Christina Wodtke
ExploreCourses
Students look at experiences that address the needs of multiple stakeholders at different touchpoints - digital, physical, and everything in between.
Winter  |  Julie Stanford
ExploreCourses
Students craft systems, information, and interfaces to shape user behavior while reflecting on the ethical implications of such technologies.
Winter  |  Christina Wodtke
Past projects
An intro to theory and practice of game design. Students make digital and paper games, do rapid iteration, and run user research studies covering a variety of genres from narrative to pure strategy.
Spring  |  Christina Wodtke
ExploreCourses
Students explore the constraints, opportunities, and specialized processes necessary to create AI systems that work effectively for the humans involved.
Winter  |  Julie Stanford
ExploreCourses
The goal of the CS 247s is to get students involved with design challenges that are meaningful to them while gaining deliberate practice by using core skills across different contexts. For this reason, different versions of CS 247 can be taken to build skills and portfolio.
CS 247 is 3 hours twice a week. The first 2 hours are devoted to activities, lectures, and exercises. The last hour is used for group work with the teaching team available to coach you as you seek to level up.
All CS 247s will cover the below 6 topics, but each topic will be modified to be relevant to the type of design challenge being explored. For example, in Design for Play the topic of information architecture will be grounded in organization of resources and economies while in Design for Understanding it will about information scent and retrieval.
Affordances and feedback. Usage scenarios (frequent vs. infrequent, etc). Task Analysis. User flows. Longitudinal studies, personas, scenarios, etc. Rapid Iteration Testing and Evaluation.
Metadata and why it matters. Human information seeking models & information scent. Message architecture and content strategy. Research for IA, especially card sorting.
Gestalt and other visual design principles. Messaging affordances effectively. Color, typography, layout. Usability testing.
Sketching for observation. Sketching for communication and ideation. Task Analysis. Models for understanding and communication.
Students have been introduced to this topics, we are are now making sure they have a level of competence, if not mastery, in these core areas: Needfinding, Sensemaking, Ideation, Iteration, Evaluation.
Respectful ways to collaborate with end users & participatory design. Research ethics. Understanding ethical behavior shaping techniques. Ethical and inclusive interface design. Topical ethics.
Can I take more than one version of CS 247?
Yes! Each version will be different enough in what it covers that taking more than one will build up practice and your portfolio.
Is attendance mandatory?
Yes. In a studio class, students learn from each other, practice effective collaboration and build on each other’s ideas. You can only miss two classes or it will affect your grade.
Are there any prerequisites?
Yes, the prerequisite for all CS 247 courses is CS 147 or equivalent background in design thinking. Check out the CS 147 curriculum on the course website (cs147.stanford.edu).
What level of proficiency with computer programming is recommended?
Generally, there is no required or recommended level of programming proficiency for CS 247. It is worth mentioning, though, that greater proficiency opens up options when building your design project. Many CS 247 students have found their mobile and web development skills to be useful. Additionally, CS 147 (the prerequisite) includes mobile development in the curriculum.
Is there an application to get into the class?
It depends on the enrollment level, but because these courses are typically popular there is usually an application distributed on the first day of class. Priority is given to upperclassmen who need to graduate and remaining decisions are made on a case-by-case basis.
What are some tools that might be useful for CS 247?
It depends on which version you're interested in taking. We recommend familiarity (or willingness to learn) Figma as a baseline. Other tools that students have used are Unity, Twine, React, React Native, and more.