Learn More
AspectJ™ is a simple and practical aspect-oriented extension to Java™. With just a few new constructs, AspectJ provides support for modular implementation of a range of crosscutting concerns. In AspectJ's dynamic join point model, join points are well-defined points in the execution of the program; pointcuts are collections of join points; advice are(More)
59 M Many software developers are attracted to the idea of AOP—they recognize the concept of crosscutting concerns and know they have had problems with the implementation of such concerns in the past. But they have questions about how to adopt AOP into their development process, including: How to use aspects in existing code? What kinds of benefits can be(More)
The growing popularity of aspect-oriented languages, such as AspectJ, and of corresponding design approaches, makes it important to learn how best to modularize programs in which aspect-oriented composition mechanisms are used. We contribute an approach to information hiding modularity in programs that use <i>quantified advising</i> as a module composition(More)
BACKGROUND To our knowledge, no studies have evaluated whether weight loss can be promoted in overweight adults through the use of an intervention that is largely based on daily SMS (Short Message Service: text) and MMS (Multimedia Message Service: small picture) messages transmitted via mobile phones. OBJECTIVE This paper describes the development and(More)
Aspect-oriented programming (AOP) languages such as AspectJ offer new mechanisms and possibilities for decomposing systems into modules and composing modules into systems. The key mechanism in AspectJ is the advising of crosscutting sets of join points. An aspect module uses a pointcut descriptor (PCD) to declaratively specify sets of points in program(More)
Being mobile influences not only the types of information people seek but also the ways they attempt to access it. Mobile contexts present challenges of changing location and social context, restricted time for information access, and the need to share attentional resources among concurrent activities. Understanding mobile information needs and associated(More)
tract. Recognition of everyday physical activities is difficult due to the llenges of building informative, yet unobtrusive sensors. The most widely loyed and used mobile computing device today is the mobile phone, which ents an obvious candidate for recognizing activities. This paper explores coarse-grained GSM data from mobile phones can be used to(More)
To be widely adopted, location-aware computing must be as effortless, familiar and rewarding as web search tools like Google. We envisage the global scale Place Lab, consisting of an open software base and a community building activity as a way to bootstrap the broad adoption of location-aware computing. The initiative is a laboratory because it will also(More)
Context-awareness can improve the usefulness of automated reminders. However, context-aware reminder applications have yet to be evaluated throughout a person's daily life. Mobile phones provide a potentially convenient and truly ubiquitous platform for the detection of personal context such as location, as well as the delivery of reminders. We designed(More)