Submit Search
Upload
Complexity, Components & Clouds (Paremus)
•
3 likes
•
1,477 views
M
mfrancis
Follow
Presentation by Richard Nicholson (Paremus) to FITEClub London April 2010.
Read less
Read more
Technology
Report
Share
Report
Share
1 of 48
Download now
Download to read offline
Recommended
Centralization, decentralization & formalization
Centralization, decentralization & formalization
Malay Patel
Ch09 - Organisation theory design and change gareth jones
Ch09 - Organisation theory design and change gareth jones
Ankit Kesri
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)
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)
mfrancis
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
mfrancis
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...
mfrancis
Recommended
Centralization, decentralization & formalization
Centralization, decentralization & formalization
Malay Patel
Ch09 - Organisation theory design and change gareth jones
Ch09 - Organisation theory design and change gareth jones
Ankit Kesri
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)
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)
mfrancis
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
mfrancis
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...
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...
mfrancis
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...
mfrancis
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...
mfrancis
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...
mfrancis
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)
mfrancis
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...
mfrancis
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...
mfrancis
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
mfrancis
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
mfrancis
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
mfrancis
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
mfrancis
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
mfrancis
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
mfrancis
Eclipse microprofile config and OSGi config admin - E Jiang
Eclipse microprofile config and OSGi config admin - E Jiang
mfrancis
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Zilliz
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
Nicole Novielli
More Related Content
More from 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...
mfrancis
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...
mfrancis
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...
mfrancis
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...
mfrancis
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)
mfrancis
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...
mfrancis
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...
mfrancis
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
mfrancis
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
mfrancis
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
mfrancis
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
mfrancis
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
mfrancis
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
mfrancis
Eclipse microprofile config and OSGi config admin - E Jiang
Eclipse microprofile config and OSGi config admin - E Jiang
mfrancis
More from mfrancis
(20)
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)
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)
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...
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)
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)
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)
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)
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
Software AG Application Modularity - OSGi and JPMS (Jigsaw)
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Eclipse microprofile config and OSGi config admin - E Jiang
Eclipse microprofile config and OSGi config admin - E Jiang
Recently uploaded
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Zilliz
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
Nicole Novielli
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
LoriGlavin3
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
Rick Flair
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Mark Simos
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
LoriGlavin3
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
BkGupta21
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Pixlogix Infotech
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
MounikaPolabathina
Recently uploaded
(20)
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
How to write a Business Continuity Plan
How to write a Business Continuity Plan
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
Complexity, Components & Clouds (Paremus)
1.
Complexity, Components &
Clouds Dr R Nicholson FITE club - April 2010 www.paremus.com FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
2.
FITE Club?
“Fight Club is a metaphor for the need to push through the walls we put around ourselves and just go for it” “...probe the frustrations of the people that live in the system...” FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
3.
What do we
mean by Complexity? FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
4.
Complexity
Information !"#"!$"%"& A suitable Representation FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
5.
Complexity
Information !"#"!$"%"& A suitable Representation FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
6.
Complexity
(m) Volume = V (x,x’) (z,z’) (y,y’) pressure = P Temperature = T Information !"1(m,x,y,z,x',y',z') Information !"#$#%& A suitable Abstraction FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
7.
Complexity
(m) Volume = V (x,x’) (z,z’) (y,y’) pressure = P Temperature = T Information !"1(m,x,y,z,x',y',z') Information !"#$#%& A suitable Abstraction FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
8.
Accidental Complexity
• Redundant Information • Same System may be fully described in a more succinct manner • Ability to easily re-factor enables Accidental Complexity to be driven out over time FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
9.
Necessary Complexity
When all accidental complexity is stripped away - we are left with necessary complexity... •The actual ‘structure’ of the System •Adaptive Systems are by necessity more complex than non- adaptive Systems Strategies for dealing with necessary complexity? •Abstraction •Perhaps a change Perspective / Representation FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
10.
Abstraction & Virtualisation Virtualisation
- Emulates the characteristics of an entity Abstraction - Masks the complexity of the entity (physical or virtual), providing a simplified description Abstraction and Virtualisation are orthogonal & complementary concerns • As system complexity increases - stop attempting a microscopic description use emergent macroscopic characteristics • Boundaries - Where/when does it makes sense to change point of view? • Several such boundaries may exist! • Manage via emergent macroscopic properties and operational complexity should dramatically reduce • Conversely virtualisation ‘strategies’ never decrease operational complexity Source - Richard Nicholson - Paremus https://adaptevolve.paremus.com/?p=18 FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
11.
Components: Why? FITE Club
(London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
12.
Components: The need
to Abstract! as change isolate change occurs modules and their dependencies Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
13.
Components: Something is
Missing? ? Reuse Release Equivalence: Unit of reuse is the unit of release! Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
14.
Components: Something is
Missing? Reuse Release Equivalence: Unit of reuse is the unit of release! Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
15.
Components: Benefits
- reus e - re du ce co m - ease plexity mainte - incr nance ease exten sibility Reduces Complexity HOW? • OSGi Modularity - enables rapid ongoing code refactoring - essential for driving out Accidental Complexity • OSGi Modularity - provides the required Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ abstraction, masking Necessary Complexity FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
16.
Components: Benefits
- reus - re du e Increases architectural agility! ce co m - ease plexity mainte - incr nance ease exten sibility Reduces Complexity HOW? • OSGi Modularity - enables rapid ongoing code refactoring - essential for driving out Accidental Complexity • OSGi Modularity - provides the required Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ abstraction, masking Necessary Complexity FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
17.
Components: Modularity is
not a new story “First they ignore you, then they ridicule you, then they fight you, then you win.” -- Mahatma Gandhi Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
18.
Components: Modularity is
not a new story “First they ignore you, then they ridicule you, then they fight you, then you win.” -- Mahatma Gandhi OSGi is a disruptive technology that will transform how enterprise Java applications are designed, developed, and managed! Source - Kirk Knoernschild (Burton Group) http://techdistrict.kirkk.com/2010/02/26/osgi-devcon-slides/ FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
19.
Components: Business Driver
90% of application lifetime cost concerns maintaining and evolving the Production Systems Modularity is a MUST FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
20.
Clouds FITE Club (London)
www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
21.
Cloud: The bandwagon
is rolling! What are the critical characteristics required of any credible Cloud solution? FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
22.
Cloud 1. An
Elastic Resource Landscape • All resource is transient • Resource landscape will expand / contract over time • Resource characteristics will change over time FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
23.
Cloud 2. Simplicity
through Abstraction • Manage Populations - not Instances • Manage Business Systems - not Components FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
24.
Cloud 3. Robust
& Recovery Oriented A system accident is an "unanticipated interaction of multiple failures" in a complex system. This complexity can either be technological or organizational, and often has elements of both. (Normal Accidents - Perrow 1984) Complex Systems tend to suffer correlated & cascading failures! FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
25.
Cloud 3. Robust
& Recovery Oriented A system accident is an "unanticipated interaction of • multiple failures" in a complex system. This complexity can Agile Systems - Are Robust Systems either be technological or organizational, and often has • Robust Systems - Are Agile Systems elements of both. • Self-Forming / Auto-Repairing (Normal Accidents - Perrow 1984) • Optimised for MTTR not MTBF • No single point oftend to suffer correlated failure (SPoF) • No single point of Complex Systems reference (SFoR) & cascading failures! FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
26.
Cloud 4. Must
understand Composite Systems Deployment via VM images NOT GOOD ENOUGH Remember - Reuse Release Equivalence: Unit of Release is the unit of Reuse! FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
27.
Cloud 5. Is
Multi-Tenant Isolation / Visibility - control at all levels of structural hierarchy / abstraction: • Groups of Systems • Groups of Composites within a System FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
28.
Cloud 6. Is
Architecturally Invisible The Cloud runtime while providing options should not constrain or enforce: •Communication protocol •Middleware Services •Data Services (CAP) •Caching Services (CAP) •Or type of development framework FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
29.
Cloud 7. Support
Adaptive / Reactive Applications Dynamically assemble, and if necessary re-assemble, in response to changes in operational / business environment: •Rapid patch / fix and roll back capabilities •In future? - Dynamic component re-wiring to account for co-locality - Policy based roll-back based on System behaviour - Self-Tuning / SLA aware Service assembly behaviours Deployment via VM images IS DEFINITELY NOT GOOD ENOUGH FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
30.
The Paremus Service
Fabric FITE Club (London) www.paremus.com April 2010 Copyright © 2010 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
31.
The Paremus Service
Fabric SaaS (1..m) “Systems” may run upon a single Service Fabric IaaS (1..n) “private Resource Clouds” may contribute to a Service Fabric FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
32.
Atlas Resource Management ‘Target
State’ driven resource acquisition Service Fabric ! Production "#"Cloud ! Blue$ "&"Cloud ! Red$"os%name!Darwin$$$ • Ongoing discovery • To join a Service Fabric - Atlas agent must have appropriate X509 certificate • Only resource with correct characteristics are assimilated into Service Fabric • Resource may leave at any point in time Create a “Red” & “Blue” Service Fabric FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
33.
Service Fabric -
Infrastructure Services Registry Provisioner Service Advertisements System Managers Principles: • No ‘special’ nodes • Node ‘Roles’ may/do change over time C A Techniques: B • Dynamic Group formation & subsequent membership • Dynamic leadership election • Eventual Consistency across group members Repository Management & OSGi bundles System Descriptions Monitoring Nimble Policies WAR EAR General artifacts FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
34.
Service Fabric -
A Model-Driven Runtime A model of the desired business service is submitted. The Service Fabric dynamically deploys all required business and infrastructure components. System Running System Description Abstraction Corresponding ‘Form’ runtime Entity FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
35.
Service Fabric -
Model-Driven Management The Service Fabric continually compares the runtime structure with its corresponding model Target State Runtime State =1 =3 =1 Deploy FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
36.
Service Fabric -
Model-Driven Management The Service Fabric continually compares the runtime structure with its corresponding model Provision Delta Target State Runtime State Planned Deltas =1 e.g. Configuration M!del changes =3 Runtime Target State Entity "Structure#SLA$ Unplanned Deltas =1 e.g. Resource failures Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Monitor Bundle FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
37.
Service Fabric -
Model-Driven Management The Service Fabric continually compares the runtime structure with its corresponding model Provision Delta Target State Runtime State Planned Deltas =1 e.g. Configuration M!del changes =3 Runtime Target State Entity "Structure#SLA$ Unplanned Deltas =1 e.g. Resource failures Necessary Complexity Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle masked by ‘Nimble’ Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Bundle Monitor Bundle FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
38.
Service Fabric -
Model-Driven Management To change a complex runtime System simply change its model! Target State Runtime State =1 =5 =1 Re-Configure FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
39.
Service Fabric -
Model-Driven Management To change a complex runtime System simply change its model! Provision Delta Target State Runtime State Planned Deltas =1 e.g. Configuration changes M!del =5 Target State Runtime Unplanned Deltas Entity "Structure#SLA$ =1 e.g. Resource failures Monitor FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
40.
Anatomy of a
Business System System Target Scaling Behaviour SCA Structure Resource Contract State (Replication Handlers) = (os.name=linux) & (CPU.speed > 3 Ghz) = = fl(x) + = fm(y) = fn(z) + = !(os.name=Windows) = (cost_center=engineering) Composites & Scale behaviour Resources Bindings required FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
41.
Dynamic Scaling in
response to Load Store input stream a-e CEP Processing u-z Store input stream a-b CEP Processing y-z FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
42.
Scoping & Visibility
System " $Group A% System ! $Group A% System # Level Description A service at composite visibility is only bound to Composite references within the same composite A service at system visibility is visible to any System reference in a composite in the same system A service at group visibility is visible to any reference Group within composites in systems in the same group A service at fabric visibility is visible to all references Fabric within the fabric A service at fabric visibility is visible to all references Public within the fabric FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
43.
Development The Service Fabric
does not mandate any particular IoC framework. A System may consists of any mix of: • Java POJO’s • OSGi Declarative Services • OSGi Blueprint • iPojo • Spring and Spring DM • Google Guice / Peaberry • Scala (or any other language that targets the JVM) FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
44.
System Architecture -
Communication Service Fabric does not enforce any particular architectural ‘form’ • Messaging middleware / protocols are the concerns of each System; via choice of bindings and infrastructure components • SEDA, ESB, Broker, P2P patterns are all possible • Low latency, batch grid, order matching & transactional message based Systems may be concurrently supported on the same Fabric FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
45.
System Architecture -
Data / Caching Service Fabric does not enforce an particular data model. A true No-SQL Platform as a Service (PaaS): • Unstructured data processing - Hadoop • Key / Value - Voldemort • Column - Cassandra • Graph Database - Neo • Relational - Derby, MySQL FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
46.
A self-configuring PaaS
Service Fabric - ‘I need to deploy a Servlet containers for this WAR based service!’ EAR EAR war Avoid middleware lock-in. Avoid bending you business systems to the dictates of monolithic middleware. The Paremus Service Fabric is a PaaS runtime that dynamically assembles and configures itself around the requirements of each business service it hosts FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
47.
What to know
more? • Talk to Paremus. • on OSGi? Join UK OSGi Forum - http://uk.osgiusers.org/Main/HomePage • on OSGi? Buy the Book - http://www.manning.com/hall/ FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
48.
Thank You
www.paremus.com/servicefabric www.paremus.com/nimble http://felix.apache.org/site/apache-felix-sigil.html FITE Club (London) www.paremus.com April 2010 Copyright © 2009 Paremus Ltd. May not be reproduced by any means without express permission. All rights reserved.
Download now