Deprecated: Assigning the return value of new by reference is deprecated in /u/deptinfo/dalle/www/wiki2/cookbook/sourceblock.php on line 153

Warning: Cannot modify header information - headers already sent by (output started at /u/deptinfo/dalle/www/wiki2/cookbook/sourceblock.php:153) in /u/deptinfo/dalle/www/wiki2/pmwiki.php on line 885
Olivier Dalle's Corner | Main / Current Research

From Olivier Dalle's Corner

Main: Current Research

My current research activities focus on telecomunication networks simulation and in particular on component based modeling techniques. In this scope I used to be involved and still participate to the following projects:

Funded Projects

The INFRA-SONGS ANR Project (2012–2015)

The SONGS Project is a follow-up to the USS-SIMGRID ANR Project (see also here). The goal of the SONGS project is to extend the applicability of the SimGrid simulation framework from Grids and Peer-to-Peer systems to Clouds and High Performance Computation systems. Each type of large-scale computing system will be addressed through a set of use cases and lead by researchers recognized as experts in this area. Any sound study of such systems through simulations relies on the following pillars of simulation methodology: Efficient simulation kernel; Sound and validated models; Simulation analysis tools; Campaign simulation management. La page du WP8

The EA DISSIMINET (Associated Team) (2011–2013)

Since January 2011, the MASCOTTE project-team is an associate team with ARS Laboratory at Carleton University, Ottawa, ON (Canada). This Franco-Canadian team will advance research on the definition of new algorithms and techniques for component-based simulation using a web-services based approach. On one hand, the use of web-services is expected to solve the critical issues that pave the way toward the simulation of systems of unprecedented complexity, especially (but not exclusively) in the studies involving large networks such as Peer-to-peer networks. Web-Service oriented approaches have numerous advantages, such as allowing the reuse of existing simulators, allowing non-computer experts to merge their respective knowledge, or seamless integration of complementary services (eg. on-line storage and repositories, weather forecast, traffic, etc.). One important expected outcome of this approach is to significantly the simulation methodology in network studies, especially by enforcing the seamless reproducibility and traceability of simulation results. On the other hand, a net-centric approach of simulation based on web-services comes at the cost of added complexity and incurs new practices, both at the technical and methodological levels. The results of this common research will be integrated into both teams’ discrete-event distributed simulators: the CD++ simulator at Carleton University and the simulation middle-ware developed in the MASCOTTE EPI, called OSA, whose developments are supported by an INRIA ADT (Development Action) named OSA starting in December 2011.

The OSA project (Supported by INRIA since 2005, currently by an ADT funding, 2011-2012)

OSA stands for Open Simulation Architecture. This is a development project for a new discrete event simulation platform. The original elements of this new platform are:

  1. the integration in the same tool of a large number of the Modeling & Simuilation concerns (modeling, developments, instrumenting, …)
  2. the extensive of Component-Based Sofware Engineering (CBSE) techniques, and more particularly the Fractal component model (for example, in order to ease the reuse and replacement of parts of the platform AND models —cf this paper — )
  3. the use of Aspect Oriented Programming (AOP) techniques in order to separate concerns
  4. an open (Open Source) and modular architecture, easy to use (automatic dependencies management based on a Maven repository), inspired AND based on Eclipse
  5. a collaborative development model (forge, wiki …)

OSA v0.6 is available on the INRIA forge with a demo of Peer-to-peer storage simulation.

1 Software Engineer position available to work on this project starting Sept 2010 (1 yr, renewable). Details about how to apply soon published here.

1 Postdoc position available on this project, starting 2011.

Apply online on this page…

Other projects

Binding Layers (Since Dec 2011)

Binding Layers is a new Component Architecture Model.

A software Component Architecture Model (CAM) describes a set of operating rules and mechanisms for building complex applications using a structured assembly of software components. Compared to a component model, eg. J2EE, Spring, SCA or Fractal, a CAM does NOT specify the component model itself, but builds instead on top of existing Component Models (CMs). As a result, an important property seeked in BL-CAM is genericity: BL-CAM is meant to be compliant with many Component Models.

Various approaches have been proposed so far to specify the structure of complex applications based on components, but the most popular are certainly the following:

Boths approaches have their pros and cons: Flat structures avoid the complexity of hierarchy and therefore usually offer better performance, but at the cost of a lesser reusability and control; on contrary, hierarchical structures offer great means for reusing parts of an application, and the hierarchy provides a de facto means for building complex control and fine-tuned non-fonctionnal services. However, despite their popularity, both approaches fail to provide good means for the Separation of Concerns at the architectural level.

Binding Layers is an attempt to solve this issue by following a third, different approach. Like flat structures, BL does not suffer from a many-level hierarchy performance cost, and yet, like hierarchical structures, it allows for sophisticated grouping strategies. For this purpose, BL relies extensively on two original features: component sharing and layering by extension.

Component sharing means that a single component instance can be found in many component assemblies. Therefore, assuming that component assemblies are formed according to some common concern, component sharing allows a component to be directly part of a concern, rather than to reach for it, eg. using a complex path through the component hierarchy. A usual idiom found in other component models is to shorten this path by placing non-fonctionnal concerns in, or beside each component (eg. in the membrane of Fractal components). However, this approach creates an artificial dichotomy among components, each of which endding-up belonging to either of the two dimensions: functional or non-fonctional. On contrary, thanks to component sharing, Binding Layers support seamlessly and uniformly an arbitrary number of dimensions (including functional and non-fonctional).

Component groups formed in each dimensions are called layers. Each layer has a flat structure. However, reuse is made easy: First because the number of layers is not limited, and therefore each layer, typically in charge of a concern, can be reused independently to build new applications (eg. a persistence layer can be reused for many applications). In addition, Binding Layer offers an extension mechanism, somewhat similar to the heritage mechanism found in OO languages, that allows for incremental specializations of a given layer.

Status: work-in-progress.

See this presentation (PDF, 836 KiB) for more details.

Olivier’s SandBox

You will find on this page links to some ongoing projects, drafts, experiments.

Latest and soon coming Visitors

Recent talks (or soon coming)

Retrieved from
Page last modified on January 11, 2014, at 10:42 PM CET