27 research outputs found
Facilitating a well-founded approach to autonomic systems
While it is desirable for all computing and communications systems to have well-defined and verifiable behaviour, autonomic systems must additionally guarantee that their adaptive behaviour is correct, both in the sense of responding appropriately to changes in context and in the sense of continuing to meet the high-level requirements of the system. Ensuring such high levels of ”process” correctness poses a significant challenge for system designers. Formal methods provide a valuable tool to assist in the design, analysis and verification processes. The goals of the ACF’s semantics working group is to identify formal techniques that may be applicable to the development of autonomic systems, and to promote the understanding of these techniques within the research community
Whole-system programming of adaptive ambient intelligence
Ambient intelligence involves synthesising data from a range of sources in order to exhibit meaningful adaptive behaviour without explicit user direction, driven by inputs from largely independent devices and data sources. This immediately raises questions of how such behaviours are to be specified and programmed, in the face of uncertainty both in the data being sensed and the tasks being supported. We explore the issues that impact the stability and flexibility of systems, and use these issues to derive constraints and targets for the next generation of programming frameworks
Achieving an acceptable design model for autonomic systems
Autonomic systems present unique design challenges, in
that their individual adaptive components may interact in
complex ways which defeat traditional approaches to design,
analysis and implementation. We argue for a more
holistic approach to design, and identify some key properties
that are necessary for next-generation design method
Java decaffeinated: experiences building a programming language from components
Most modern programming languages are complex and feature rich. Whilst this is (sometimes) an advantage for industrial-strength applications, it complicates both language teaching and language research. We describe our experiences in the design of a reduced sub-set of the Java language and its implementation using the Vanilla language development framework. We argue that Vanilla’s component-based approach allows the language’s feature set to be varied quickly and simply compared with other development approaches
Objects, Components and the Virtual Enterprise
We are currently witnessing a convergence of several threads of technology and business imperatives. The idea of a virtual enterprise (VE) – a business built from both organizationally and geographically distributed units – is becoming an area of increasing interest to both computer scientists and business people. The Objects, Components and the Virtual Enterprise workshop at OOPSLA 98 investigated the role of Object/Component analysis, design and programming in the realization of the VE. The workshop addressed topics including lifecycle models, case studies, HCI, object renaming, and software architectures VEs
Functionality recomposition for self-healing
Autonomic computing aims to provide self-management and adaptation in the implementation of complex (large, heterogeneous, distributed) systems over time. Such adaptations must be stable, in the sense of maintaining the system’s high-level goals across environmental changes, which may lead to functionality loss. In
this paper we present FReSH, a decentralised component-based framework which main objective is to self-heal the operation of complex systems in the face of behavioural disruptions. FReSH deals with formally specified components that provide a single piece of functionality. The reusable and shareable nature of these building
blocks makes them eligible for dynamically recomposing the functionality provided by any failing component of the system without human intervention. FReSH supports the construction of more flexible, adaptive and
robust software structures suitable to cope with the environmental changes of complex systems
Open, stable autonomic adaptation: a grand challenge
Treating autonomic systems as solving individual, isolated
problems misses the opportunity to consider adaptation
as an object of study in its own right. We propose a
grand challenge of supporting adaptation in an open and
stable manner, embracing the evolution of system goals and
constraints over time without sacrificing our ability to describe,
implement and analyse autonomic solutions. We
suggest a possible approach using topology, and comment
on the impact and problems of this novel approach
Adaptive middleware for autonomic systems
The increasingly dynamic nature of resource discovery and binding in modern large-scale
distributed and mobile systems poses significant challenges for existing middleware
platforms. Future platforms must provide strong support for adaptive behaviour in order
both to maintain and optimise services in the face of changing context. We use a survey
of existing middleware systems to develop some core themes that characterise and
constrain the ability of these approaches to support the development of adaptive and
autonomic systems, and draw some possible trends for developing future platforms more
appropriate to these domain
Delay tolerant networks and spatially detailed human mobility
We propose a prototype for a real-world, human
network proximity experiment with detailed recordings of the
position of individuals. Our aim is to provide a comprehensive
dataset to investigate the internal correlations between mobility
and network properties, as well as to compare our results with
different datasets, involving different social groups or mobile
agents. As a further result, we expect the capability to formulate
a model able to evaluate the relative importance of location and
network centrality for efficient delay tolerant networks, with the
added benefit of being able to synthesise realistic trace data for
simulation
Using ontologies in case-based activity recognition
Pervasive computing requires the ability to detect user activity in order to provide situation-specific services. Case-based reasoning can be used for activity recognition by using sensor data obtained from the environment. Pervasive computing systems can grow to be very large, containing many users, sensors, objects and situations, thus raising the issue of scalability. This paper presents a case-based reasoning approach to activity recognition in a smart home setting. An analysis is performed on scalability with respect to case storage, and
an ontology-based approach is proposed for case base maintenance. We succeeded in reducing the casebase size by a factor of one thousand, while increasing the accuracy in recognising some activities