pces pi 0ct 2001 - 1 boeing open experimental platform boeing phantom works st. louis, missouri dave...

55
PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp [email protected] Brian Mendel [email protected]

Upload: martha-dennis

Post on 03-Jan-2016

220 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 1

BoeingOpen Experimental Platform

BoeingOpen Experimental Platform

Boeing Phantom WorksSt. Louis, Missouri

Dave Sharp [email protected]

Brian Mendel [email protected]

Page 2: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 2

Breakout Session GoalsBreakout Session Goals

• Describe, Discuss, and Derive–Initial Challenge Problems–OEP build contents and schedule–Integrated experiment plans

Page 3: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 3

Breakout Session OutlineBreakout Session Outline

• Session #1–Challenge Problems–OEP Overview

• Session #2–Experimentation Planning

• Mapping of TD research onto Challenge Problems• Aiming for initial experiments by April 2002

Page 4: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 4

Challenge ProblemsChallenge Problems

Page 5: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 5

Challenge Problem ApproachChallenge Problem Approach

• OEP Proposes–Challenges based on production program

experiences–Overall structure for resolving them

• TDs Propose–Mapping of technologies to challenge

problems

Page 6: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 6

TechnicalChallenges Classification

TechnicalChallenges Classification

Define Aspects/ Refactor SourceDefine Aspect

Implementations

Map Aspects

Weave Aspects

Analyze Components and Compositions

Extend Capabilities

ApplicationMiddleware& Services

Tec

hn

olo

gy

Ch

alle

ng

es

Embedded SoftwareFocus Areas

Events

Mem

Mgm

t

Concurre

ncy

…Aspec

ts

Process-Related

Product-Related

Page 7: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 7

Process-Related

Challenge Problems

Page 8: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 8

Language-Based

Model-Based

AutomatedGeneration

Development Process Outline

Development Process Outline

Define Aspects

Weave Aspects

Specify Aspects

Specify Behavior

Specify Aspect Mapping

Compile Build Test

classes

instancesSpecify

Configuration

Analyze Code

Specify Behavior

Specify Aspects

Specify Aspect Mapping

Analyze Model

Specify Configuration

Process-Related Challenge Problems

Analysis/Weaving could be done at different levels at

different times

Classes vs objects

Including hw

Page 9: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 9

Boeing PCES GoalsBoeing PCES Goals

• More configurable, flexible applications– Within large-scale development process context

• …

– Speed up code-test-debug cycle• Rapid adaptation to changing requirements…

– Make components more reusable across multiple products• Support variability between multiple products

– Configurability WITHIN software• 80-90% of our source code is application components

– Want more of software reusable• Whether by centralizing services within middleware, or at application

Page 10: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 10

Boeing PCES Goals (cont)Boeing PCES Goals (cont)

• Higher confidence in correct system operation–Reducing effort to achieve specific

confidence–Increase absolute attainable confidence

• Extend current capabilities

Page 11: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 11

Model/Language BoundariesModel/Language Boundaries

• What Is Optimal Application of Each Paradigm?–Is it impacted by AO?– Can language-

based approaches be extended to provide typically modeling-based capabilities & vice versa?

– How can they be best integrated?

Language-Based

Model-Based

AutomatedGeneration

Define Aspects

Specify Behavior

Specify Aspects

Specify Aspect Mapping

Weave Aspects

Specify Aspects

Specify Behavior

Specify Aspect Mapping

Analyze Model

Specify Configuration

Analyze Code

Specify Configuration

Process-Related Challenge Problems

Page 12: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 12

AO StylesAO Styles

• Internal–Methods that modify execution internals of

elements• Weaving• Generative Programming• Macros

• External–Methods that tailor execution externally, e.g.

by specifying attributes to external service• QoS specifications• Execution ordering

Process-Related Challenge Problems Define Aspects

Page 13: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 13

Aspect ClassificationsAspect Classifications

Aspects defining a portion of a component’s internal

behavior

Aspects defining a portion of a service’s internal behavior

Aspects defining a portion of a component’s externally

configured behavior

Aspects defining a portion of a service’s externally configured behavior

Application Components Middleware & Services

Internal

External

Defines element’s service attributes to external provider

Modifies execution internals of element

Process-Related Challenge Problems

AO

Sty

le

Focus Area

Define Aspects

Page 14: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 14

Candidate AspectsCandidate Aspects

•Event consumers and suppliers

•Execution pattern•State management•Concurrency control•Error management

•Number of threads•Event queue sizes

•OS adapters•Network protocols

•Event dependencies and configuration

•Scheduling•Fault tolerance

•Lock configuration•Distribution allocation

•Thread priorities

Application Components Middleware & Services

Internal

External

Defines element’s service attributes to external provider

Modifies execution internals of element

Process-Related Challenge Problems

AO

Sty

le

Focus Area

Define Aspects

Page 15: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 15

Internal Component AspectsInternal Component Aspects

• Event Consumers and Suppliers–Which components are event

consumers/suppliers?

• Execution Pattern–What is overall structure of event handler

(Push())?

Process-Related Challenge Problems Define Aspects

Avionics Interfaces

Operator

Real World Model

Infrastructure Services

AirframeComponent

adcPhysicalDevice

horizontalSelector

predictedStatebaState

airframe

gpsPhysicalDevice

io1553Services

imageProcessingModule

logicalDisplaySystem

hud

logicalHorizSensor_GPS

logicalHorizSensor_INS logicalHorizSensor_ADC

insPhysicalDevice

1: Set

3: Set5: Set

1: Set

3: Set5: Set

16: Event

17: Get

19: Set

18: Set

16: Event

17: Get

16: Event

17: Get

19: Set19: Set

18: Set18: Set

12: Get10: Get14: Get

12: Get12: Get10: Get10: Get14: Get14: Get

7: Event

8: Event

9: Event

7: Event

8: Event

9: Event

8: Event

9: Event

6: Event4: Event2: Event 6: Event6: Event4: Event4: Event2: Event2: Event 15: Get13: Get

11: Get 15: Get15: Get13: Get13: Get

11: Get11: Get

AA

A

A

AAA

AA

A

A

AAA

From February Avionics Case Study Presentation

From February Avionics Case Study Presentation

•Eager vs lazy evaluation•Possibly modal generation of events•Possibly modal triggering of actions based on consumed events

Page 16: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 16

Internal Component Aspects (cont)Internal Component Aspects (cont)

• State Management–Externalization/Internalization of component

state–Replication

• Updating Distributed Proxies• Control: typically handled by events• Data: specification of state to be replicated, either

– Statically at initialization time– Dynamically at run-time

–Persistence• Saving non-volatile state• Control: triggering persistence saves• Data: currently statically defined only

Define AspectsProcess-Related Challenge Problems

Page 17: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 17

Internal Component Aspects (cont)Internal Component Aspects (cont)

• State Management (cont)–Logging

• Saving dynamic data to flight recorder• Control: possibly down-sampled version of events• Data: typically static definition of saved state

• Error Management–Error conditions which are anticipated either

during system test or during actual system operation• E.g., Pre- or Post-condition checking

Process-Related Challenge Problems Define Aspects

Page 18: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 18

Internal Component Aspects (cont)Internal Component Aspects (cont)

• Concurrency Control Patterns–No Locking

• For single threaded components

–Internal Locking• To avoid read/write collisions• Each public method contains an internal guard

–External Locking• To provide coherency across multiple accesses• Locking methods are publicly available

–Synchronization Proxy• Provides multiple access coherency without

external locks• Proxy created for each client thread

Define AspectsProcess-Related Challenge Problems

Page 19: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 19

External Component AspectsExternal Component Aspects

• Event Dependencies, Configuration, and Scheduling

Define Aspects

• Filtering–Provides for type

and supplier selection

• Correlation–Provides for

complex dependencies

• Dispatch–Provides support

for multiple priorities

S u b sc rip tio n& F ilte rin g

E v e n tC o r re la tio n

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s u m e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e v e n t)

C o n s u m e rPr o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

D isp a tc h in g

T im e r

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

A

A

A A

A

Process-Related Challenge Problems

Page 20: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 20

External Component Aspects (cont)

External Component Aspects (cont)

• Event Dependencies, Configuration, and Scheduling (cont)

Full Channel•Full Scheduling and Dispatching

•Distributed InterfacesS u b sc rip tion& F ilte rin g

E v e n tC o r re la tio n

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s um e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

D isp a tc h in g

T im e r

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

Full Channel•Full Scheduling and Dispatching

•Distributed InterfacesS u b sc rip tion& F ilte rin g

E v e n tC o r re la tio n

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s um e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

D isp a tc h in g

T im e r

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

S u b sc rip tion& F ilte rin g

E v e n tC o r re la tio n

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s um e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

D isp a tc h in g

T im e r

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

0 1 2 3 4

M T D isp a tc h in g M o d u le

D isp a tc h e r

R u n -T im eS c h e d u le r

1 : p us h ( ev en t,c o ns um e r)

2: en qu eu e ( ev e nt,co n su m er)

3 : d eq u eu e ( ev en t,c on su m er )

co n su m er )4: p u sh (ev e nt ,

S u b sc rip tio n& F ilte rin g

E v e n tC o r re la tion

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s u m e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

EFD•Event Correlation•Multiple Suppliers and Consumers

S u b sc rip tio n& F ilte rin g

E v e n tC o r re la tion

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s u m e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

EFD•Event Correlation•Multiple Suppliers and Consumers

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s u m e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

ERM•Anonymous Supplier and

Consumers•Requires Collocation and Priority

E V E N TC H A N N E L

C o n s u m e rC o n s u m e r

C o n s u m e r

S u p p lie r S u p p lie rS u p p lie r

p u sh (e v e n t)

p u s h (e ve n t)

C o n s u m e rP r o x ies

S u p p lie rP ro x ie s

E v e n tF lo w

ERM•Anonymous Supplier and

Consumers•Requires Collocation and Priority

Process-Related Challenge Problems Define Aspects

Page 21: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 21

External Component Aspects (cont)

External Component Aspects (cont)

• Fault Tolerance–Currently handled by coarse predefined

modes configured during initialization time–Activated at run-time by mode switch within

Event Service–Cross-cuts issues of distribution,

schedulability, state management, etc

• Distribution Allocation–Configured during initialization by

instantiation of masters and distributed proxies

Process-Related Challenge Problems Define Aspects

Page 22: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 22

External Component Aspects (cont)

External Component Aspects (cont)

• Lock Configuration–Each component contains a lock–Based on product specific configuration,

actual locks which are created during initialization may be null, mutex, recursive mutex, etc

Process-Related Challenge Problems Define Aspects

Page 23: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 23

Internal Service AspectsInternal Service Aspects

• ORB and Event Service Configuration–Number of threads–Event queue sizes

• OS Wrapper (ACE) Configuration–OS type macros

• Network Protocols

Define AspectsProcess-Related Challenge Problems

Page 24: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 24

External Service AspectsExternal Service Aspects

• OS Threads and Priorities–Do we need to deal with these separately

from Internal Service Aspects?

Define AspectsProcess-Related Challenge Problems

Page 25: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 25

SRI

Interest In Proposed AspectsInterest In Proposed AspectsCornell GIT KS

UU

BCOGIBoeing

LSJU

Define AspectsProcess-Related Challenge Problems

Event cons/suppliers

Execution pattern

State management

Concurrency control

Error management

Event depend/config

Scheduling

Fault tolerance

Lock configuration

Distribution allocation

Number of threads

Event queue sizes

OS adapters

Network protocols

Thread priorities

CMU

Kestrel MIT VU WUBB

N

Preview of Experimentation Planning Discussion

Preview of Experimentation Planning Discussion

Page 26: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 26

Specify AspectsSpecify Aspects

• What Unique Capabilities Apply To Writing Aspects?–Model-based?

• KSU– Global invariant specifications for synchronization– Includes code generation to be woven with functional

code– Regions, not just points

–Language-based?• UBC

– AspectC, coming later– Java based reverse engineering, modification, then

forward engineering of aspects

Process-Related Challenge Problems

Page 27: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 27

Specify Aspect MappingSpecify Aspect Mapping

• What Approaches Are Proposed For Mapping Aspects?–Model-based?–Language-based?

Process-Related Challenge Problems

Internal Aspect Configuration

Page 28: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 28

Specify ConfigurationSpecify Configuration

• What Approaches Are Proposed For Specifying Configurations?–Model-based?

• MoBIES

–Language-based?

Process-Related Challenge Problems

External Aspect Configuration

Page 29: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 29

AnalysisAnalysis

• What Analyses Are Proposed?–Aspect correctness–Recommended aspect mappings–Event analysis–Timing and schedulability–Property assurance–Data flow analysis

Process-Related Challenge Problems

Page 30: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 30

Development ScenariosDevelopment Scenarios• Development Scenarios Capture End-To-End Process

Flows

Process-Related Challenge Problems

Weave Aspects

Specify Aspects

Specify Aspect Mapping

Specify Configuration

Timing Analysis

Model-Based Language-Based

Data Flow AnalysisProperty

AssuranceEvt Correlation

Analysis

VU

VU

VU

VU

Java

UBC

UBC

UBC

Boeing

Preview of Experimentation Planning Discussion

Preview of Experimentation Planning Discussion

Page 31: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 31

Product-Related

Challenge Problems

Page 32: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 32

Product ChallengesProduct Challenges

Radar

Weapons

Nav Sensors

WeaponManagement

Data Links

Many Computers

Many Computers

Multiple BusesMultiple Buses

Constrained Tactical LinksConstrained

Tactical Links

O(106) Lines of Code

O(106) Lines of CodeHard & Soft

Real-TimeHard & Soft Real-Time

Periodic & Aperiodic

Periodic & Aperiodic

Multiple Safety Criticalities

Multiple Safety Criticalities

Information Security

Information Security

PCES Focus

Domain

MissionComputer

VehicleMgmt

COTSCOTS

Page 33: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 33

PCES Component ModelPCES Component Model

• Evolved Component Model Based On CORBA Component Model (CCM)–Multiple APIs separated into different facets–Event consumers represented by first-class

“event sink” concept–Equivalent interfaces, homes, common base

classes, etc

• … Tailored And Extended For Real-Time QoS-Enabled Applications

• … Collaboratively with BBN OEP

Application Challenges

Page 34: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 34

Application Component Library

Application Component Library

• Current Application Components Based on Bold Stroke Component Model– Desire to align with CCM

• In future, move to RT Java

– Scale motivates automated methods (O(103) components)

• Semantic Designs’ Design Maintenance System (DMS) Software Reengineering Toolkit To Be Investigated As Translator– Designed for large scale automated source reengineering– Based on program transformation technology

• Capable of processing ANSI C++, Java, many others

• Initial Effort Is Proof of Concept Demonstration• Goal Is Rich Set Of Production Fidelity Application

Components for PCES Demonstrations

Application Challenges

Page 35: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 35

Middleware and Service Challenges

Middleware and Service Challenges

• Enhancing support for “external component” aspects–Event service–Event service correlation–Synchronization–Persistence–Resource management

• CPU, memory, network• Locally and/or globally

–Fault tolerance–CCM services

Page 36: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 36

Product TechnologiesProduct Technologies• Product Technology Development Activities

Product-Related Challenge Problems

Event Correlation

Synchronization

Persistence

Resource Mgmt

Fault Tolerance

CCM Services

SRICornell GIT KS

UU

BCOGIBoeing

LSJU

CMU

Kestrel MIT VU WUBB

N

Preview of Experimentation Planning Discussion

Preview of Experimentation Planning Discussion

Boeing

Event Service WU

In Java

KSU

Page 37: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 37

OEP OverviewOEP Overview

Page 38: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 38

What is the OEP?What is the OEP?• A Software Platform Designed To:

– Enhance ability to develop and test reusable distributed real-time embedded software

– Provide research platform to facilitate transitionable and integratable PCES research

• Features:– Open run-time framework including middleware

services and API– Representative Avionics Mission Processing

domain application components– Set of representative Product Scenarios

Page 39: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 39

Model

InfrastructureServices

Operator

Configurator

Building Blocks

Real World Model

Avionics Interfaces

Dependencies

View Controller CommandsDisplaySurfaces

DisplayFormats

Cockpits

MissilesBallisticWeapons

SteeringAirframeEarthModel

GroundPoints

StateMachines

Distributors

Radar INS GPS

ORBServices

EventService

NameService

ReplicationService

PersistenceService

SchedulerService

I/OService

TimeService

SystemConfigurator

LayerConfigurator

Component-Based Architecture With 103 ComponentsCORBA and COTS RTOS-Based Middleware

Component-Based Architecture With 103 ComponentsCORBA and COTS RTOS-Based Middleware

Bold Stroke Logical Architecture Overview

Bold Stroke Logical Architecture Overview

Page 40: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 40

OEP Logical Architecture Overview

OEP Logical Architecture Overview

Model

InfrastructureServices

Operator

Configurator

Building Blocks

Real World Model

Avionics Interfaces

Dependencies

ORBServices

EventService

NameService

ReplicationService

PersistenceService

SchedulerService

TimeService

SystemConfigurator

LayerConfigurator

BM__ModeSourceComponent

BM__PushDataSourceComponent

BM__LazyActiveComponent

BM__ModalComponent

BM__OpenEDComponent

BM__ClosedEDComponent

BM__DisplayComponent

BM__PassiveComponent

BM_DeviceComponent

PCES OEP To Leverage MoBIES OEPPCES OEP To Leverage MoBIES OEP

Page 41: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 41

Configurator

Model /Operator

InfrastructureServices

Infrastructure ServicesInfrastructure Services

OEP Wrapper Facade Layer

Concurrency Utilities

Event Service Utilities

Persistence Utilities

Configuration Utilities

ORB UtilitiesReplication

Utilities

OS (VxWorks, Windows NT, Linux, ... )Adaptive Communication Environment (ACE)

The ACE ORB (TAO)

Real-Time Adaptive Resource Management (RTARM)

Common Services

Global Synch

Naming Service

Timer Service

Trading Service

Replication Service

Error Service

Scheduler Service

Persistence ServiceTime Service

Application

Configurator

Page 42: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 42

Multi-LevelControl

Mission Computing-

PCES FocusApplication Domain

OEP DecompositionOEP Decomposition

MC__Experiments

CMC

COFP

CMLC

MLC__Experiments

Page 43: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 43

CORBA Component Model Concepts

CORBA Component Model Concepts

ComponentEquivalentInterface

GetFacet()

<<Interface>>

Facet1

GetData()

<<Interface>>

Facet2

PointAt()

<<Interface>>

EventSource

Push()

<<Interface>>EventSink

Push()

<<Interface>>

EventSourceAdapter

EventSinkAdapter

Component

Receptacle

Connect()

<<Interface>>

Page 44: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 44

Event Supplier

Acts as a root event/data source for the system.

Is usually timer driven.

Event SupplierEvent Consumer

It is responsible for updating its own state and is not modifiable by a client (Closed).

Event Consumer

Acts as sink for data and control. Data it retrieves is output to the screen.

BM__DeviceComponent

BM__ClosedEDComponent

BM__DisplayComponent

Generic Component Descriptions

Generic Component Descriptions

Page 45: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 45

BM__ModalComponent

BM__DeviceComponent

BM__LazyActiveComponent

BM__DisplayComponent BM__ClosedEDComponent

Event ConsumerEvent Supplier

Conforms to Lazy Active execution pattern

Event ConsumerEvent Supplier

Changes modes activated by a push or client method call.

Mode change results in a change of supplied event.

BM__PassiveComponent

Generic Component Descriptions (cont’d)Generic Component Descriptions (cont’d)

Event Supplier

Page 46: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 46

Product ScenariosProduct Scenarios• Provide Defined Representative

Component Compositions and Interactions

• PS 1.x: basic single processor– 1.1: minimum components, single-threaded

– 1.2: additional components, multi-threaded

– 1.3: modal execution, single-threaded

• PS 2.x: representative single processor• PS 3.x: basic distributed processing

– 3.1: minimum components, single-threaded (priority)

– 3.2: additional components, multi-threaded (priorities)

• PS 4.x: representative distributed processing

PS 4.x

PS 1.xBasic

PS 2.xRepresentative

PS 3.x

Multi-procUni-proc

PCES Will Extend Product Scenario Set

PCES Will Extend Product Scenario Set

Page 47: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 47

Product Scenario #1.1Product Scenario #1.1

• Simplest Single Processor Scenario–“Hello, World”

gps : BM__ClosedEDComponentHomeImpl

display : BM__DeviceComponentHomeImpl

airframe : BM__DeviceComponentHomeImpl

Timer

GetData1()

GetData1()

Push()

Update()

Update()

Push()

Push()

DATA_AVAILABLE

TIMEOUT40HZ

Page 48: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 48

Product Scenario #3.1Product Scenario #3.1

• Simplest Distributed Processor Scenario

way point : BM__OpenEDComponent

way pointProxy : BM__OpenEDComponent

f ltPlanDisplay : BM__Display Component

pilotControl : BM__PushDataSourceComponentImpl

inf rastructure

Represents line of distribution

2. SetData()

6. InternalizeState()

7. SetStateUpdated()

1. SetData()

8. Push()

DATA_AVAILABLE9. GetData()

3. SetData()

5. ExternalizeState()

4. Push()

DATA_AVAILABLE

Page 49: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 49

Product Scenario #1.3 (20Hz)Product Scenario #1.3 (20Hz)

• Mid-Level Single Processor Scenario

Page 50: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 50

Product Scenario #1.3 (1Hz)Product Scenario #1.3 (1Hz)

Page 51: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 51

OEP ConfigurationOEP Configuration

XML is Transformed into a Set of C++ Arrays of Enum/Integer Constants to be Compiled into BuildXML is Transformed into a Set of C++ Arrays of

Enum/Integer Constants to be Compiled into Build

: C omponentFactory1

iterator : UM_ _ DepthFirs tI terator

: C omponentHome1

1. NextNode()

2. GetNodeName

3. GetNodeValue

5. NextNode()

6. GetNodeName

7. NextNode()

4. CreateAndI nit

Arrays are Traversed at Initialization TimeArrays are Traversed at Initialization Time

C MC _ _ C omponentC onfigurator

ComponentFactory1

C omponentFactory2

ComponentFactory3

ComponentHome1

C MC _ C onfigurationData

ComponentHome2

ComponentHome3

... . ..

U M_ _ DepthFirs tI terator

XMLProcessorOEP ConfigurationXML

DOM Parser

Page 52: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 52

XML Top Level StructureXML Top Level Structure<CONFIGURATION>

<PROCESSOR> <…><CONFIGURATION_PASS>

<HOME><HOME_TYPE>BM__DEVICE_COMPONENT</HOME_TYPE><ID>

<…></ID><COMPONENT>

<…></COMPONENT><COMPONENT>

<…></COMPONENT>

</HOME><HOME>

<…></HOME>

</CONFIGURATION_PASS><CONFIGURATION_PASS>

<…></CONFIGURATION_PASS>

</PROCESSOR><PROCESSOR>

<…></PROCESSOR>

</CONFIGURATION>

Delineates configuration for each processorDelineates configuration for each processorAllows for multiple pass

initializationAllows for multiple pass

initializationLifetime manager/locator for each

Component typeLifetime manager/locator for each

Component type

Unique Id for the homeUnique Id for the home

Component instantiation/configuration Component instantiation/configuration

Page 53: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 53

XML Component StructureXML Component Structure<CONFIGURATION_PASS>

<HOME> <…> <COMPONENT>

<ID> <…></ID><EVENT_SUPPLIER>

<…events this component supplies…></EVENT_SUPPLIER><EVENT_CONSUMER>

<…events this component consumes…></EVENT_CONSUMER>

</COMPONENT></HOME>

</CONFIGURATION_PASS><CONFIGURATION_PASS>

<HOME> <…><COMPONENT>

<ID> <…></ID><RECEPTACLE>

<…id of component plugging into this receptacle></RECEPTACLE><DISTRIBUTION>

<…distributed write/read configuration data></DISTRIBUTION>

Components must exist at this time(must be in second pass)

Components must exist at this time(must be in second pass)

Unique Id for this componentUnique Id for this component

Causes connection between masterAnd proxy to be made

Causes connection between masterAnd proxy to be made

Page 54: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 54

Download / InstallationDownload / InstallationMoBIES Web Site S/W Distribution Page:Select OEP B1.3

Double-Click to Run Setup

Page 55: PCES PI 0ct 2001 - 1 Boeing Open Experimental Platform Boeing Phantom Works St. Louis, Missouri Dave Sharp david.sharp@boeing.com Brian Mendel brian.r.mendel@boeing.com

PCES PI 0ct 2001 - 55

Additional InformationAdditional Information

Installation Instructions

Build / Setup Instructions