Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Amel Bennaceur is active.

Publication


Featured researches published by Amel Bennaceur.


formal methods | 2011

Middleware-Layer Connector Synthesis: Beyond State of the Art in Middleware Interoperability

Valérie Issarny; Amel Bennaceur; Yérom-David Bromberg

This chapter deals with interoperability among pervasive networked systems, in particular accounting for the heterogeneity of protocols from the application down to the middleware layer, which is mandatory for todays and even more for tomorrows open and highly heterogeneous networks. The chapter then surveys existing approaches to middleware interoperability, further providing a formal specification so as to allow for rigorous characterization and assessment. In general, existing approaches fail to address interoperability required by todays ubiquitous and heterogeneous networking environments where interaction protocols run by networked systems need to be mediated at both application and middleware layers. To meet such a goal, this chapter introduces the approach that is investigated within the Connect project and that deals with the dynamic synthesis of emergent connectors that mediate the interaction protocols executed by the networked systems.


international middleware conference | 2011

The role of ontologies in emergent middleware: supporting interoperability in complex distributed systems

Gordon S. Blair; Amel Bennaceur; Nikolaos Georgantas; Paul Grace; Valérie Issarny; Vatsala Nundloll; Massimo Paolucci

Interoperability is a fundamental problem in distributed systems, and an increasingly difficult problem given the level of heterogeneity and dynamism exhibited by contemporary systems. While progress has been made, we argue that complexity is now at a level such that existing approaches are inadequate and that a major re-think is required to identify principles and associated techniques to achieve this central property of distributed systems. In this paper, we postulate that emergent middleware is the right way forward; emergent middleware is a dynamically generated distributed system infrastructure for the current operating environment and context. In particular, we focus on the key role of ontologies in supporting this process and in providing underlying meaning and associated reasoning capabilities to allow the right run-time choices to be made. The paper presents the Connect middleware architecture as an example of emergent middleware and highlights the role of ontologies as a cross-cutting concern throughout this architecture. Two experiments are described as initial evidence of the potential role of ontologies in middleware. Important remaining challenges are also documented.


Computing | 2013

The role of [email protected] in supporting on-the-fly interoperability

Nelly Bencomo; Amel Bennaceur; Paul Grace; Gordon S. Blair; Valérie Issarny

Models at runtime can be defined as abstract representations of a system, including its structure and behaviour, which exist in tandem with the given system during the actual execution time of that system. Furthermore, these models should be causally connected to the system being modelled, offering a reflective capability. Significant advances have been made in recent years in applying this concept, most notably in adaptive systems. In this paper we argue that a similar approach can also be used to support the dynamic generation of software artefacts at execution time. An important area where this is relevant is the generation of software mediators to tackle the crucial problem of interoperability in distributed systems. We refer to this approach as emergent middleware, representing a fundamentally new approach to resolving interoperability problems in the complex distributed systems of today. In this context, the runtime models are used to capture meta-information about the underlying networked systems that need to interoperate, including their interfaces and additional knowledge about their associated behaviour. This is supplemented by ontological information to enable semantic reasoning. This paper focuses on this novel use of models at runtime, examining in detail the nature of such runtime models coupled with consideration of the supportive algorithms and tools that extract this knowledge and use it to synthesise the appropriate emergent middleware.


leveraging applications of formal methods | 2010

Towards an architecture for runtime interoperability

Amel Bennaceur; Gordon S. Blair; Franck Chauvel; Huang Gang; Nikolaos Georgantas; Paul Grace; Falk Howar; Paola Inverardi; Valérie Issarny; Massimo Paolucci; Animesh Pathak; Romina Spalazzese; Bernhard Steffen; Bertrand Souville

Interoperability remains a fundamental challenge when connecting heterogeneous systems which encounter and spontaneously communicate with one another in pervasive computing environments. This challenge is exasperated by the highly heterogeneous technologies employed by each of the interacting parties, i.e., in terms of hardware, operating system, middleware protocols, and application protocols. This paper introduces CONNECT, a software framework which aims to resolve this interoperability challenge in a fundamentally different way. CONNECT dynamically discovers information about the running systems, uses learning to build a richer view of a systems behaviour and then uses synthesis techniques to generate a connector to achieve interoperability between heterogeneous systems. Here, we introduce the key elements of CONNECT and describe its application to a distributed marketplace application involving heterogeneous technologies.


Lecture Notes in Computer Science | 2014

Mechanisms for Leveraging Models at Runtime in Self-adaptive Software

Amel Bennaceur; Giordano Tamburrelli; Thomas Vogel; Pieter J. Mosterman; Walter Cazzola; Fábio M. Costa; Alfonso Pierantonio; Matthias Tichy; Mehmet Aksit; Pär Emmanuelson; Huang Gang; Nikolaos Georgantas; David Redlich

Modern software systems are often required to adapt their behavior at runtime in order to maintain or enhance their utility in dynamic environments. Models at runtime research aims to provide suitable abstractions, techniques, and tools to manage the complexity of adapting software systems at runtime. In this chapter, we discuss challenges associated with developing mechanisms that leverage models at runtime to support runtime software adaptation. Specifically, we discuss challenges associated with developing effective mechanisms for supervising running systems, reasoning about and planning adaptations, maintaining consistency among multiple runtime models, and maintaining fidelity of runtime models with respect to the running system and its environment. We discuss related problems and state-of-the-art mechanisms, and identify open research challenges.


international conference on software engineering | 2013

Automated Mediator Synthesis: Combining Behavioural and Ontological Reasoning

Amel Bennaceur; Chris Chilton; Malte Isberner; Bengt Jonsson

Software systems are increasingly composed of independently developed heterogeneous components. To ensure interoperability, mediators are needed that coordinate actions and translate exchanged messages between the components. We present a technique for automated synthesis of mediators, by means of a quotient operator, that is based on behavioural models of the components and an ontological model of the data domain. By not requiring a specification of the composed system, the method supports both off-line and run-time synthesis. The obtained mediator is the most general component that ensures freedom of both communication mismatches and deadlock in the composition. Validation of the approach is given by implementation of a prototype tool, while applicability is illustrated on heterogeneous holiday booking components.


software engineering for adaptive and self managing systems | 2016

Feed me, feed me: an exemplar for engineering adaptive software

Amel Bennaceur; Ciaran McCormick; Jesús García-Galán; Charith Perera; Andrew Smith; Andrea Zisman; Bashar Nuseibeh

The Internet of Things (IoT) promises to deliver improved quality of life for citizens, through pervasive connectivity and quantified monitoring of devices, people, and their environment. As such, the IoT presents a major new opportunity for research in adaptive software engineering. However, there are currently no shared exemplars that can support software engineering researchers to explore and potentially address the challenges of engineering adaptive software for the IoT, and to comparatively evaluate proposed solutions. In this paper, we present Feed me, Feed me, an exemplar that represents an IoT-based ecosystem to support food security at different levels of granularity: individuals, families, cities, and nations. We describe this exemplar using animated videos which highlight the requirements that have been informally observed to play a critical role in the success or failure of IoT-based software systems. These requirements are: security and privacy, interoperability, adaptation, and personalisation. To elicit a wide spectrum of user reactions, we created these animated videos based on the ContraVision empirical methodology, which specifically supports the elicitation of end-user requirements for controversial or futuristic technologies. Our deployment of ContraVision presented our pilot study subjects with an equal number of utopian and dystopian scenarios, derived from the food security domain, and described them at the different level of granularity. Our synthesis of the preliminary empirical findings suggests a number of key requirements and software engineering research challenges in this area. We offer these to the research community, together with a rich exemplar and associated scenarios available in both their textual form in the paper, and as a series of animated videos (http://sead1.open.ac.uk/fmfm/)


formal methods | 2011

The CONNECT Architecture

Paul Grace; Nikolaos Georgantas; Amel Bennaceur; Gordon S. Blair; Franck Chauvel; Valérie Issarny; Massimo Paolucci; Rachid Saadi; Bertrand Souville; Daniel Sykes

Current solutions to interoperability remain limited with respect to highly dynamic and heterogeneous environments, where systems encounter one another spontaneously. In this chapter, we introduce the Connect architecture, which puts forward a fundamentally different method to tackle the interoperability problem. The philosophy is to observe networked systems in action, learn their behaviour and then dynamically generate mediator software which will connect two heterogeneous systems. We present a high-level overview of how Connect operates in practice and subsequently provide a simple example to illustrate the architecture in action.


Journal of Internet Services and Applications | 2015

A unifying perspective on protocol mediation: interoperability in the future internet

Amel Bennaceur; Emil Andriescu; Roberto Speicys Cardoso; Valérie Issarny

Given the highly dynamic and extremely heterogeneous software systems composing the Future Internet, automatically achieving interoperability between software components —without modifying them— is more than simply desirable, it is quickly becoming a necessity. Although much work has been carried out on interoperability, existing solutions have not fully succeeded in keeping pace with the increasing complexity and heterogeneity of modern software, and meeting the demands of runtime support. On the one hand, solutions at the application layer synthesise intermediary entities, mediators, to compensate for the differences between the interfaces of components and coordinate their behaviours, while assuming the use of the same middleware solution. On the other hand, solutions at the middleware layer deal with interoperability across heterogeneous middleware technologies but do not reconcile the differences between components interfaces and behaviours at the application layer. In this paper we propose a unified approach for achieving interoperability between heterogeneous software components with compatible functionalities across the application and middleware layers. First, we provide a solution to automatically generate cross-layer parsers and composers that abstract network messages into a uniform representation independent of the middleware used. Second, these generated parsers and composers are integrated within a mediation framework to support the deployment of the mediators synthesised at the application layer. More specifically, the generated parser analyses the network messages received from one component and transforms them into a representation that can be understood by the application-level mediator. Then, the application-level mediator performs the necessary data conversion and behavioural coordination. Finally, the composer transforms the representation produced by the application-level mediator into network messages that can be sent to the other component. The resulting unified mediation framework reconciles the differences between software components from the application down to the middleware layers. We validate our approach through a case study in the area of conference management.


software engineering for adaptive and self managing systems | 2014

Requirements-driven mediation for collaborative security

Amel Bennaceur; Arosha K. Bandara; Michael Jackson; Wei Liu; Lionel Montrieux; Thein Than Tun; Yijun Yu; Bashar Nuseibeh

Security is concerned with the protection of assets from intentional harm. Secure systems provide capabilities that enable such protection to satisfy some security requirements. In a world increasingly populated with mobile and ubiquitous computing technology, the scope and boundary of security systems can be uncertain and can change. A single functional component, or even multiple components individually, are often insufficient to satisfy complex security requirements on their own. Adaptive security aims to enable systems to vary their protection in the face of changes in their operational environment. Collaborative security, which we propose in this paper, aims to exploit the selection and deployment of multiple, potentially heterogeneous, software-intensive components to collaborate in order to meet security requirements in the face of changes in the environment, changes in assets under protection and their values, and the discovery of new threats and vulnerabilities. However, the components that need to collaborate may not have been designed and implemented to interact with one another collaboratively. To address this, we propose a novel framework for collaborative security that combines adaptive security, collaborative adaptation and an explicit representation of the capabilities of the software components that may be needed in order to achieve collaborative security. We elaborate on each of these framework elements, focusing in particular on the challenges and opportunities afforded by (1) the ability to capture, represent, and reason about the capabilities of different software components and their operational context, and (2) the ability of components to be selected and mediated at runtime in order to satisfy the security requirements. We illustrate our vision through a collaborative robotic implementation, and suggest some areas for future work.

Collaboration


Dive into the Amel Bennaceur's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Daniel Sykes

Imperial College London

View shared research outputs
Top Co-Authors

Avatar

Rachid Saadi

Institut national des sciences Appliquées de Lyon

View shared research outputs
Top Co-Authors

Avatar

Valérie Issarny

Indraprastha Institute of Information Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Massimo Tivoli

Florida State University

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge