Diverse Team overview

Software Language Engineering (SLE)

Separation of concerns in the development of complex software-intensive systems leads to the use of various domain-specific modeling languages (DSMLs). SLE addresses the whole life cycle for designing, implementing and relating DSMLs to support heterogeneous modeling and analysis.


The systematic modeling of variability in software systems has emerged as an effective approach to document and reason about software evolutions and heterogeneity. Variability modeling characterizes an “envelope” of possible software variations.


Dynamic Adaptive Systems (DAS)

Flexible yet dependable systems have to cope with heterogeneous hardware execution platforms ranging from smart sensors to huge computation infrastructures and data centers. We need to devise formalisms to reason about the impact of an evolution and about the transition from one configuration to another.


Software diversity as the foundation for a novel software design principle and increased adaptive capacities in complex adaptive systems. Higher levels of diversity in the system provide a pool of software solutions that can eventually be used to adapt to unforeseen situations at design time.















Diverse (formely Triskell) is a research team of IRISA (mixed research unit grouping CNRS, Université Rennes 1, INRIA INSA Rennes in Rennes / Britanny / France), defining itself as a world leader(*) of Model Driven Engineering (MDE) research.

The research domain of the Triskell project-team is the model driven development and validation of software product lines, ranging from the Internet of Things to the Internet of Services. Triskell is particularly interested in component based, dynamically adaptable systems with quality of service constraints, including reliability, performance, timeliness, etc. The long-term goal of the Triskell project-team is to investigate new ways of building and validating these systems by unifying Model Driven Engineering, Aspect Oriented Software Development, Product-Line Engineering, Component Based Software Development, and Generative Programming.

Model-Driven Engineering for Component-Based Software

  • Formal manipulation of UML models with patterns, frameworks and components
  • Design with contract-aware components and Aspect Oriented Modeling
  • Models@runtime to control Dynamically Adaptable Systems
  • Intra-component and inter-component V&V (testing)

Introduction to Model Driven Engineering

DiverSE: Context and Objectives

(*) refering e.g. to the number of publications in recent years in the reference conference of the domain MODELS.