310,803 research outputs found
Towards a Tool-based Development Methodology for Pervasive Computing Applications
Despite much progress, developing a pervasive computing application remains a
challenge because of a lack of conceptual frameworks and supporting tools. This
challenge involves coping with heterogeneous devices, overcoming the
intricacies of distributed systems technologies, working out an architecture
for the application, encoding it in a program, writing specific code to test
the application, and finally deploying it. This paper presents a design
language and a tool suite covering the development life-cycle of a pervasive
computing application. The design language allows to define a taxonomy of
area-specific building-blocks, abstracting over their heterogeneity. This
language also includes a layer to define the architecture of an application,
following an architectural pattern commonly used in the pervasive computing
domain. Our underlying methodology assigns roles to the stakeholders, providing
separation of concerns. Our tool suite includes a compiler that takes design
artifacts written in our language as input and generates a programming
framework that supports the subsequent development stages, namely
implementation, testing, and deployment. Our methodology has been applied on a
wide spectrum of areas. Based on these experiments, we assess our approach
through three criteria: expressiveness, usability, and productivity
A new paradigm for SpeckNets:inspiration from fungal colonies
In this position paper, we propose the development of a new biologically inspired paradigm based on fungal colonies, for the application to pervasive adaptive systems. Fungal colonies have a number of properties that make them an excellent candidate for inspiration for engineered systems. Here we propose the application of such inspiration to a speckled computing platform. We argue that properties from fungal colonies map well to properties and requirements for controlling SpeckNets and suggest that an existing mathematical model of a fungal colony can developed into a new computational paradigm
System Support for Managing Invalid Bindings
Context-aware adaptation is a central aspect of pervasive computing
applications, enabling them to adapt and perform tasks based on contextual
information. One of the aspects of context-aware adaptation is reconfiguration
in which bindings are created between application component and remote services
in order to realize new behaviour in response to contextual information.
Various research efforts provide reconfiguration support and allow the
development of adaptive context-aware applications from high-level
specifications, but don't consider failure conditions that might arise during
execution of such applications, making bindings between application and remote
services invalid. To this end, we propose and implement our design approach to
reconfiguration to manage invalid bindings. The development and modification of
adaptive context-aware applications is a complex task, and an issue of an
invalidity of bindings further complicates development efforts. To reduce the
development efforts, our approach provides an application-transparent solution
where the issue of the invalidity of bindings is handled by our system,
Policy-Based Contextual Reconfiguration and Adaptation (PCRA), not by an
application developer. In this paper, we present and describe our approach to
managing invalid bindings and compare it with other approaches to this problem.
We also provide performance evaluation of our approach
A context-aware framework for collaborative activities in pervasive communities
Pervasive environments involve the interaction of users with the objects that surround them and also other participants. In this way, pervasive communities can lead the user to participate beyond traditional pervasive spaces, enabling the cooperation among groups taking into account not only individual interests, but also the collective and social context. In this study, the authors explore the potential of using context-aware information in CSCW application in order to support collaboration in pervasive environments. In particular this paper describes the approach used in the design and development of a context-aware framework utilizing users' context information interpretation for behaviour adaptation of collaborative applications in pervasive communities
Enabling High-Level Application Development for the Internet of Things
Application development in the Internet of Things (IoT) is challenging
because it involves dealing with a wide range of related issues such as lack of
separation of concerns, and lack of high-level of abstractions to address both
the large scale and heterogeneity. Moreover, stakeholders involved in the
application development have to address issues that can be attributed to
different life-cycles phases. when developing applications. First, the
application logic has to be analyzed and then separated into a set of
distributed tasks for an underlying network. Then, the tasks have to be
implemented for the specific hardware. Apart from handling these issues, they
have to deal with other aspects of life-cycle such as changes in application
requirements and deployed devices. Several approaches have been proposed in the
closely related fields of wireless sensor network, ubiquitous and pervasive
computing, and software engineering in general to address the above challenges.
However, existing approaches only cover limited subsets of the above mentioned
challenges when applied to the IoT. This paper proposes an integrated approach
for addressing the above mentioned challenges. The main contributions of this
paper are: (1) a development methodology that separates IoT application
development into different concerns and provides a conceptual framework to
develop an application, (2) a development framework that implements the
development methodology to support actions of stakeholders. The development
framework provides a set of modeling languages to specify each development
concern and abstracts the scale and heterogeneity related complexity. It
integrates code generation, task-mapping, and linking techniques to provide
automation. Code generation supports the application development phase by
producing a programming framework that allows stakeholders to focus on the
application logic, while our mapping and linking techniques together support
the deployment phase by producing device-specific code to result in a
distributed system collaboratively hosted by individual devices. Our evaluation
based on two realistic scenarios shows that the use of our approach improves
the productivity of stakeholders involved in the application development
Autonomic Pervasive Applications Driven by Abstract Specifications
Conference in conjunction with ICAC 2012 (International Conference on Autonomic Computing)International audiencePervasive application architectures present stringent requirements that make their development especially hard. In particular, they need to be flexible in order to cope with dynamism in different forms (e.g. service and data providers and consumers). The current trend to build applications out of remote services makes the availability of constituent application components inherently dynamic. Developers can no longer assume that applications are static after development or at run time. Unfortunately, developing applications that are able to cope with dynamism is very complex.Existing development approaches do not provide explicit support for managing dynamism. In this paper we describe Rondo, a tool suite for designing pervasive applications. More specifically, we present our propositions in pervasive application specification, which borrows concepts from service-oriented component assembly, model-driven engineering (MDE) and continuous deployment, resulting in a more flexible approach than traditional application definitions. Then the capabilities of our application model are demonstrated with an example application scenario designed using our approach
Recommended from our members
Easing software development for pervasive computing environments
textIn recent years pervasive computing has enjoyed an amazing growth in both research and commercial fields. Not only have the number of available techniques and tools expanded, but the number of actual deployments has been underwhelming. With this growth however, we are also experiencing a divergence of software interfaces, languages, and techniques. This leads to an understandably confusing landscape which needlessly burdens the development of applications. It is our sincere hope that through the use of specialized interfaces, languages, and tools, we can make pervasive computing environments more approachable and efficient to software developers and thereby increase the utility and value of pervasive computing applications. In this dissertation, we present a new method for creating and managing the long-term conversations between peers in pervasive computing environments. The Application Sessions Model formally describes these conversations and specifies techniques for managing them over their lifetimes. In addition to these descriptions, this dissertation presents a prototype implementation of the model and results from its use for realistic scenarios. To address the Application Sessions Model's unique needs for resource discovery in pervasive computing environments, we also present the Evolving Tuples Model. This model is also formally defined in this dissertation and practical examples are used to clarify its features. A prototype for both sensor hardware and software simulation of this model is described along with results characterizing the behavior of the model. The models, prototypes, and evaluations of both models presented here form the basis of a new and interesting line of research into support structures for pervasive computing application development.Electrical and Computer Engineerin
Proposal of a clean slate network architecture for ubiquitous services provisioning
The Pervasive Computing field is almost always addressed from application, middleware, sensing or Human Computer Interaction perspective. Thus, solutions are usually designed at application level or involve developing new hardware.
Although current layered network architectures (mainly TCP/IP stack) have enabled internetworking of lots of different devices and services, they are neither well-suited nor optimized for pervasive computing applications. Hence, we firmly believe that we should have an underlying network architecture providing the
flexible, context-aware and adaptable communication infrastructure required to ease the development of ubiquitous
services and applications. Herein, we propose a clean slate network architecture to deploy ubiquitous services in a Pervasive and Ubiquitous Computing environment. The architecture is designed to avoid hierarchical layering, so we propose a serviceoriented approach for a flow-oriented context-aware network architecture where communications are composed on the fly (using reusable components) according to the needs and requirements of the consumed service.Postprint (published version
- …