Marcio E. F. Maia

Learn More
The dinamicy and uncertainness of resources in mobile networks ask for novel uncoupled, adaptable and autonomous programming abstractions. Although applications are built upon a middleware layer that encapsulates some of that complexity, there is a lot left to fully explore the potential of ubiquitous and pervasive systems. To provide an insight on the(More)
Sensors of all kinds are being integrated with mobile and portable devices (tablets, smartphones). This opens up the possibility of context-aware applications to effectively be able to adapt their behavior, user interfaces and content according to the current user's situation. Frequently, context-aware applications require an infrastructure for acquisition,(More)
Mobile devices are multipurpose and multi-sensor equipments supporting applications able to adapt their behavior according to changes in the user’s context (device, location, time, etc.). Meanwhile, the development of mobile and context-aware software is not a simple task, mostly due to the peculiar characteristics of these devices. Although several(More)
This paper presents a novel programming model for explicitly separating parallelization and middleware-specific concerns in bag-of-tasks (BoT) grid applications. The model uses Java threads for application decomposition, and aspect-oriented programming to dynamically (and transparently) convert the application's thread objects into independent grid tasks,(More)
The increasing number of mobile devices allows users to access applications anytime and anywhere. In such applications, location is a key information to improve the interaction between user and services. Existing applications combine location with other context information, such as weather, user’s activity, temperature, among others. However, developing(More)
Ubiquitous systems, or simply put Ubiquitous Sofware, are user-centric complex systems that must simultaneously deal with requirements such as mobility, portability, adaptability, interoperability and context-awareness, among others. In that direction, the last decades presented several Software Engineering techniques like frameworks and middlewares,(More)
The widespread use of mobile devices is reshaping the way users interact, allowing applications to explore physical proximity of devices to offer intelligent services. Although there are several communication technologies available (e.g., Wi- Fi, Wi-Fi Direct, LTE, UMTS, Bluetooth, NFC), building an application from scratch considering both communication(More)
The evolution of mobile technologies allows the emerging of ubiquitous systems, able to anticipate user needs and to seamlessly adapt to context changes. These systems present the problem of dynamic adaptation in a highly distributed, heterogeneous and volatile environment, since it may be difficult to collect and process context information from(More)