Results 1 - 10
of
82
EgoSpaces: Facilitating Rapid Development of Context-aware Mobile Applications
- IEEE Transactions on Software Engineering, IEEE CS
, 2006
"... Abstract — Today’s mobile applications require constant adaptation to their changing environments, or contexts. Technological advancements have increased the pervasiveness of mobile computing devices such as laptops, handhelds, and embedded sensors. The sheer amount of context information available ..."
Abstract
-
Cited by 63 (5 self)
- Add to MetaCart
(Show Context)
Abstract — Today’s mobile applications require constant adaptation to their changing environments, or contexts. Technological advancements have increased the pervasiveness of mobile computing devices such as laptops, handhelds, and embedded sensors. The sheer amount of context information available for adaptation places a heightened burden on application developers as they must manage and utilize vast amounts of data from diverse sources. Facilitating programming in this datarich environment requires a middleware that provides context information to applications in an abstract form. In this paper, we demonstrate the feasibility of such a middleware that allows programmers to focus on high-level interactions among programs and to employ declarative abstract specifications of context in settings that exhibit transient interactions with opportunistically encountered components. We also discuss the novel context-aware abstractions the middleware provides and the programming knowledge necessary to write applications using our middleware. Finally, we provide examples demonstrating the flexibility of the infrastructure and its ability to support differing tasks from a wide variety of application domains. I.
A Style-Aware Architectural Middleware for Resource-Constrained, Distributed Systems
- IEEE Trans. on Software Engineering
, 2005
"... A recent emergence of small, resource-constrained, and highly mobile computing platforms presents numerous new challenges for software developers. We refer to development in this new setting as programming-in-the-small-and-many (Prism). This paper provides a description and evaluation of Prism-MW, ..."
Abstract
-
Cited by 52 (31 self)
- Add to MetaCart
A recent emergence of small, resource-constrained, and highly mobile computing platforms presents numerous new challenges for software developers. We refer to development in this new setting as programming-in-the-small-and-many (Prism). This paper provides a description and evaluation of Prism-MW, a middleware platform intended to support software architecture-based development in the Prism setting. Prism-MW provides efficient and scalable implementation-level support for the key aspects of Prism application architectures, including their architectural styles. Additionally, Prism-MW is extensible to support different application requirements suitable for the Prism setting. Prism-MW has been applied in a number of applications and used as an educational tool in graduate-level software architecture and embedded systems courses. Recently, Prism-MW has been successfully evaluated by a major industrial organization for use in one of their key distributed embedded systems. Our experience with the middleware indicates that the principles of architecture-based software development can be successfully, and flexibly, applied in the Prism setting.
H.: A context-aware middleware for applications in mobile ad hoc environments
- In: MPAC ’04: Proceedings of the 2nd workshop on Middleware for pervasive and ad-hoc computing
, 2004
"... Novel ubiquitous computing applications such as intelligent vehicles, smart buildings, and traffic management require special properties that traditional computing applications do not support, such as context-awareness, massive decentralisation, autonomous behaviour, adaptivity, proactivity, and inn ..."
Abstract
-
Cited by 36 (1 self)
- Add to MetaCart
(Show Context)
Novel ubiquitous computing applications such as intelligent vehicles, smart buildings, and traffic management require special properties that traditional computing applications do not support, such as context-awareness, massive decentralisation, autonomous behaviour, adaptivity, proactivity, and innate collaboration. This paper presents a new computational model and middleware that reflect support for the required the properties. The sentient object model is proposed by the CORTEX 1 project to support the construction of ubiquitous applications. A flexible, run-time reconfigurable component-based middleware has been built to provide run-time support to engineer the sentient object programming paradigm. An application infrastructure using sentient objects to enable cooperation between autonomous and proactive vehicles has been implemented to demonstrate the appropriateness of the computational model and the validity of the middleware for pervasive mobile ad hoc computing.
Testing Context-Sensitive Middleware-Based Software Applications
- PROCEEDINGS OF THE 28TH ANNUAL INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC 2004)
, 2004
"... Context-sensitive middleware-based software is an emerging kind of ubiquitous computing application. The components of such software communicate proactively among themselves according to the situational attributes of their environments, known as the ``contexts''. The actual process of acce ..."
Abstract
-
Cited by 34 (21 self)
- Add to MetaCart
Context-sensitive middleware-based software is an emerging kind of ubiquitous computing application. The components of such software communicate proactively among themselves according to the situational attributes of their environments, known as the ``contexts''. The actual process of accessing and updating the inter-component contexts lies with the middleware. The latter invokes the relevant local and remote operations whenever any context inscribed in the situation-aware interface is satisfied. Since the applications operate in a highly dynamic environment, the testing of context-sensitive software is complex and challenging.
Metamorphic testing is a property-based testing strategy. It recommends that, even if a test case does not reveal any failure, follow-up test cases should be further constructed from the original to check whether the software satisfies some necessary conditions of the problem to be implemented. This paper proposes to use isotropic properties of contexts as metamorphic relations for testing context-sensitive software. For instance, distinct points on the same isotropic curve of contexts would entail comparable responses by the components. This notion of testing context relations is novel, robust, and intuitive to users.
Testing Context-Aware Middleware-Centric Programs: a Data Flow Approach and an RFID-Based Experimentation
- Proceedings of the 14th ACM SIGSOFT International Symposium on Foundations of Software Engineering (SIGSOFT 2006/FSE-14)
, 2006
"... Pervasive context-aware software is an emerging kind of application. Many of these systems register parts of their context-aware logic in the middleware. On the other hand, most conventional testing techniques do not consider such kind of application logic. This paper proposes a novel family of test ..."
Abstract
-
Cited by 33 (15 self)
- Add to MetaCart
Pervasive context-aware software is an emerging kind of application. Many of these systems register parts of their context-aware logic in the middleware. On the other hand, most conventional testing techniques do not consider such kind of application logic. This paper proposes a novel family of testing criteria to measure the comprehensiveness of their test sets. It stems from context-aware data flow information. Firstly, it studies the evolution of contexts, which are environmental information relevant to an application program. It then proposes context-aware data flow associations and testing criteria. Corresponding algorithms are given. It uses a prototype testing tool to conduct experimentation on an RFID-based location sensing software running on top of context-aware middleware. The experimental results show that our approach is applicable, effective, and promising.
A Survey of Context Data Distribution for Mobile Ubiquitous Systems
, 2013
"... The capacity to gather and timely deliver to the service level any relevant information that can characterize service-provisioning environment, such as computing resources/capabilities, physical device location, user preferences, and time constraints, usually defined as context-awareness, is widely ..."
Abstract
-
Cited by 23 (0 self)
- Add to MetaCart
The capacity to gather and timely deliver to the service level any relevant information that can characterize service-provisioning environment, such as computing resources/capabilities, physical device location, user preferences, and time constraints, usually defined as context-awareness, is widely recognized as a core function for the development of modern ubiquitous and mobile systems. Much work has been done to enable contextawareness and to ease the diffusion of context-aware services; at the same time, several middleware solutions have been designed to transparently implement context management and provisioning in the mobile system. However, to the best of our knowledge, an in-depth analysis of the context data distribution, namely the function in charge of distributing context data to interested entities, is still missing. Starting from the core assumption that only effective and efficient context data distribution can pave the way to the deployment of truly context-aware services, this paper aims at putting together current research efforts to derive an original and holistic view of the existing literature. We present a unified architectural model and a new taxonomy for context data distribution, by considering and comparing a large number of solutions. Finally, based on our analysis, we
Managing quality of context in pervasive computing
- in Proc. International Conference on Quality Software (QSIC’06
, 2006
"... Context-awareness plays a key role in a paradigm shift from traditional desktop styled computing to emerging per-vasive computing. Many context-aware systems have been built to achieve the vision of pervasive computing and al-leviate the human attention bottleneck; however, these sys-tems are far fr ..."
Abstract
-
Cited by 18 (1 self)
- Add to MetaCart
(Show Context)
Context-awareness plays a key role in a paradigm shift from traditional desktop styled computing to emerging per-vasive computing. Many context-aware systems have been built to achieve the vision of pervasive computing and al-leviate the human attention bottleneck; however, these sys-tems are far from real world applications. Quality of con-text is critical in reducing the gap between existing systems and real-life applications. Aiming to provide the support of quality of context, in this paper, we propose a novel quality model for context information and a context man-agement mechanism for inconsistency resolution. We also build a prototype system to validate our proposed model and mechanism, and to assist the development of context-aware applications. Through our evaluations and case study, context-aware applications can be built with the sup-port of quality of context.
Application Adaptation through Transparent and Portable Object Mobility in Java
- Proc. of 2004 International Symposium on Distributed Objects and Applications (DOA 2004), Agia
, 2004
"... Abstract. This paper describes MobJeX, an adaptive Java based application framework that uses a combination of pre-processing and runtime support to provide transparent object mobility (including AWT and Swing user interface components) between workstations, PDAs and smartphones. Emphasis is placed ..."
Abstract
-
Cited by 15 (7 self)
- Add to MetaCart
Abstract. This paper describes MobJeX, an adaptive Java based application framework that uses a combination of pre-processing and runtime support to provide transparent object mobility (including AWT and Swing user interface components) between workstations, PDAs and smartphones. Emphasis is placed on the mobility subsystem (MS), a mobile object transport mechanism providing a high level of transparency and portability from the perspective of the system and the developer. The MS is compared to its most similar predecessor FarGo, demonstrating the advantages of the MS in terms of transparency and portability. Furthermore, a series of laboratory tests are conducted in order to quantify the runtime performance of the MS and two other systems, FarGo and Voyager.
Reconceptualizing a Family of Heterogeneous Embedded Systems via Explicit Architectural Support
- Proc. of the 29th International Conference on Software Engineering (ICSE
, 2007
"... It has been widely advocated that software architecture provides an effective set of abstractions for engineering (families of) complex software systems. However, architectural concepts are seldom supported directly at the level of system implementation. In embedded environments in particular, devel ..."
Abstract
-
Cited by 14 (11 self)
- Add to MetaCart
(Show Context)
It has been widely advocated that software architecture provides an effective set of abstractions for engineering (families of) complex software systems. However, architectural concepts are seldom supported directly at the level of system implementation. In embedded environments in particular, developers are often forced to rely on low-level programming languages. While this is conducive to fine-grain control over the system, it does not lend itself to addressing larger issues such as ensuring architectural integrity or managing an application family. In this paper we describe our experience with fundamentally altering the manner in which a family of embedded applications is designed, analyzed, implemented, deployed, and evolved using explicit architectural constructs. We discuss our strategy, the challenges we faced in the course of our project, the lessons learned in the process, and several open issues that remain unresolved. 1.