A pattern approach to interaction design - Borchers, Jan (Wiley series in software design patterns, 2001)