756 research outputs found
Multi-Quality Auto-Tuning by Contract Negotiation
A characteristic challenge of software development is the management of omnipresent change. Classically, this constant change is driven by customers changing their requirements. The wish to optimally leverage available resources opens another source of change: the software systems environment. Software is tailored to specific platforms (e.g., hardware architectures) resulting in many variants of the same software optimized for different environments. If the environment changes, a different variant is to be used, i.e., the system has to reconfigure to the variant optimized for the arisen situation. The automation of such adjustments is subject to the research community of self-adaptive systems. The basic principle is a control loop, as known from control theory. The system (and environment) is continuously monitored, the collected data is analyzed and decisions for or against a reconfiguration are computed and realized. Central problems in this field, which are addressed in this thesis, are the management of interdependencies between non-functional properties of the system, the handling of multiple criteria subject to decision making and the scalability.
In this thesis, a novel approach to self-adaptive software--Multi-Quality Auto-Tuning (MQuAT)--is presented, which provides design and operation principles for software systems which automatically provide the best possible utility to the user while producing the least possible cost. For this purpose, a component model has been developed, enabling the software developer to design and implement self-optimizing software systems in a model-driven way. This component model allows for the specification of the structure as well as the behavior of the system and is capable of covering the runtime state of the system. The notion of quality contracts is utilized to cover the non-functional behavior and, especially, the dependencies between non-functional properties of the system. At runtime the component model covers the runtime state of the system. This runtime model is used in combination with the contracts to generate optimization problems in different formalisms (Integer Linear Programming (ILP), Pseudo-Boolean Optimization (PBO), Ant Colony Optimization (ACO) and Multi-Objective Integer Linear Programming (MOILP)). Standard solvers are applied to derive solutions to these problems, which represent reconfiguration decisions, if the identified configuration differs from the current. Each approach is empirically evaluated in terms of its scalability showing the feasibility of all approaches, except for ACO, the superiority of ILP over PBO and the limits of all approaches: 100 component types for ILP, 30 for PBO, 10 for ACO and 30 for 2-objective MOILP. In presence of more than two objective functions the MOILP approach is shown to be infeasible
Applying Formal Methods to Networking: Theory, Techniques and Applications
Despite its great importance, modern network infrastructure is remarkable for
the lack of rigor in its engineering. The Internet which began as a research
experiment was never designed to handle the users and applications it hosts
today. The lack of formalization of the Internet architecture meant limited
abstractions and modularity, especially for the control and management planes,
thus requiring for every new need a new protocol built from scratch. This led
to an unwieldy ossified Internet architecture resistant to any attempts at
formal verification, and an Internet culture where expediency and pragmatism
are favored over formal correctness. Fortunately, recent work in the space of
clean slate Internet design---especially, the software defined networking (SDN)
paradigm---offers the Internet community another chance to develop the right
kind of architecture and abstractions. This has also led to a great resurgence
in interest of applying formal methods to specification, verification, and
synthesis of networking protocols and applications. In this paper, we present a
self-contained tutorial of the formidable amount of work that has been done in
formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial
Network Security Automation
L'abstract è presente nell'allegato / the abstract is in the attachmen
Security and Privacy Issues of Big Data
This chapter revises the most important aspects in how computing
infrastructures should be configured and intelligently managed to fulfill the
most notably security aspects required by Big Data applications. One of them is
privacy. It is a pertinent aspect to be addressed because users share more and
more personal data and content through their devices and computers to social
networks and public clouds. So, a secure framework to social networks is a very
hot topic research. This last topic is addressed in one of the two sections of
the current chapter with case studies. In addition, the traditional mechanisms
to support security such as firewalls and demilitarized zones are not suitable
to be applied in computing systems to support Big Data. SDN is an emergent
management solution that could become a convenient mechanism to implement
security in Big Data systems, as we show through a second case study at the end
of the chapter. This also discusses current relevant work and identifies open
issues.Comment: In book Handbook of Research on Trends and Future Directions in Big
Data and Web Intelligence, IGI Global, 201
Emerging research directions in computer science : contributions from the young informatics faculty in Karlsruhe
In order to build better human-friendly human-computer interfaces,
such interfaces need to be enabled with capabilities to perceive
the user, his location, identity, activities and in particular his interaction
with others and the machine. Only with these perception capabilities
can smart systems ( for example human-friendly robots or smart environments) become posssible. In my research I\u27m thus focusing on the
development of novel techniques for the visual perception of humans and
their activities, in order to facilitate perceptive multimodal interfaces,
humanoid robots and smart environments. My work includes research
on person tracking, person identication, recognition of pointing gestures,
estimation of head orientation and focus of attention, as well as
audio-visual scene and activity analysis. Application areas are humanfriendly
humanoid robots, smart environments, content-based image and
video analysis, as well as safety- and security-related applications. This
article gives a brief overview of my ongoing research activities in these
areas
Recommended from our members
Analysing the requirements for monitoring and switching: A problem-oriented approach
Context-aware applications monitor changes in their environment and switch their behaviour in order to continue satisfying requirements. Specifying monitoring and switching in such applications can be difficult due to their dependence on varying environmental properties. Two problems require analysis: the detection of changes in the operating environment to assess their impact on requirements satisfaction, and the adaptation of application behaviour to ensure requirements satisfaction.
This thesis borrows from the world of problem-oriented software system development and product-lines to analyse monitoring and switching problems on one hand and contextual changes on the other. It proposes a shift of focus from treating monitoring and switching as activities to be analysed as part of the design, to treating them as part of the problem whose requirements are analysed. We claim three novel contributions: (1) we provide concepts and mechanisms for analysing monitoring and switching problems in context; (2) we formulate and prove two theorems for monitoring and switching, which define the necessary and sufficient conditions for monitoring a contextual variable and for switching application behaviour to restore requirements satisfaction when they are violated; and (3) we provide a tool for automated derivation of the conditions for monitoring and switching.
Our approach is evaluated using two case studies of a proof of concept mobile phone productline and a logistics company that delivers and monitors products across the UK. We found the applications of the approach to be effective in analysing unforeseen requirements violations caused by changes in the systems operating environments. Furthermore, the monitoring and switching mechanisms derived from the analysis enabled the software to become, to some extent, context-aware
Achieving Autonomic Computing through the Use of Variability Models at Run-time
Increasingly, software needs to dynamically adapt its behavior at run-time in response
to changing conditions in the supporting computing infrastructure and in
the surrounding physical environment. Adaptability is emerging as a necessary underlying
capability, particularly for highly dynamic systems such as context-aware
or ubiquitous systems.
By automating tasks such as installation, adaptation, or healing, Autonomic
Computing envisions computing environments that evolve without the need for human
intervention. Even though there is a fair amount of work on architectures
and their theoretical design, Autonomic Computing was criticised as being a \hype
topic" because very little of it has been implemented fully. Furthermore, given that
the autonomic system must change states at runtime and that some of those states
may emerge and are much less deterministic, there is a great challenge to provide
new guidelines, techniques and tools to help autonomic system development.
This thesis shows that building up on the central ideas of Model Driven Development
(Models as rst-order citizens) and Software Product Lines (Variability
Management) can play a signi cant role as we move towards implementing the key
self-management properties associated with autonomic computing. The presented
approach encompass systems that are capable of modifying their own behavior with
respect to changes in their operating environment, by using variability models as if
they were the policies that drive the system's autonomic recon guration at runtime.
Under a set of recon guration commands, the components that make up the architecture
dynamically cooperate to change the con guration of the architecture to a
new con guration.
This work also provides the implementation of a Model-Based Recon guration
Engine (MoRE) to blend the above ideas. Given a context event, MoRE queries the variability models to determine how the system should evolve, and then it provides
the mechanisms for modifying the system.Cetina Englada, C. (2010). Achieving Autonomic Computing through the Use of Variability Models at Run-time [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/7484Palanci
- …