A lesson learned repeatedly by engineering disciplines is that design problems have a context, and that the overly narrow optimization of one part of a design can be rendered invalid by the broader context of the problem. Even from a direct computer science perspective, therefore, it is advantageous to frame the problem of human-computer interaction broadly enough so as to help students (and practitioners) avoid the classic pitfall of design divorced from the context of the problem.