The goal of CAcTUS (Context-Awareness Testing for Ubiquitous Systems) project is to answer questions regarding ubiquitous systems, trying to define a strategy for planning and executing testing procedures considering the potential contexts of use and using measurements.

Ubiquitous computing changes the focus of interest from computer technology to the users and their needs. Efforts in ubiquitous computing expands the place where the software system is used and the tradition mode of interaction beyond the desktop computers, going to the everyday spaces in which the main challenge is to make the computer systems really useful in the different situations encountered in the real world (Tang et al., 2011). To that end, ubiquitous computing community defends the idea of invisibility, where technologies should be integrated with the real objects of day-to-day activities in a way that they become indistinguishable (Weiser, 1991).

In this context, it is essential that different types of devices (sensors, computers, mobile technologies) and services interact automatically without user intervention, which means that is essential to ensure interoperability. With the recent advances in the development of ubiquitous applications, important issues related to Human-Computer Interaction (HCI) should be considered, for example, if the software system adds value to the end user (Rocha et al., 2011), if the software system really meets the users’ expectations and if the users are satisfied when using this type of application. These issues are even more relevant if we consider the diversity of existing technologies (e.g., cellular phones, tablets, IPOD, etc.) using different types of interaction (e.g., audio, video, text, image) between the user and the computer devices. Moreover, the variety of technological devices makes difficult the interoperability and the need of management and self-organization imposed by the dynamicity of the environment (Rock, 2007). We advocate, therefore, that the interaction issues in ubiquitous systems go beyond the human-computer relationship, encompassing the interaction between different devices and systems, that we call in this project actorcomputer interaction, in which the actor can be not only the user, but also, another computer, device or software system in order to better answer the need of invisibility required.

To achieve the adaptability to the use of different technologies and modes of interaction and better interoperability, requiring minimal input from the user, the ubiquitous system should be context-aware. A context-aware system uses the information about the user and/or the environment (physical or computational) to provide services and relevant information to its users (Dey, 2001). Thus, the ubiquitous systems must be able to capture the information about the context and use it to guide their behavior in the actor-computer interaction and to assist users while performing their tasks. Achieve the main goals of ubiquitous computing and address these questions is not trivial since the ubiquitous systems require, simultaneously, characteristics of distributed, heterogeneous and user-centered software. Moreover, the wide variety of computer devices makes difficult the interoperability and the need for dynamic management and self-organization imposed by the dynamicity of the environment. In this context, different studies in the literature (e.g., Kjeldskov et al. (2006), Fiotakis et al. (2009), O’Neil et al. (2005)) have explored how to assure the quality of such systems in order to meet their particularities.

In general, these studies have explored the user testing performed in laboratory or in real environments to identify usability problems that allow the improvement of these systems in order to better serve its users. However, to better control this cycle of assessment and quality improvement, tests must be properly designed and implemented, which leads to different research questions: what tests should be performed to ensure the best actor-computer interaction? How to consider the different possible contexts in such tests? How to use the results of tests to evaluate the quality of the ubiquitous systems? To what extent should the tests be conducted considering the cost of the desired quality? The goal of this project is to answer these questions, trying to define a strategy for planning and executing testing procedures for ubiquitous systems considering the potential contexts of use and using measurements.