SlideShare a Scribd company logo
1




Software Engineering of Component-
    Based S stems of S stems A
          Systems-of-Systems:
       Reference Framework

                    Frédéric Loiret (*)
                                    ()
    Romain Rouvoy - Lionel Seinturier - Philippe Merle (**)


                        * KTH, Sweden
             ** University of Lille & INRIA, France

                CBSE 2011 – Boulder, Colorado
                      June 21-23, 2011


                                                              1
2

     Plan
1. Context & Motivations
2.
2 Reference Framework
3. Framework Implementations
4.
4 Evaluation
5. Conclusion




                               2
3

    1. Context & Motivations
•   Systems-of-Systems characterized by a wide diversity in terms of
     • Domain-specific requirements & analysis
                p        q                y
         • Embedded, real-time, reconfigurable IT systems
     • Technologies
         • Domain specific middleware, communication protocols
           Domain-specific middleware
     • Deployment environments (multi-scale)
         • WSN, SOA IT

•   New forms of complexity
     • High level design models centered on domain specific abstractions close to
       High-level                            domain-specific
       the problem domain
     • Applications should be adapted in the best way with a minimum effort
     • Adaptations may impact several steps of the design lifecycle
         • Implementation, analysis, compilation, execution


                                                                                    3
4

    2. Reference Framework
                                                         Domain-Specific
•   Structured in three basic parts                       Annotations

     •   Domain-agnostic invariants used
         throughout the design lifecycle                   Versatile
                                                        Component Model



                                                 Extensible                          Domain-Specific
                                                                           Modular
                              Domain-Specific   Middleware                           Interpreters
                                                                           Toolset
                                 Middleware        Platform                          (Plugins)


•   Separation of Concerns between domain-agnostic & domain-specific features
•   Two roles
     •   End-user developer
     •   Domain-expert developer
•   Versatile Component Model used homogeneously
     •   End-user application specifications
     •   For implementing middleware platforms & toolset extension points


                                                                                                       4
5

Versatile Component Model

                        •   6 generic & core architectural concepts
                        •   specialized via annotations
                             •   Simple string-based attributes as
                                 well as arbitrary complex views of
                                 the system
                             •   Used at design time, analysis
                                 time, compile time, runtime
                        •   Simple mechanisms but allowing to
                            capture a wide range of software
                            diversity
                        •   We do not impose a specific concrete
                            syntax (considered as a variation
                            point)




                                                                 5
6

    Extensible Middleware Platform
•    Container
•    Connector
•    Third-party components




                                     6
7

Modular Toolset

•   Component based
    Component-based implementation

•   Core components implementing the domain-agnostic logic of CBSoS
     • Architecture visitors, consistency checks, optimizations, synthesis
       of implementation artifacts, implementation of the toolset’s workflow

•   Plugin components implementing the domain-specific logic
     • Via cleary-defined extension points
                y                   p
     • Implementing the interface of the extension point
     • Bundled on demand

•   Can be considered as a partially complete model interpreter


                                                                               7
8
                 Front-End        Model-Artefact-Factory
                                        Reference
                                        Metamodel           Metamodel Extension

                                                                                                                                         Artefacts
                                                                                                                                         handled




                                                                                                                                                                                                                  AD files
                                                                                                                                ADL
                                    ADL             Annotations     Binding   Component   Property     Interface   Content
                                 Dispatcher
                                                                                                                               parser    by the
                                                    An ADL Loader




                                                                                                                                                                                                                    L
     1                                                                                                                                   toolset
                                                      Another ADL Loader
                 Description                           Another ADL Loader
                                                                                                                              ADL
                                 ADL L d
                                     Loader                                                                                   Files
                                                                                                                              Fil
                   Parser
     ar oolset




                                                                                                                                                                                                                  ID PD im files
                                          IDL Loader                      IDL                    Property Loader                PDL




                                                                                                                                                                                                                    L, P L, pl.
                                                                          Files                                                 Files
 odula T




                                              Description Ch k
                                              D    i ti   Checker                                Content L d
                                                                                                 C t t Loader                    Impl
                                                                                                                                 Files




                                                                                                                                                             odel instance

                                                                                                                                                                              om n-specific annotation instances
M




                 Container-Generator
                                                            Personality Factory
     2                                                                                                      Connector Factory




                                                                                                                                                                                                   ons
                                                                                                                                                     ponent mo
                  Container Generator                     Third-party Integration
                      Dispatcher
                                                                                                           Content Generation




                                                                                                                                           eferen com
                                                                  Container check




                                                                                                                                                nce

                                                                                                                                                                             D ain-

                                                                                                                                                                                                                        entation artefacts
     3                Architecture Transformation                                              Architecture Analysis




                                                                                                                                          R
     4
                 Back-End
     5             Backend                                               Bootstrap
                                                                                 p                   Property




                                                                                                                                                                                                                  Im m
                                                                                                                                                                                                                    plem
                  Dispatcher                                                                                                 Interface
                                         Assembly
                      Finalize                                            Content
                                                                                                 Component                   Binding




                                                                                                                                                                                                                          8
9

    3. Framework Implementations
•   Distributed and Real-Time Environments
      Hulotte
                                                         Hulotte
•   Large Scale SOA Environments
    L     S l       E i       t
                                                         •   Extension of Fractal-ADL (also support Think-
      FraSCAti                                              ADL, UML)
                                                         •   Back-End C & Java

Aspects shared between both approaches
                                                         •   Runtime Component reification &
                                                             reconfiguration support can be finely configured
•   Based on the reference framework
•   Java implementation, EMF metamodels
                                                         FraSCAti
                                                         F SCA i
•   Extensions expressed as partial architectures (set
                                                         •   SCA assembly language
    of plugins)
                                                         •   Invariants on the Back-End

•   default XML-based ADL
                                                              •     Java-based
                                                                    J    b   d

     •   Special XML tags for serializing syntax-free
                                                              •     Fractal API
         annotations                                     •   Reconfiguration Capabilities
     •   Used homogeneously f
         U dh            l for                                •     Bindings
           •   Application-level & Middleware-level           •     Dynamic component instantiation
               architectures                                  •     Dynamic deployment of plugins
           •   Toolsets and Plugins architectures


                                                                                                        9
10

3. Framework Implementations




                               10
11

3. Framework Implementations




                               11
12

4. Evaluation
 Complexity comparison between core features and their extensions
 Metrics from [Edwards, Medvidovic 2008]




                                                    Hulotte




                           FraSCAti




                                                                    12
13

5. Conclusion
A reference framework defining domain-agnostic invariants used throughout
   the design lifecycle
           g       y

A strong SoC between domain-agnostic and domain-specific concepts and
   interpreters
   i t     t
    • Promotes reuse, avoids redundant implementation efforts
    • Developers focused on the problem domain

One Size Fits All solution is not realistic, but Hulotte & FraSCAti already
  cover a set of various domain-specific aspects
   • ADL abstractions are intuitively “specialization-aware”
   • Components can be used for tiny devices as well as for large scale
                                                                  large-scale
      environments



                                                                                13

More Related Content

Viewers also liked (11)

PDF
Reconfigurable Service-Oriented Architectures
lseinturier
 
PDF
Spirals
Lionel Seinturier
 
PDF
Utopophobia
Peter C. Newton-Evans
 
PPT
Big bluebutton presentation
Brian Carpenter
 
PPT
Culture of Adversarialism
Peter C. Newton-Evans
 
PPT
Big bluebutton presentation
Brian Carpenter
 
PDF
Non adversarial elections
Peter C. Newton-Evans
 
PPT
Releasing Culture of Mutuality from Obscurity
Peter C. Newton-Evans
 
PDF
Theories that Support Adversarialism
Peter C. Newton-Evans
 
PDF
Cooperation theory
Peter C. Newton-Evans
 
Reconfigurable Service-Oriented Architectures
lseinturier
 
Big bluebutton presentation
Brian Carpenter
 
Culture of Adversarialism
Peter C. Newton-Evans
 
Big bluebutton presentation
Brian Carpenter
 
Non adversarial elections
Peter C. Newton-Evans
 
Releasing Culture of Mutuality from Obscurity
Peter C. Newton-Evans
 
Theories that Support Adversarialism
Peter C. Newton-Evans
 
Cooperation theory
Peter C. Newton-Evans
 

Similar to Software Engineering of Component-Based Systems-of-Systems: A Reference Framework (20)

PDF
A Generative Programming Approach to Developing Pervasive Computing Systems
Damien Cassou
 
PDF
DashMash: a Mashup Environment for End User Development
Matteo Picozzi
 
PDF
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Till Riedel
 
PPT
A classification framework for component models
Ivica Crnkovic
 
PDF
Software Architecture by Reuse, Composition and Customization
Ivano Malavolta
 
PDF
Second Serenoa Newsletter
Serenoa Project
 
PDF
P1153 kumar a
vyshnavi Venkatesan
 
PPT
On the Composition and Reuse of Viewpoints
Henry Muccini
 
PPT
Sa 008 patterns
Frank Gielen
 
PDF
Framework Engineering
YoungSu Son
 
KEY
JISC CNI Meeting, Edinburgh 2010
Paul Walk
 
PDF
Software Architecture: views and viewpoints
Henry Muccini
 
PPT
Model-based engineering of multi-platform, synchronous & collaborative UIs
Jean Vanderdonckt
 
PPTX
An Automatic Approach to Translate Use Cases to Sequence Diagrams
Mohammed Misbhauddin
 
PDF
Designpatterns
reynolds
 
PDF
The challenges and opportunities in open source reuse
Ivica Crnkovic
 
PDF
Web2MexADL - CSMR Presentation
jccastrejon
 
PDF
Iswim for testing
ClarkTony
 
PDF
Uml3
Majong DevJfu
 
PDF
A Framework for Classifying and Comparing Architecture-Centric Software Evolu...
Pooyan Jamshidi
 
A Generative Programming Approach to Developing Pervasive Computing Systems
Damien Cassou
 
DashMash: a Mashup Environment for End User Development
Matteo Picozzi
 
Thesis presentation: Middleware for Ubicomp - A Model Driven Development Appr...
Till Riedel
 
A classification framework for component models
Ivica Crnkovic
 
Software Architecture by Reuse, Composition and Customization
Ivano Malavolta
 
Second Serenoa Newsletter
Serenoa Project
 
P1153 kumar a
vyshnavi Venkatesan
 
On the Composition and Reuse of Viewpoints
Henry Muccini
 
Sa 008 patterns
Frank Gielen
 
Framework Engineering
YoungSu Son
 
JISC CNI Meeting, Edinburgh 2010
Paul Walk
 
Software Architecture: views and viewpoints
Henry Muccini
 
Model-based engineering of multi-platform, synchronous & collaborative UIs
Jean Vanderdonckt
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
Mohammed Misbhauddin
 
Designpatterns
reynolds
 
The challenges and opportunities in open source reuse
Ivica Crnkovic
 
Web2MexADL - CSMR Presentation
jccastrejon
 
Iswim for testing
ClarkTony
 
A Framework for Classifying and Comparing Architecture-Centric Software Evolu...
Pooyan Jamshidi
 
Ad

Recently uploaded (20)

PDF
July Patch Tuesday
Ivanti
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
July Patch Tuesday
Ivanti
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Ad

Software Engineering of Component-Based Systems-of-Systems: A Reference Framework

  • 1. 1 Software Engineering of Component- Based S stems of S stems A Systems-of-Systems: Reference Framework Frédéric Loiret (*) () Romain Rouvoy - Lionel Seinturier - Philippe Merle (**) * KTH, Sweden ** University of Lille & INRIA, France CBSE 2011 – Boulder, Colorado June 21-23, 2011 1
  • 2. 2 Plan 1. Context & Motivations 2. 2 Reference Framework 3. Framework Implementations 4. 4 Evaluation 5. Conclusion 2
  • 3. 3 1. Context & Motivations • Systems-of-Systems characterized by a wide diversity in terms of • Domain-specific requirements & analysis p q y • Embedded, real-time, reconfigurable IT systems • Technologies • Domain specific middleware, communication protocols Domain-specific middleware • Deployment environments (multi-scale) • WSN, SOA IT • New forms of complexity • High level design models centered on domain specific abstractions close to High-level domain-specific the problem domain • Applications should be adapted in the best way with a minimum effort • Adaptations may impact several steps of the design lifecycle • Implementation, analysis, compilation, execution 3
  • 4. 4 2. Reference Framework Domain-Specific • Structured in three basic parts Annotations • Domain-agnostic invariants used throughout the design lifecycle Versatile Component Model Extensible Domain-Specific Modular Domain-Specific Middleware Interpreters Toolset Middleware Platform (Plugins) • Separation of Concerns between domain-agnostic & domain-specific features • Two roles • End-user developer • Domain-expert developer • Versatile Component Model used homogeneously • End-user application specifications • For implementing middleware platforms & toolset extension points 4
  • 5. 5 Versatile Component Model • 6 generic & core architectural concepts • specialized via annotations • Simple string-based attributes as well as arbitrary complex views of the system • Used at design time, analysis time, compile time, runtime • Simple mechanisms but allowing to capture a wide range of software diversity • We do not impose a specific concrete syntax (considered as a variation point) 5
  • 6. 6 Extensible Middleware Platform • Container • Connector • Third-party components 6
  • 7. 7 Modular Toolset • Component based Component-based implementation • Core components implementing the domain-agnostic logic of CBSoS • Architecture visitors, consistency checks, optimizations, synthesis of implementation artifacts, implementation of the toolset’s workflow • Plugin components implementing the domain-specific logic • Via cleary-defined extension points y p • Implementing the interface of the extension point • Bundled on demand • Can be considered as a partially complete model interpreter 7
  • 8. 8 Front-End Model-Artefact-Factory Reference Metamodel Metamodel Extension Artefacts handled AD files ADL ADL Annotations Binding Component Property Interface Content Dispatcher parser by the An ADL Loader L 1 toolset Another ADL Loader Description Another ADL Loader ADL ADL L d Loader Files Fil Parser ar oolset ID PD im files IDL Loader IDL Property Loader PDL L, P L, pl. Files Files odula T Description Ch k D i ti Checker Content L d C t t Loader Impl Files odel instance om n-specific annotation instances M Container-Generator Personality Factory 2 Connector Factory ons ponent mo Container Generator Third-party Integration Dispatcher Content Generation eferen com Container check nce D ain- entation artefacts 3 Architecture Transformation Architecture Analysis R 4 Back-End 5 Backend Bootstrap p Property Im m plem Dispatcher Interface Assembly Finalize Content Component Binding 8
  • 9. 9 3. Framework Implementations • Distributed and Real-Time Environments  Hulotte Hulotte • Large Scale SOA Environments L S l E i t • Extension of Fractal-ADL (also support Think-  FraSCAti ADL, UML) • Back-End C & Java Aspects shared between both approaches • Runtime Component reification & reconfiguration support can be finely configured • Based on the reference framework • Java implementation, EMF metamodels FraSCAti F SCA i • Extensions expressed as partial architectures (set • SCA assembly language of plugins) • Invariants on the Back-End • default XML-based ADL • Java-based J b d • Special XML tags for serializing syntax-free • Fractal API annotations • Reconfiguration Capabilities • Used homogeneously f U dh l for • Bindings • Application-level & Middleware-level • Dynamic component instantiation architectures • Dynamic deployment of plugins • Toolsets and Plugins architectures 9
  • 12. 12 4. Evaluation Complexity comparison between core features and their extensions Metrics from [Edwards, Medvidovic 2008] Hulotte FraSCAti 12
  • 13. 13 5. Conclusion A reference framework defining domain-agnostic invariants used throughout the design lifecycle g y A strong SoC between domain-agnostic and domain-specific concepts and interpreters i t t • Promotes reuse, avoids redundant implementation efforts • Developers focused on the problem domain One Size Fits All solution is not realistic, but Hulotte & FraSCAti already cover a set of various domain-specific aspects • ADL abstractions are intuitively “specialization-aware” • Components can be used for tiny devices as well as for large scale large-scale environments 13