Thus, this book describes the process by which functional, nonfunctional, or display-oriented requirements are converted first into prototypes and then into working systems. While the process may at times seem almost mysterious, there is in fact a methodology that drives the process -- a methodology that is defined in terms of an adaptive life cycle. There are a number of steps or phases that comprise the standard life cycle, as well as methods, tools and techniques that permit each step to be taken. Describing the effort to implement this process to enhance user-computer interaction, this book presents a methodological approach that seeks to identify and apply findings from cognitive science to the design, prototyping, and evaluation of user-computer interfaces.