Supporting co-evolution of users and systems by the recognition of Interaction Patterns Stefano Arondi, Pietro Baroni, Daniela Fogli, Piero Mussio Dipartimento di Elettronica per l’Automazione Università di Brescia Via Branze 38, 25123 Brescia Italy Tel. + 39 030 3715450 Fax + 39 030 380014 {baroni, fogli, mussio}@ing.unibs.it ABSTRACT This paper presents an approach to support the designer of Visual Interactive Systems (VISs) in adapting a VIS to the evolution of its users. This process is called co-evolution of users and systems. The approach is based on the identification of the patterns of interaction between the user and an interactive system and on their use for the evolution of the system to facilitate novel usages introduced by the user. The approach is focused on WIMP systems and is based on the recently introduced PCL (Pictorial Computing Laboratory) model of interaction, within which we provide a novel definition of interaction pattern . The proposal assumes that the VIS is observed by an external system called SIC (Supporting Interaction Co-evolution), which is in charge of recording the interactions between the user and the VIS and of analyzing the relevant interaction patterns. In particular, SIC exploits a UML-based statechart specification of the VIS in order to associate observed user activities with the states of the interactive process. This information provides a useful basis for a variety of pattern recognition techniques. Two techniques called usual state and recurrent sequence recognition are illustrated and the results of a first experiment are discussed. Categories and Subject Descriptors D.2.2 [Software Engineering]: Design Tools and Techniques – user interfaces, state diagrams. General Terms Design, Experimentation, Human Factors, Languages. Keywords Visual interface design, visual sentence, co-evolution, system observation. 1. INTRODUCTION An intriguing phenomenon, often observed in (Human- Computer Interaction) HCI studies, is that “using the system changes the users, and as they change they will use the system in new ways” [24]. In turn, the designer evolves the system to adapt it to its new usages. We call this phenomenon co-evolution of users and systems , to emphasize the interest on methods and tools to support adequate system co-evolution . This paper presents an approach to support co-evolution, helping designers in identifying the new patterns of user behavior and the context in which they occur, so that designers can decide if it is worthwhile to co-evolve the system. The concept of user behavior in a context will be made precise by the definition of interaction pattern. This notion will be framed in a model of interaction and a formalism for its description, recently introduced by the Pictorial Computing Laboratory (PCL) [6]. Interaction patterns are identified by a system, SIC (Supporting Interaction Co-evolution), able to observe the interactions between the user and an interactive system. SIC associates user activities with the states of the interactive process, exploiting a statechart [15] specification of the system, in the notation adopted in UML (Unified Modeling Language) [4], and uses XML (Extensible Markup Language) [31] to document its activity and manage the interaction with the designer. The identified interaction patterns are thereafter examined by the designer. Two examples of co-evolution, based on usual state and recurrent sequence patterns identified by SIC, are discussed with reference to a running example relevant to an experiment on an interactive prototype, called “Online Bookshop”.