Since September 2007, I'm research director at INRIA Lille leading the RMoD Team. During 10 years, I co-directed with Oscar Nierstrasz the Software Composition Group. I was the leader of the RECAST Project. I'm the president of ESUG. I'm developing Moose an open-source reengineering platform. I'm co-responsible of Pharo a new and cool open-source Smalltalk.

News

Some presentations

Some Program and Organizing Committees

  • ECOOP'2010, ESUG'2010, ICSM'2010, TOOLS'2010, WCRE'2009 (org), ESUG'2009, Models'2009, Tools'2009, SC'2009, CSMR'2008, LMO'2008, ICSM'2007, ECOOP'2005, ECOOP'2007, MODELS'2007, MODELS'2006, CSMR'2006, CSMR'2007, IDM'2005, IDM'2006, ICPC'2006, ICPC'2007, ESUG'2008, ESUG'2007

Research

My research statement is double: (1) How can we help companies to support the evolution and maintenance of their large applications and (2) how can we improve languages to better support evolution?

Object-Oriented Reengineering

How can we support the maintenance and evolution of large industrial applications? This work includes non-exhaustively the following topics: duplicated code detection, version analysis, meta-modeling, remodularisation, program understanding, program visualization, reengineering platform and tools. We worked with Nokia, Daimler-Chrysler and Sema Group. Links: The Moose Reengineering Environment, Recast: Evolution of Object-Oriented Applications, FAMOOS, Cook.

Valorisation: We are validating our research on large industrial case studies written in C++, Java, Smalltalk (and Cobol). If you are a company that want to benefit from our tools or know-how contact us.

Consulting: I have been consulting for Harman-Becker AG, Bedag AG and some small companies

Language Design

How can we improve languages to support evolution? We are working on the fundamental aspects of object-oriented languages (encapsulation, modules, namespaces, components, class composition...)
  • Components for Embedded Systems. We developed with ABB a component model for field devices (80 kram) in the Pecos IST project.
  • With Traits we compose classes from groups of reusable groups of methods. Link: Traits. Valorisation: The language Scala developed at the EPFL incudes traits and it has been announced that PERL 6 will include traits. We are currently working on the integration of Traits in C#. Squeak 3.9 has now traits. Fortress the new languague for scientific computing developed at Sun Microsystems uses exclusively traits (see Dr Dobbs G. Steele interview -- DDJ April 2005, page 20). The DrDobbs Journal Excellence in Programming award this year was given to Guy Steele which is one of the designer of Fortress.
  • Classboxes are modules that supports the extension of classes. Link: Classboxes.

Keywords

Software Engineering, Object-Oriented Programming, Language Design, Reengineering, Reverse Engineering, Program Understanding, Reflective Programming, Meta-Programming, MOP, Aspect-Oriented Programming, Modules, Frameworks, Design Patterns, Teaching OO, Traits, Classboxes Scheme, Smalltalk, Java, C#, Recast Project, FAMOOS Project, PECOS Project.

Coordinates

Pay attention my snail mail address is not where my office is. If you want to visit me check that page.

Snail Mail Address:
40, avenue Halley,
Parc Scientifique de la Haute Borne,
Bât.A, Park Plaza
France
Tel:33 (0)3 20 43 42 56
Fax:33 (0)3 59 57 78 50