CARDAMOM is an open source CORBA middleware developed through collaboration between AMS and THALES to support distributed applications. It uses CORBA component model and provides services like events, data distribution, and fault tolerance. Its reference platforms are C++ using TAO Linux and Java using JacORB. The first project to use CARDAMOM is the Franco-Italian European Flight Data Processor.
1 of 38
More Related Content
Cardamom Omg
1. CORBA Middleware for the
French and Italian Flight Data Processing System:
CARDAMOM
IT&S Aerospace Defence
2. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
2
3. Introduction
Collaboration agreement:
CARDAMOM is the concrete result of AMS and THALES
Collaboration agreement for the development of CORBA 3
compliant middleware.
Open source:
In order to ensure the large-scale dissemination and usage of
CARDAMOM and of the CORBA 3 standard AMS and
THALES have decided to distribute CARDAMOM as an open
source.
eFDP/fi middleware:
Date and references31/03/03
The eFDP/fi (Franco Italian European Flight Data Processor) is
the first common project where CARDAMOM is used.
3
4. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
4
5. CARDAMOM = a framework...
...to configure, deploy and execute near real-time and
fault-tolerant distributed applications
Scalability
Inter
Throughput Persistence
Determinism operability
Paralellism Availability Security
Near Real Time
Document
and Complex
Physics / Signal Data Real Time and
Fault Tolerant Information
Electronics Processing Processing Information Workflow
Information Management
Date and references31/03/03
Processing Management
Processing
Equipment (sensor / actuator) Distributed Computer System
5
6. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
6
7. CARDAMOM Principles
Multi-domain
Command And Control Information System (CCIS)
Open Source
Open Common Development Organisation
CORBA Component Model
Extended to CCIS requirements
Support for other technical services
Value-added execution platform (services)
Modularity - flexibility
COTS integration
OMG standardisation active participation
Date and references31/03/03
Vendors Collaboration / Multi ORB
To be used with a UML tool chain
To ease the application development
to support MDA
7
8. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
8
9. Principles - Multi-domain
CARDAMOM is intended to be used in different domains
such as:
Air Traffic Control,
Secure Operation,
Airborne Command and Control systems,
Naval Combat Management…
Date and references31/03/03
9
10. Command Control and Information System
Defence
Secure Op.
Civil
Air Secure Airborne Naval
Traffic Operation Command Combat
Control & Control
Date and references31/03/03
Management
System
10
11. CCIS Example : ATC center architecture
AFTN/CIDIN
ATFM
ADJACENT
FIR'S/TWR'S
MET Centres
Supervisory Recording
Radar Front Radar Data Flight Plan Simulator
Control
Supervisory Replay
Processing Processing Recording
Processing
Radar Front Radar Data Flight Plan Simulator
Control Replay
Processing Processing Processing
LAN
Voice control
controller controller controller
controller and
Voice control
Working Working Working
Working communications
and
Position Position Position
Position
Date and references31/03/03
communications
• Intercom
• Priority
• Public
• RADIO A/G
11
12. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
12
13. Principles – Open Source
Development of CARDAMOM by a Common Development
Organisation (CDO)
The CDO includes THALES and AMS Units and is an open
structure
Share of development cost by the CDO partners
Product managed by a Board including contributing Units
Date and references31/03/03
13
14. Principles – Open Source Distribution
Common
Development
Organization
DEVELOPMENT
REFERENCE
ENTERPRISE
COMMUNITY
EDITION
EDITION
Date and references31/03/03
Services &
OSS Solutions
Consortium Provider
Commercial
Non Commercial
User
User
14
15. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
15
16. Principles - Why OMG's CORBA
Only middleware standard that
is non-proprietary
supports actually heterogeneity
platform
languages
is suitable to integrate smoothly legacy
CORBA is evolving towards more 'technical' features
CORBA-RT
Fault Tolerant CORBA
...
Not only plain synchronous method call (C/S)
Date and references31/03/03
supports asynchronism (events)
supports deferred synchronism (AMI)
supports data distribution (DDS)
16
17. Principles - Support of CCM
Explicit description of:
provided services
and events
requested services Component
and events
Separation of concerns:
Container
functional properties
non-functional properties
Execution Platform
Date and references31/03/03
Benefits:
easier deployment
re-use of application
è2
software
17
18. CCM - Areas of Investigation
CCM is a good organisational model...
...that deserves enhancements to fulfil CCIS requirements
integration of new technical services
administration
Component
Integration of new
technical services
Internal container
Container
organisation
Components
Date and references31/03/03
administration
suite
Execution Platform
18
19. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
19
20. Principles - Value-Added Platform
To keep non-functional properties away from the pure
application logic, they need to be supported elsewhere
Services
Lifecycle
Naming, Trading
Supervision
Events
Whose QoS & implementation must
Data distribution
fit with CCIS application requirements
Time
Date and references31/03/03
Persistence
Fault Tolerance
Load Balancing...
20
21. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
21
22. CARDAMOM Open Flexible Platform
Container
Application
Code
CARDAMOM
CARDAMOM Foundation
PROFILE
Kernel
OS
ORB
Data
Date and references31/03/03
Load System
Life Recor Trace Persis
Naming Property Events Time Distri
tence Balancing Mngt.
cycle ding Logging
bution
Pluggable CARDAMOM Services or COTS services
22
23. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
23
24. OMG Standardisation (CARDAMOM Services vs. CORBA Services)
CARDAMOM CORBA
Services Standard
Services
ORB
Date and references31/03/03
PERCO
OMG
Prototyping
RFP
Validation
è4
24
25. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
25
26. Principles - Use a UML Tool Chain
Support of MDA (Model Driven Architecture)
Approach
Capitalization on
Requirements & Architecture
Models
UML models (PIM in MDA) • Domain
• Technical
Platform Independent Model
• Platform
CARDAMOM
UML models (PIM in MDA)
UML TOOLSET UML profiles
Platform-specific
Platform specific model
Models and Profiles
CARDAMOM
Date and references31/03/03
Value-added
Component-based
description
Execution Platforms
Platform-wide Services
files
26
27. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
27
28. Expected Services
Lifecycle
Naming, Trading
Supervision
Events
Data distribution
Time
Persistence
Fault Tolerance
Load Balancing
Date and references31/03/03
Transaction
Recording and Replay
CCM
28
29. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
29
30. CARDAMOM Current Services
Abstraction Layers
OS Abstraction Layer
Isolation layer from the underlying OS
Multi-threading support for C++
ORB Abstraction Layer
Isolation layer from the underlying ORB(s)
Life Cycle
Ease the use of the Portable Object Adapter by providing frameworks for
management of CARDAMOM objects life cycle through predefined
Factory Strategies that allow the selection of advanced POA features.
Naming & Repository
Scalable object repository to store and retrieve factories and object
references while providing a CORBA Naming Service compatible
interface.
Date and references31/03/03
Naming Interface
Ease of use for accessing any CORBA compliant Naming Service through
an interface similar to a file management system.
30
31. CARDAMOM Current Services
Event
Use of CORBA-compliant COTS
Add-on software to encapsulate ORB implementation specific features
(Event Channel creation), to ease connection to the Event Channel in
the push model, to administrate Event Channels.
Data Distribution
Submission at the OMG led by THALES
Integration of THALES Naval Netherlands SPLICE 2 COTS Product
Evolution currently performed by TNNL so as to make SPLICE 2 compliant
with OMG DDS (DCPS)
System Management
Initial definition of the system configuration and modification during
operation.
Control of system elements (nodes, applications, processes…) including
ordered start-up and stop of applications, performed from user-defined
Date and references31/03/03
graph of dependencies.
Monitoring of system elements and detection of faults.
Report upon request and notification of status and configuration changes
to subscribers.
31
32. CARDAMOM Current Services
XML Service
Allows a client to extract information from an XML document as
well as to update this document through IDL interfaces. The
XML Service also provides the capability to retrieve XML data
with an XPath request.
Time
Use of a CORBA compliant COTS (both Time and Timer Event
Services)
Trace Tool
Runtime analysis of CARDAMOM software
Date and references31/03/03
32
33. Support of CCM - Current Features
Support of
Extended Component level
Session Component category
Session Container API Type
No support for Persistence, Transaction and Security
Use of the COS Event for asynchronous communication
Component configuration through the Use of Component
and Home attributes
Provision of Packaging, Assembly and Deployment tools
Use of a Code Generator
Date and references31/03/03
33
34. Support of CORBA Ft - Current Features
Warm Passive Replication Style
Unit of Redundancy is the CORBA Object
Support of
Fail-Over Semantics
Replication Manager
Fault Detection (Process & Host) and Fault Notification
No State and Request Logging & Replay
No Gateway for non-FT client ORBs
Date and references31/03/03
34
35. CARDAMOM
Introduction
Target Applications
CARDAMOM Principles
Multi Domain
Open Source
CORBA Component Based Developments
Value Added Execution platform
COTS integration
OMG standardisation
31/03/03 references31/03/03
UML tool chain and MDA support
Expected Services
Current Services
Date and
Reference platform
35
36. Reference Platform
Multiplatform middleware.
But reference platform is required for industrial
development.
Two platforms:
C++ : TAO Linux.
Java : JacORB.
Ada available for legacy integration.
Gnat : OrbRiver
Date and references31/03/03
36
38. Conclusion
Industrial agreement between AMS and THALES for the
development of CORBA 3 compliant middleware.
large-scale dissemination and usage of CORBA 3 standard
through open source middleware.
The Franco Italian European Flight Data Processor eFDP/fi
is the first common project where CARDAMOM is used.
Date and references31/03/03
38