Presentation to the OMG Real-Time Workshop in May 2010 on system integration patterns, especially (but not exclusively) with respect to OMG Data Distribution Service (DDS) technology.
6. Subsystem 2
P P
PP P
Subsystem 1
P P
PP P
Schematic of a Composed System
Subsystems may have different network environments
Integration may have different network environment
than subsystems themselves
Data may need to be transformed / cleansed as it
moves among subsystems
Routing / gateway services will adapt data types /
formats / protocols
LAN LAN
WAN
Router/G
ateway
Router/G
ateway
Isolation
Additional
Governance
7. Schematic of a Composed System
Wash, rinse, repeat
Subsystem 1
P P
PP P
Subsystem 2
P P
PP P
Router/G
ateway
Router/G
ateway
8. Same data model?
Same network env.?
Same lifecycle?
Behavior unaffected?
Understandable?
Apples and Oranges
P P
PP P
Subsystem 1 + Subsystem 2
P P
PP P
Subsystem 2
P P
PP P
Subsystem 1
P P
PP P
Router/
Gateway
Router/
Gateway
When I say “large” in this presentation, I’m primarily talking about complexity. I’m not talking primarily about a unified simple design that happens to have lots of participants in it.
Same principles apply to defense systems, financial systems, power systems, industrial automation, etc.
Care about lots of the same things as any system designers — functionality, performance, … — but care about certain things much more.
Isolation relates to governance: making sure integration doesn’t violate SLAs
This will eventually be a talk about DDS, but we’ll get to that later
Integrating two subsystems with different data spaces is not the same as joining them into one data space.
You will be tempted to just mush things together. (Just connect the network cable; it’s easy, right?) Beware that temptation.
Are the different subsystems using the same structural and behavioral data model?
Are the network environments the same?
Do they evolve together?
Suppose the answers are both Yes.
Will they continue to be the same over time as the composed system evolves?
Will the system behave the same when all the data is going to twice as many consumers?
Can one team of people understand the design and operation of a now-much-more-complex single subsystem?
Same principles apply in every industry
Same principles apply in every industry
Same principles apply in every industry
Same principles apply in every industry
2 problem areas brought up before that we haven’t discussed yet.
These will be bridge to technology-specific discussion in 2nd half.
Zoom in…
Test results from lab of hundreds of multi-core Linux machines connected by gigabit Ethernet
Brokered application data should be self-explanatory at this point.