17
Component Based Model Driven Development of Mission Critical Defense Applications Johnny Willemsen [email protected] This presentation is based on material from Northrop Grumman

Component Based Model Driven Development of Mission Critical Defense Applications

Embed Size (px)

DESCRIPTION

Component Based Model Driven Development of Mission Critical Defense Applications

Citation preview

Page 1: Component Based Model Driven Development of Mission Critical Defense Applications

Component Based Model Driven Development of Mission Critical

Defense Applications Johnny Willemsen

[email protected]

This presentation is based on material from Northrop Grumman

Page 2: Component Based Model Driven Development of Mission Critical Defense Applications

The Northrop Grumman Teton project

Teton Mission Statement • Primary: Provide processes, tools, and open architecture

frameworks that enable faster and lower cost development of, and upgrades to, securable embedded processing subsystems, thereby reducing our customers’ acquisition and total ownership costs while enabling adaptability and interoperability with existing and emerging open systems

• Auxiliary: Leverage Mainstream Market Driven (MMD) hardware and software technologies to the maximum extent, and apply open standards wherever possible

The NGES Teton Project OA initiative started in 2007 • Baltimore-based Northrop Grumman Electronic Systems (NGES) is

one of the 4 Northrop Grumman Corp. business sectors (NGAS, NGES, NGIS, NGTS)

• Teton Project processes, tools and frameworks, including its primary OT Scalable Node Architecture (SNA) Platform, continue to be applied across the sector

Copyright © 2013 2

Page 3: Component Based Model Driven Development of Mission Critical Defense Applications

Teton Architectural Tenets

OA – Open Architecture MDA – Model Driven Architecture CBA – Component Based Architecture SOA – Service Oriented Architecture EDA – Event Driven Architecture

3 Copyright © 2013

Page 4: Component Based Model Driven Development of Mission Critical Defense Applications

The SNA Platform

The Scalable Node Architecture (SNA) Platform consists out of: • SNA Software Development Kit

COTS, FOSS, customer software, MDA, scripts Guidance, reference documentation, examples Installable on a development system

• SNA Core Runtime environment Installable on a target system

4 Copyright © 2013

Page 5: Component Based Model Driven Development of Mission Critical Defense Applications

SNA Core

Hardware Layer

OS, Driver & Network Stack

Layer

Middleware Layer • Typically

compressed to show Application Layer content instead, but exposed here to highlight CBDDS technologies used in the SNA Platform

• Many layers are just protocols, templates or virtual function calls (light)

Application Layer

OS, Comms, Network Stack

OS Abstraction & Utilities Framework

Messaging Framework

Application Framework - Run-Time Application Framework - Deployment

KEY Middleware Framework Sub-Layers

5 Copyright © 2013

Page 6: Component Based Model Driven Development of Mission Critical Defense Applications

Component Based Software Development

IDL CDP CDD

• Zeligsoft CX • Artisan Studio • Eclipse

• Zeligsoft CX • Artisan Studio

Design Tool IDE Tool Deployment Planning Tool

System Software Design & Component

Definition

Component Interface Design

Component Packaging &

Assembly

Component Deployment,

Integration & Reuse

Component Software Design

Component Implementation

1 2 5 6 4 3

Arch

itect

ure

& S

yste

m

Desig

n

Syst

em

Inte

grat

ion,

Te

st &

Ve

rific

atio

n

SNA CBD Software Lifecycle Process

Key Artifacts CPP, H SO

• IDE: Integrated Development Environment • CBD: Component Based Development

• SNA: Scalable Node Architecture • IDL: Interface Definition Language (OMG)

• CDP: Component Deployment Plan • CDD: Component Domain Descriptor

Agile process iterations early & often, incrementally building up from an early executable “skeleton” architecture

6 Copyright © 2013

Page 7: Component Based Model Driven Development of Mission Critical Defense Applications

Design tools

Multiple design tools support the MDD process Full iterative process Model is leading for the full MDD process

7 Copyright © 2013

Page 8: Component Based Model Driven Development of Mission Critical Defense Applications

IDL

Interface Definition Language standard defined by the Object Management Group (OMG) Used by Component Based DDS (CBDDS) to • Define all data types • Define interfaces • Define ports • Define components

Fully generated by the modeling tools

8 Copyright © 2013

Page 9: Component Based Model Driven Development of Mission Critical Defense Applications

Language Mappings

Translate IDL to a certain programming language • Multiple language mappings exist • SNA currently uses the IDL to C++ language

mapping • The C++ mapping has its challenges itself, new

C++11 language mapping is much cleaner and easier to use

Tooling generates starter code based on the IDL definition and the selected language mapping

9 Copyright © 2013

Page 10: Component Based Model Driven Development of Mission Critical Defense Applications

DDS

Publish/subscribe middleware Delivers a global data space which is shared between all applications Each application can define its own Quality of Service (QoS) requirements Based on QoS definitions DDS will distribute all data in the system in an efficient matter No single point of failure SNA is using RTI DDS as implementation

10 Copyright © 2013

Page 11: Component Based Model Driven Development of Mission Critical Defense Applications

CORBA

Request/response oriented middleware Capability of asynchronous requests Set of well defined optional services Rich set of Quality of Service features Multiple implementations for multiple languages exist SNA uses TAO as C++ implementation

11 Copyright © 2013

Page 12: Component Based Model Driven Development of Mission Critical Defense Applications

D&C

Deployment and Configuration standard defined by the OMG Makes it possible to deploy containers, components, connectors based on a so called deployment plan

12 Copyright © 2013

Page 13: Component Based Model Driven Development of Mission Critical Defense Applications

CBDDS

Integrates CORBA and DDS into one component framework Best of both worlds combined Programming API for the component developer independent of which middleware is used at runtime Flexible deployment of components fully generated by the deployment modeling tool

13 Copyright © 2013

Page 14: Component Based Model Driven Development of Mission Critical Defense Applications

Custom Connectors

Domain specific connectors can embed special middleware solutions • Encapsulating special hardware like Infiniband • Vector Signal processing using VSIPL/VSIPL++ • Discovery of application services using DDS

14 Copyright © 2013

Page 15: Component Based Model Driven Development of Mission Critical Defense Applications

Teton project results

Used on 14 programs and up to 20 IRAD efforts Results from programs • Significant productivity gains • Component and assembly reuse results into a new

Software Reuse Library • Complexity & SLOC reductions (up to 56%) • Very high stability • Shortened development times • Excellent and extreme quick portability between

hardware architectures

15 Copyright © 2013

Page 16: Component Based Model Driven Development of Mission Critical Defense Applications

Direction of future work

Define Unified Component Model (UCM), which will be a revision of the OMG CCM standard that will make it middleware agnostic Integrate with tooling that support the MDD process for the component business logic Migrate to an implementation using the new IDL to C++11 language mapping Add support for Java for the IT kind of systems

16 Copyright © 2013

Page 17: Component Based Model Driven Development of Mission Critical Defense Applications

More information

More information on the Internet • www.remedy.nl • www.orbzone.org • www.omg.org

Contact me after this presentation in person or by email • Johnny Willemsen, [email protected]

Special thanks to the Northrop Grumman Teton team

17 Copyright © 2013