SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Towards a Modularity Maturity Model

Graham Charters

IBM

21st September 2011




                                                                             OSGi Alliance Marketing © 2008-2010 . 1
                                                                                                             Page
COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved, © IBM Corp. 2011
                                                                             All Rights Reserved
Page 2   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
         © IBM Corp. 2011
Source: Wikipedia
A Maturity Model
• A set of structured levels describing how well an
  organization can reliably and sustainably produce
  required outcomes
• May provide
   •    a place to start
   •    benefit of prior experiences
   •    common language and shared vision
   •    framework for prioritizing actions
   •    define what improvement means
• Can be used as a benchmark for
  comparison and an aid to understanding


       Page 3    OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
                 © IBM Corp. 2011
Modularity Maturity Model

 • A Maturity Model for Modularity 
 • Focus on organisational capability
 • Modularity technology agnostic
 • Drawn from observations from a number of
   projects and customers
 • An 80:20 guide, not a 100% law




     Page 4   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
              © IBM Corp. 2011
Level 1: Ad Hoc

       Characteristics                                                          Benefits
•   No formal modularity focus                                       • Cheap to get started
•   Bunch of classes with no structure
•   Flat class path
•   Library Jars
•   Monolithic application
•   Archives of archives


                                                    .../A_v1.jar

                                                     .../Bv2.jar

                                                        .../C.jar

      Page 5       OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,            26.09.2011
                   © IBM Corp. 2011
Level 2: Modules
     Characteristics                                                                    Benefits
• Formal module identities                                            • Decouple module from artefact
    • In artifact or catalogue                                        • Clearer view of module assembly
• Identities can be versioned                                         • Enables version awareness
• Dependencies based on identities                                        • Build
    • Build                                                               • Development
    • Development                                                         • Operations
    • Operations                                                      • Enables module catalogues
• Examples: Maven, Ivy, RPM, OSGi,
  etc…


                                   B v2                                 Identity        Artifact
             A v1                                                   A            v1     .../B_v1.jar
                                                                    B            v2     …/Bv2.jar
                                  C v1.1
                                                                    C            v1.1   …/C.jar

    Page 6          OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,                     26.09.2011
                    © IBM Corp. 2011
Segue                              Module Identity != Modularity


Modularity
“(Desirable) property of a system,
such that individual components can
be examined, modified and
maintained independently of the
                                                                                                 PCIe x16
remainder of the system. Objective
is that changes in one part of a
system should not lead to
                                                                              VGA
unexpected behavior in other parts.”                                                DVI
www.maths.bath.ac.uk/~jap/MATH0
015/glossary.html



     Page 7      OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,         26.09.2011
                 © IBM Corp. 2011
Level 3: Modularity
      Characteristics                                                            Benefits
• Declared module contracts                                        • Fine-grained impact awareness
  (capabilities and requirements)                                      • Bug fix
• Private parts are implementation                                     • Implementor breaking change
  detail                                                               • Client breaking change
• Dependency resolution first,                                     • System structure awareness
  module identity second                                           • Client/Provider independence
                                                                   • Requirement-based dependency
                                                                     checking


                                                                          B v2
                         A v1
                                                                        C v1.1

     Page 8      OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,           26.09.2011
                 © IBM Corp. 2011
Level 4: Loose-Coupling
      Characteristics                                                            Benefits
• Separation of interface from                                     • Implementation client/provider
  implementation with                                                independence
  implementation used indirectly
• No factories
• No ‘new’
• Services-based module
  collaboration
• Dependencies semantically
  versioned

                                                                          B v2
                         A v1
                                                                        C v1.1

                                                                         D v1

     Page 9      OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,            26.09.2011
                 © IBM Corp. 2011
Level 5: Devolution
     Characteristics                                                          Benefits
• Artifact ownerships devolved to                                  • Greater awareness of existing
  modularity-aware repositories                                      modules
• Repositories may support                                         • Reduced duplication, increases
   • Collaboration (commenting,                                      quality
       ratings, forums)                                            • Collaboration/empowerment
   • Governance (approvals, life-                                    around modules
       cycle)                                                      • Quality/operational control



                                                               B v2
              A v1                                           C v1.1

                                                               D v1


    Page 10      OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,             26.09.2011
                 © IBM Corp. 2011
Level 6: Dynamism
     Characteristics                                                            Benefits
• Dynamic module life-cycle                                       • No brittle ordering dependencies
• Modules fully life-cycle aware                                  • Ability to dynamically update a
• Operational support for module                                    running system
  addition, removal, replacement                                      • Extend capabilities
                                                                      • Apply fixes




                                                                         B v2
                        A v1
                                                                       C v1.1

                                                                        D v1

    Page 11     OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,             26.09.2011
                © IBM Corp. 2011
Simple Summary
Level        Name                        Summary

1            Ad Hoc                      Nothing
2            Modules                     Formal identity, decoupled from artifact
3            Modularity                  Formal module contracts, decoupled from identity
4            Loose-Coupling Services, semantic versioning, decoupled from
                            implementation
5            Devolution                  Modularity-aware repositories, collaboration,
                                         governance, decoupled from ownership
6            Dynamism                    Life-cycle awareness and independence, decoupled
                                         from time




        Page 12        OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
                       © IBM Corp. 2011
Time to apply...

• How do your projects and
  organization fair?
• How do some well-known
  projects fair?
• How are we doing as an
  industry?

• In answering these questions
  we can better understand the
  tasks and benefits ahead

   Page 13   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
             © IBM Corp. 2011
Level 7: Peter Kriens
      Characteristics                                                         Benefits
• Sees the modularity in anything                                  • Can address all modularity problems
  and everything
• A higher state of modularity
  enlightenment
• 10+ years eating and breathing
  modularity




     Page 14     OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,             26.09.2011
                 © IBM Corp. 2011
Trademarks

IBM and WebSphere are trademarks or registered trademarks of
International Business Machines Corp., registered in many
jurisdictions worldwide.

Java and all Java-based trademarks and logos are trademarks or
registered trademarks of Oracle and/or its affiliates.

Other product and service names might be trademarks of IBM or other
companies. A current list of IBM trademarks is available on the Web at
“Copyright and trademark information” at
www.ibm.com/legal/copytrade.shtml.




      Page 15    OSGi Alliance Marketing © 2008-2011 . All Rights Reserved,   26.09.2011
                 © IBM Corp. 2011

Weitere ähnliche Inhalte

Was ist angesagt?

Iot Service Layer Evolution
Iot Service Layer EvolutionIot Service Layer Evolution
Iot Service Layer EvolutiononeM2M
 
cloud of things Presentation
cloud of things Presentation cloud of things Presentation
cloud of things Presentation Assem mousa
 
software failures
 software failures software failures
software failuresRespa Peter
 
Disease Prediction And Doctor Appointment system
Disease Prediction And Doctor Appointment  systemDisease Prediction And Doctor Appointment  system
Disease Prediction And Doctor Appointment systemKOYELMAJUMDAR1
 
Brain Tumour Detection.pptx
Brain Tumour Detection.pptxBrain Tumour Detection.pptx
Brain Tumour Detection.pptxRevolverRaja2
 
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)byteLAKE
 

Was ist angesagt? (7)

Iot Service Layer Evolution
Iot Service Layer EvolutionIot Service Layer Evolution
Iot Service Layer Evolution
 
Arahan Asas Linux
Arahan Asas LinuxArahan Asas Linux
Arahan Asas Linux
 
cloud of things Presentation
cloud of things Presentation cloud of things Presentation
cloud of things Presentation
 
software failures
 software failures software failures
software failures
 
Disease Prediction And Doctor Appointment system
Disease Prediction And Doctor Appointment  systemDisease Prediction And Doctor Appointment  system
Disease Prediction And Doctor Appointment system
 
Brain Tumour Detection.pptx
Brain Tumour Detection.pptxBrain Tumour Detection.pptx
Brain Tumour Detection.pptx
 
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)
AI for Manufacturing (Machine Vision, Edge AI, Federated Learning)
 

Ähnlich wie IBM Sponsorship Keynote: Towards a Modularity Maturity Model - Graham Charters

Towards a modularity maturity model - osgi users forum uk 16-nov2011
Towards a modularity maturity model - osgi users forum uk 16-nov2011Towards a modularity maturity model - osgi users forum uk 16-nov2011
Towards a modularity maturity model - osgi users forum uk 16-nov2011mfrancis
 
Towards a Modularity Maturity Model
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity ModelGraham Charters
 
Subsystems: For those occasions where bundles are just too small... - Graham ...
Subsystems: For those occasions where bundles are just too small... - Graham ...Subsystems: For those occasions where bundles are just too small... - Graham ...
Subsystems: For those occasions where bundles are just too small... - Graham ...mfrancis
 
The Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Sourcegenivialliance
 
How to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMDataLeader.io
 
Automated Exploratory Tests
Automated Exploratory TestsAutomated Exploratory Tests
Automated Exploratory TestsZbyszek Mockun
 
Java Modularity with OSGi
Java Modularity with OSGiJava Modularity with OSGi
Java Modularity with OSGiIlya Rybak
 
Enterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleEnterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleWesley Pullen
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Delta-N
 
Transforming to Microservices
Transforming to MicroservicesTransforming to Microservices
Transforming to MicroservicesKyle Brown
 
Collab net overview_june 30 slide show
Collab net overview_june 30 slide showCollab net overview_june 30 slide show
Collab net overview_june 30 slide showsfelsenthal
 
Worklight 5.0 Webinar 7 12 V2
Worklight 5.0 Webinar 7 12 V2Worklight 5.0 Webinar 7 12 V2
Worklight 5.0 Webinar 7 12 V2gaborvodics
 
Bestpractices Portal Projects
Bestpractices Portal ProjectsBestpractices Portal Projects
Bestpractices Portal Projectsallerhed
 
Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software IBM WebSphereIndia
 
Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile SoftwareCollaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile SoftwareIBM Software India
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component modelsIvica Crnkovic
 
What's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryWhat's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryDavalen LLC
 
Introduction to OSGi
Introduction to OSGiIntroduction to OSGi
Introduction to OSGiDan Selman
 
Building databound JavaScript apps with Knockoutjs
Building databound JavaScript apps with KnockoutjsBuilding databound JavaScript apps with Knockoutjs
Building databound JavaScript apps with KnockoutjsNish Anil
 

Ähnlich wie IBM Sponsorship Keynote: Towards a Modularity Maturity Model - Graham Charters (20)

Towards a modularity maturity model - osgi users forum uk 16-nov2011
Towards a modularity maturity model - osgi users forum uk 16-nov2011Towards a modularity maturity model - osgi users forum uk 16-nov2011
Towards a modularity maturity model - osgi users forum uk 16-nov2011
 
Towards a Modularity Maturity Model
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity Model
 
Subsystems: For those occasions where bundles are just too small... - Graham ...
Subsystems: For those occasions where bundles are just too small... - Graham ...Subsystems: For those occasions where bundles are just too small... - Graham ...
Subsystems: For those occasions where bundles are just too small... - Graham ...
 
The Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Source
 
How to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISM
 
Automated Exploratory Tests
Automated Exploratory TestsAutomated Exploratory Tests
Automated Exploratory Tests
 
Java Modularity with OSGi
Java Modularity with OSGiJava Modularity with OSGi
Java Modularity with OSGi
 
Enterprise Dev Ops At Scale
Enterprise Dev Ops At ScaleEnterprise Dev Ops At Scale
Enterprise Dev Ops At Scale
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Transforming to Microservices
Transforming to MicroservicesTransforming to Microservices
Transforming to Microservices
 
Collab net overview_june 30 slide show
Collab net overview_june 30 slide showCollab net overview_june 30 slide show
Collab net overview_june 30 slide show
 
Worklight 5.0 Webinar 7 12 V2
Worklight 5.0 Webinar 7 12 V2Worklight 5.0 Webinar 7 12 V2
Worklight 5.0 Webinar 7 12 V2
 
Bestpractices Portal Projects
Bestpractices Portal ProjectsBestpractices Portal Projects
Bestpractices Portal Projects
 
Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software
 
Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile SoftwareCollaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software
 
A classification framework for component models
A classification framework for component modelsA classification framework for component models
A classification framework for component models
 
What's New in IBM Web Experience Factory
What's New in IBM Web Experience FactoryWhat's New in IBM Web Experience Factory
What's New in IBM Web Experience Factory
 
Introduction to OSGi
Introduction to OSGiIntroduction to OSGi
Introduction to OSGi
 
Building databound JavaScript apps with Knockoutjs
Building databound JavaScript apps with KnockoutjsBuilding databound JavaScript apps with Knockoutjs
Building databound JavaScript apps with Knockoutjs
 

Mehr von mfrancis

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...mfrancis
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)mfrancis
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)mfrancis
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruumfrancis
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...mfrancis
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...mfrancis
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...mfrancis
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)mfrancis
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...mfrancis
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...mfrancis
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...mfrancis
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)mfrancis
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)mfrancis
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)mfrancis
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...mfrancis
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...mfrancis
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)mfrancis
 

Mehr von mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Kürzlich hochgeladen

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

IBM Sponsorship Keynote: Towards a Modularity Maturity Model - Graham Charters

  • 1. Towards a Modularity Maturity Model Graham Charters IBM 21st September 2011 OSGi Alliance Marketing © 2008-2010 . 1 Page COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved, © IBM Corp. 2011 All Rights Reserved
  • 2. Page 2 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 3. Source: Wikipedia A Maturity Model • A set of structured levels describing how well an organization can reliably and sustainably produce required outcomes • May provide • a place to start • benefit of prior experiences • common language and shared vision • framework for prioritizing actions • define what improvement means • Can be used as a benchmark for comparison and an aid to understanding Page 3 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 4. Modularity Maturity Model • A Maturity Model for Modularity  • Focus on organisational capability • Modularity technology agnostic • Drawn from observations from a number of projects and customers • An 80:20 guide, not a 100% law Page 4 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 5. Level 1: Ad Hoc Characteristics Benefits • No formal modularity focus • Cheap to get started • Bunch of classes with no structure • Flat class path • Library Jars • Monolithic application • Archives of archives .../A_v1.jar .../Bv2.jar .../C.jar Page 5 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 6. Level 2: Modules Characteristics Benefits • Formal module identities • Decouple module from artefact • In artifact or catalogue • Clearer view of module assembly • Identities can be versioned • Enables version awareness • Dependencies based on identities • Build • Build • Development • Development • Operations • Operations • Enables module catalogues • Examples: Maven, Ivy, RPM, OSGi, etc… B v2 Identity Artifact A v1 A v1 .../B_v1.jar B v2 …/Bv2.jar C v1.1 C v1.1 …/C.jar Page 6 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 7. Segue Module Identity != Modularity Modularity “(Desirable) property of a system, such that individual components can be examined, modified and maintained independently of the PCIe x16 remainder of the system. Objective is that changes in one part of a system should not lead to VGA unexpected behavior in other parts.” DVI www.maths.bath.ac.uk/~jap/MATH0 015/glossary.html Page 7 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 8. Level 3: Modularity Characteristics Benefits • Declared module contracts • Fine-grained impact awareness (capabilities and requirements) • Bug fix • Private parts are implementation • Implementor breaking change detail • Client breaking change • Dependency resolution first, • System structure awareness module identity second • Client/Provider independence • Requirement-based dependency checking B v2 A v1 C v1.1 Page 8 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 9. Level 4: Loose-Coupling Characteristics Benefits • Separation of interface from • Implementation client/provider implementation with independence implementation used indirectly • No factories • No ‘new’ • Services-based module collaboration • Dependencies semantically versioned B v2 A v1 C v1.1 D v1 Page 9 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 10. Level 5: Devolution Characteristics Benefits • Artifact ownerships devolved to • Greater awareness of existing modularity-aware repositories modules • Repositories may support • Reduced duplication, increases • Collaboration (commenting, quality ratings, forums) • Collaboration/empowerment • Governance (approvals, life- around modules cycle) • Quality/operational control B v2 A v1 C v1.1 D v1 Page 10 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 11. Level 6: Dynamism Characteristics Benefits • Dynamic module life-cycle • No brittle ordering dependencies • Modules fully life-cycle aware • Ability to dynamically update a • Operational support for module running system addition, removal, replacement • Extend capabilities • Apply fixes B v2 A v1 C v1.1 D v1 Page 11 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 12. Simple Summary Level Name Summary 1 Ad Hoc Nothing 2 Modules Formal identity, decoupled from artifact 3 Modularity Formal module contracts, decoupled from identity 4 Loose-Coupling Services, semantic versioning, decoupled from implementation 5 Devolution Modularity-aware repositories, collaboration, governance, decoupled from ownership 6 Dynamism Life-cycle awareness and independence, decoupled from time Page 12 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 13. Time to apply... • How do your projects and organization fair? • How do some well-known projects fair? • How are we doing as an industry? • In answering these questions we can better understand the tasks and benefits ahead Page 13 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 14. Level 7: Peter Kriens Characteristics Benefits • Sees the modularity in anything • Can address all modularity problems and everything • A higher state of modularity enlightenment • 10+ years eating and breathing modularity Page 14 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011
  • 15. Trademarks IBM and WebSphere are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml. Page 15 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved, 26.09.2011 © IBM Corp. 2011