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

M
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
1 of 15

Recommended

Le Comptoir OCTO - Le Cloud souverain by
Le Comptoir OCTO - Le Cloud souverainLe Comptoir OCTO - Le Cloud souverain
Le Comptoir OCTO - Le Cloud souverainOCTO Technology
271 views13 slides
AVEVA World Conference NA - Cormac Ryan, AVEVA ISM by
AVEVA World Conference NA - Cormac Ryan, AVEVA ISMAVEVA World Conference NA - Cormac Ryan, AVEVA ISM
AVEVA World Conference NA - Cormac Ryan, AVEVA ISMAVEVA-Americas
3K views20 slides
The evolving story for Agile Integration Architecture in 2019 by
The evolving story for Agile Integration Architecture in 2019The evolving story for Agile Integration Architecture in 2019
The evolving story for Agile Integration Architecture in 2019Kim Clark
1.6K views37 slides
TechEvent Cloud Governance by
TechEvent Cloud GovernanceTechEvent Cloud Governance
TechEvent Cloud GovernanceTrivadis
197 views34 slides
Introdution to Dataops and AIOps (or MLOps) by
Introdution to Dataops and AIOps (or MLOps)Introdution to Dataops and AIOps (or MLOps)
Introdution to Dataops and AIOps (or MLOps)Adrien Blind
1.2K views47 slides
Best Practices with Azure Kubernetes Services by
Best Practices with Azure Kubernetes ServicesBest Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesQAware GmbH
11.5K views78 slides

More Related Content

What's hot

Reporting & Analytics.pdf by
Reporting & Analytics.pdfReporting & Analytics.pdf
Reporting & Analytics.pdfRoopa slideshare
3.5K views45 slides
Digital Twin Metaverse Enterprise by
Digital Twin Metaverse EnterpriseDigital Twin Metaverse Enterprise
Digital Twin Metaverse EnterpriseAlex G. Lee, Ph.D. Esq. CLP
1.8K views56 slides
Multi-cloud strategies and services by
Multi-cloud strategies and servicesMulti-cloud strategies and services
Multi-cloud strategies and servicesTatiana Lavrentieva
757 views15 slides
Cloud governance - theory and tools by
Cloud governance - theory and toolsCloud governance - theory and tools
Cloud governance - theory and toolsAntti Arnell
941 views23 slides
Monitoramento de Aplicações - Felipe Regalgo by
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe RegalgoiMasters
709 views53 slides
The Transformation Journey with Cloud Technology by
The Transformation Journey with Cloud TechnologyThe Transformation Journey with Cloud Technology
The Transformation Journey with Cloud TechnologyAmazon Web Services
965 views14 slides

What's hot(20)

Cloud governance - theory and tools by Antti Arnell
Cloud governance - theory and toolsCloud governance - theory and tools
Cloud governance - theory and tools
Antti Arnell941 views
Monitoramento de Aplicações - Felipe Regalgo by iMasters
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe Regalgo
iMasters709 views
The Transformation Journey with Cloud Technology by Amazon Web Services
The Transformation Journey with Cloud TechnologyThe Transformation Journey with Cloud Technology
The Transformation Journey with Cloud Technology
An introduction to Semantic Web and Linked Data by Fabien Gandon
An introduction to Semantic Web and Linked DataAn introduction to Semantic Web and Linked Data
An introduction to Semantic Web and Linked Data
Fabien Gandon38.8K views
Innovate everywhere - SUSE edge by SUSE
Innovate everywhere - SUSE edgeInnovate everywhere - SUSE edge
Innovate everywhere - SUSE edge
SUSE300 views
2022 Insight Intelligent Technology™ Report by Insight
2022 Insight Intelligent Technology™ Report 2022 Insight Intelligent Technology™ Report
2022 Insight Intelligent Technology™ Report
Insight302 views
Power up! Mass Migrations at Speed and Scale - Accenture by Amazon Web Services
Power up! Mass Migrations at Speed and Scale - AccenturePower up! Mass Migrations at Speed and Scale - Accenture
Power up! Mass Migrations at Speed and Scale - Accenture
Amazon Web Services2.5K views
How enterprise networks can boost Cloud Continuum experience by accenture
How enterprise networks can boost Cloud Continuum experienceHow enterprise networks can boost Cloud Continuum experience
How enterprise networks can boost Cloud Continuum experience
accenture20.7K views
MSXI Global Benchmarker July_2017 by Sewells MSXI
MSXI Global Benchmarker July_2017MSXI Global Benchmarker July_2017
MSXI Global Benchmarker July_2017
Sewells MSXI1K views
DevOps in the Enterprise by Nauman Noor
DevOps in the EnterpriseDevOps in the Enterprise
DevOps in the Enterprise
Nauman Noor852 views
A passwordless enterprise journey by accenture
A passwordless enterprise journeyA passwordless enterprise journey
A passwordless enterprise journey
accenture1.1K views
Cloud native principles by Diego Pacheco
Cloud native principlesCloud native principles
Cloud native principles
Diego Pacheco2.2K views
AIOps: Your DevOps Co-Pilot by DevOps.com
AIOps: Your DevOps Co-PilotAIOps: Your DevOps Co-Pilot
AIOps: Your DevOps Co-Pilot
DevOps.com1.1K views
Metaverse and Digital Twins on Enterprise-Public.pdf by 湯米吳 Tommy Wu
Metaverse and Digital Twins on Enterprise-Public.pdfMetaverse and Digital Twins on Enterprise-Public.pdf
Metaverse and Digital Twins on Enterprise-Public.pdf
湯米吳 Tommy Wu483 views
IT Touchless Operations by accenture
IT Touchless OperationsIT Touchless Operations
IT Touchless Operations
accenture936 views

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

Towards a modularity maturity model - osgi users forum uk 16-nov2011 by
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
1.2K views14 slides
Towards a Modularity Maturity Model by
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity ModelGraham Charters
530 views15 slides
Subsystems: For those occasions where bundles are just too small... - Graham ... by
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
2.5K views31 slides
The Importance of IVI, GENIVI and Open Source by
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Sourcegenivialliance
2.6K views16 slides
How to Build Composite Applications with PRISM by
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMDataLeader.io
979 views36 slides
Automated Exploratory Tests by
Automated Exploratory TestsAutomated Exploratory Tests
Automated Exploratory TestsZbyszek Mockun
2.4K views32 slides

Similar to IBM Sponsorship Keynote: Towards a Modularity Maturity Model - Graham Charters(20)

Towards a modularity maturity model - osgi users forum uk 16-nov2011 by mfrancis
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
mfrancis1.2K views
Towards a Modularity Maturity Model by Graham Charters
Towards a Modularity Maturity ModelTowards a Modularity Maturity Model
Towards a Modularity Maturity Model
Graham Charters530 views
Subsystems: For those occasions where bundles are just too small... - Graham ... by mfrancis
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 ...
mfrancis2.5K views
The Importance of IVI, GENIVI and Open Source by genivialliance
The Importance of IVI, GENIVI and Open SourceThe Importance of IVI, GENIVI and Open Source
The Importance of IVI, GENIVI and Open Source
genivialliance2.6K views
How to Build Composite Applications with PRISM by DataLeader.io
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISM
DataLeader.io979 views
Automated Exploratory Tests by Zbyszek Mockun
Automated Exploratory TestsAutomated Exploratory Tests
Automated Exploratory Tests
Zbyszek Mockun2.4K views
Java Modularity with OSGi by Ilya Rybak
Java Modularity with OSGiJava Modularity with OSGi
Java Modularity with OSGi
Ilya Rybak18.9K views
Enterprise Dev Ops At Scale by Wesley Pullen
Enterprise Dev Ops At ScaleEnterprise Dev Ops At Scale
Enterprise Dev Ops At Scale
Wesley Pullen996 views
Introductie Visual Studio ALM 2012 by Delta-N
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
Delta-N601 views
Transforming to Microservices by Kyle Brown
Transforming to MicroservicesTransforming to Microservices
Transforming to Microservices
Kyle Brown2.3K views
Collab net overview_june 30 slide show by sfelsenthal
Collab net overview_june 30 slide showCollab net overview_june 30 slide show
Collab net overview_june 30 slide show
sfelsenthal819 views
Worklight 5.0 Webinar 7 12 V2 by gaborvodics
Worklight 5.0 Webinar 7 12 V2Worklight 5.0 Webinar 7 12 V2
Worklight 5.0 Webinar 7 12 V2
gaborvodics1.2K views
Bestpractices Portal Projects by allerhed
Bestpractices Portal ProjectsBestpractices Portal Projects
Bestpractices Portal Projects
allerhed3.4K views
Collaborative lifecycle development for Mobile Software by IBM Software India
Collaborative lifecycle development for Mobile SoftwareCollaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software
IBM Software India379 views
Collaborative lifecycle development for Mobile Software by IBM WebSphereIndia
Collaborative lifecycle development for Mobile Software Collaborative lifecycle development for Mobile Software
Collaborative lifecycle development for Mobile Software
IBM WebSphereIndia 1.8K views
A classification framework for component models by Ivica Crnkovic
A classification framework for component modelsA classification framework for component models
A classification framework for component models
Ivica Crnkovic1K views
What's New in IBM Web Experience Factory by Davalen LLC
What's New in IBM Web Experience FactoryWhat's New in IBM Web Experience Factory
What's New in IBM Web Experience Factory
Davalen LLC1.5K views
Introduction to OSGi by Dan Selman
Introduction to OSGiIntroduction to OSGi
Introduction to OSGi
Dan Selman781 views
Building databound JavaScript apps with Knockoutjs by Nish Anil
Building databound JavaScript apps with KnockoutjsBuilding databound JavaScript apps with Knockoutjs
Building databound JavaScript apps with Knockoutjs
Nish Anil842 views

More from mfrancis

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I... by
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
544 views12 slides
OSGi and Java 9+ - BJ Hargrave (IBM) by
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)mfrancis
1.4K views26 slides
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living) by
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
484 views15 slides
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu by
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
589 views31 slides
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe... by
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
437 views23 slides
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So... by
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
873 views12 slides

More from mfrancis(20)

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

Recently uploaded

Unit 1_Lecture 2_Physical Design of IoT.pdf by
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdfStephenTec
12 views36 slides
20231123_Camunda Meetup Vienna.pdf by
20231123_Camunda Meetup Vienna.pdf20231123_Camunda Meetup Vienna.pdf
20231123_Camunda Meetup Vienna.pdfPhactum Softwareentwicklung GmbH
41 views73 slides
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...Jasper Oosterveld
18 views49 slides
AMAZON PRODUCT RESEARCH.pdf by
AMAZON PRODUCT RESEARCH.pdfAMAZON PRODUCT RESEARCH.pdf
AMAZON PRODUCT RESEARCH.pdfJerikkLaureta
26 views13 slides
Piloting & Scaling Successfully With Microsoft Viva by
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft VivaRichard Harbridge
12 views160 slides
Melek BEN MAHMOUD.pdf by
Melek BEN MAHMOUD.pdfMelek BEN MAHMOUD.pdf
Melek BEN MAHMOUD.pdfMelekBenMahmoud
14 views1 slide

Recently uploaded(20)

Unit 1_Lecture 2_Physical Design of IoT.pdf by StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec12 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
AMAZON PRODUCT RESEARCH.pdf by JerikkLaureta
AMAZON PRODUCT RESEARCH.pdfAMAZON PRODUCT RESEARCH.pdf
AMAZON PRODUCT RESEARCH.pdf
JerikkLaureta26 views
Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
Serverless computing with Google Cloud (2023-24) by wesley chun
Serverless computing with Google Cloud (2023-24)Serverless computing with Google Cloud (2023-24)
Serverless computing with Google Cloud (2023-24)
wesley chun11 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri16 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab19 views
Transcript: The Details of Description Techniques tips and tangents on altern... by BookNet Canada
Transcript: The Details of Description Techniques tips and tangents on altern...Transcript: The Details of Description Techniques tips and tangents on altern...
Transcript: The Details of Description Techniques tips and tangents on altern...
BookNet Canada136 views
Data Integrity for Banking and Financial Services by Precisely
Data Integrity for Banking and Financial ServicesData Integrity for Banking and Financial Services
Data Integrity for Banking and Financial Services
Precisely21 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software263 views

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