Chris Blondia

SE
7papers
120citations
Novelty24%
AI Score18

7 Papers

SEAug 22, 2015
A framework for adaptive real-time applications: the declarative real-time OSGi component model

Ning Gui, Vincenzo De Florio, Hong Sun et al.

Nowadays, more and more applications require OSGi to have some form of real-time support, which is currently very limited. The resulting closed-system solutions lack of a standard management scheme which forbids standard, system-wide policies for real-time system's deployment, adaptation, and reconfiguration. In order to tackle this problem, this paper proposes a declarative real-time component model. In this model, the distinguishing real-time contract of each component is declaratively described, and a general component real-time management interface is designed. They are used to maintain an accurate view of existing real-time components' promised contracts. A real-time component runtime service is designed to control the whole lifecycle of the components. By using global information and general control interface, it can adjust the system continue to operate without impairing the deployed components' real-time contracts in the face of run-time changes. This system allows itself to be easily extended with other constraint resolving policies to fit different context. The prototype has been tested into a simulated control system. The result shows this framework can provide good real time performance while still provides real-time component dynamicity support as well. To the best of our knowledge, this is the first comprehensive solution providing explicit real-time support from design to execution in OSGi framework.

SEApr 23, 2015
A System Structure for Adaptive Mobile Applications

Vincenzo De Florio, Chris Blondia

A system structure for adaptive mobile applications is introduced and discussed, together with a compliant architecture and a prototypic implementation. A methodology is also introduced, which exploits our structure to decompose the behavior of non stable systems into a set of quasi-stable scenarios. Within each of these scenarios we can exploit the knowledge of the available QoS figures to express simpler and better adaptation strategies.

HCApr 14, 2015
Safety enhancement through situation-aware user interfaces

Vincenzo De Florio, Chris Blondia

Due to their privileged position halfway between the physical and the cyber universes, user interfaces may play an important role in preventing, tolerating, and learning from scenarios potentially affecting mission safety and the user's quality of experience. This vision is embodied here in the main ideas and a proof-of-concepts implementation of user interfaces that combine dynamic profiling with context- and situation-awareness and autonomic software adaptation.

SEApr 14, 2015
On the Requirements of New Software Development

Vincenzo De Florio, Chris Blondia

Changes, they use to say, are the only constant in life. Everything changes rapidly around us, and more and more key to survival is the ability to rapidly adapt to changes. This consideration applies to many aspects of our lives. Strangely enough, this nearly self-evident truth is not always considered by software engineers with the seriousness that it calls for: The assumptions we draw for our systems often do not take into due account that e.g., the run-time environments, the operational conditions, or the available resources will vary. Software is especially vulnerable to this threat, and with today's software-dominated systems controlling crucial services in nuclear plants, airborne equipments, health care systems and so forth, it becomes clear how this situation may potentially lead to catastrophes. This paper discusses this problem and defines some of the requirements towards its effective solution, which we call "New Software Development" as a software equivalent of the well-known concept of New Product Development. The paper also introduces and discusses a practical example of a software tool designed taking those requirements into account --- an adaptive data integrity provision in which the degree of redundancy is not fixed once and for all at design time, but rather it changes dynamically with respect to the disturbances experienced during the run time.

SEApr 13, 2015
A Survey of Linguistic Structures for Application-level Fault-Tolerance

Vincenzo De Florio, Chris Blondia

The structures for the expression of fault-tolerance provisions into the application software are the central topic of this paper. Structuring techniques answer the questions "How to incorporate fault-tolerance in the application layer of a computer program" and "How to manage the fault-tolerant code". As such, they provide means to control complexity, the latter being a relevant factor for the introduction of design faults. This fact and the ever increasing complexity of today's distributed software justify the need for simple, coherent, and effective structures for the expression of fault-tolerance in the application software. In this text we first define a "base" of structural attributes with which application-level fault-tolerance structures can be qualitatively assessed and compared with each other and with respect to the above mentioned needs. This result is then used to provide an elaborated survey of the state-of-the-art of application-level fault-tolerance structures.

SEJan 15, 2014
Reflective and Refractive Variables: A Model for Effective and Maintainable Adaptive-and-Dependable Software

Vincenzo De Florio, Chris Blondia

We propose a simple and effective tool for the expression of tasks such as cross-layer optimization strategies or sensors-related applications. The approach is based on what we refer to as "reflective and refractive variables". Both types of variables are associated with external entities, e.g. sensors or actuators. A reflective variable is a volatile variable, that is, a variable that might be concurrently modified by multiple threads. A library of threads is made available, each of which interfaces a set of sensors and continuously update the value of a corresponding set of sensors. One such thread is "cpu", which exports the current level of usage of the local CPU as an integer between 0 and 100. This integer is reflected into the integer reflective variable cpu. A refractive variable is a reflective variable that can be modified. Each modification is caught and interpreted as a request to change the value of an actuator. For instance, setting variable "tcp_sendrate" would request a cross-layer adjustment to the thread interfacing the local TCP layer entity. This allows express in an easy way complex operations in the application layer of any programming language, e.g. plain old C. We describe our translator and the work we are carrying out within PATS to build simple and powerful libraries of scripts based on reflective and refractive variables, including robotics applications and RFID tags processing.

CYJan 12, 2014
The Missing Ones: Key Ingredients Towards Effective Ambient Assisted Living Systems

Hong Sun, Vincenzo De Florio, Ning Gui et al.

The population of elderly people keeps increasing rapidly, which becomes a predominant aspect of our societies. As such, solutions both efficacious and cost-effective need to be sought. Ambient Assisted Living (AAL) is a new approach which promises to address the needs from elderly people. In this paper, we claim that human participation is a key ingredient towards effective AAL systems, which not only saves social resources, but also has positive relapses on the psychological health of the elderly people. Challenges in increasing the human participation in ambient assisted living are discussed in this paper and solutions to meet those challenges are also proposed. We use our proposed mutual assistance community, which is built with service oriented approach, as an example to demonstrate how to integrate human tasks in AAL systems. Our preliminary simulation results are presented, which support the effectiveness of human participation.