model-based integration of reusable component-based avionics systems

26
RTAS MDES Workshop May 2003 - 1 Model-Based Integration of Reusable Component-Based Avionics Systems David Sharp Technical Fellow Phantom Works, Open System Architecture [email protected] 27 May 2003 This work was sponsored by the DARPA/ITO Model-Based Integration of Embedded Software program, under contract F33615-00-C-1704 with Air Force Research Laboratory Information Directorate, Wright-Patterson Air Force Base.

Upload: sereno

Post on 13-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Model-Based Integration of Reusable Component-Based Avionics Systems. David Sharp Technical Fellow Phantom Works, Open System Architecture [email protected] 27 May 2003. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 1

Model-Based Integration of Reusable Component-Based

Avionics Systems

Model-Based Integration of Reusable Component-Based

Avionics Systems

David Sharp

Technical Fellow

Phantom Works, Open System Architecture

[email protected]

27 May 2003

This work was sponsored by the DARPA/ITO Model-Based Integration of Embedded Software program, under contract F33615-00-C-1704 with Air Force Research Laboratory Information Directorate, Wright-

Patterson Air Force Base.

Page 2: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 2

Boeing Bold Stroke InitiativeBoeing Bold Stroke Initiative

Object-Oriented Reusable ApplicationFramework

Architecture Specific Service Software• Configurable to variable hardware configurations• Supportive of reusable applications

Commercial and Standards-BasedPlatform

• COTS-based real-time middleware servicesStandard Service Software

Product LineComponent Model

Single Component Development Policies• Configurable for Product Specific

Functionality and Execution Environment

Component Integration Model

• Configurable for Product Specific Component Selection and Distribution

EnvironmentComponent Integration Policies

Avionics Interfaces

Operator

Real World Model

Infrastructure Services

Hardware (CPU, Memory, I/O)Hardware (CPU, Memory, I/O)

Board Support PackageBoard Support Package

Operating SystemOperating System

Infrastructure ServicesInfrastructure Services

Creation of Highly Configurable Avionics Product Line Via OO

Framework Technologies

Creation of Highly Configurable Avionics Product Line Via OO

Framework Technologies

Page 3: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 3

Product Line DevelopmentProduct Line Development

HelperC las s

FacadeC las s

HelperC las s

C ommonC las sP rojec tC las s

P rojec tHelperC las s

HelperC las s

FacadeC las s

HelperC las s

C ommonC las sP rojec tC las s

P rojec tHelperC las s

HelperC las s

FacadeC las s

HelperC las s

C ommonC las sP rojec tC las s

P rojec tHelperC las s

HelperC las s

FacadeC las s

HelperC las s

C ommonC las sP rojec tC las s

P rojec tHelperC las s

Common

Project Specific

H elperC las s

FacadeC las s

H elperC las s

C ommonC las sP ro jec tC las s

P ro jec tH elperC las s

HelperC las s

FacadeC las s

H elperC las s

C ommonC las sRefC lass

RefHe lperC lass

Create common components

Configure for project deployment

P1 Configurator P2 Configurator

HelperClass

FacadeClass

HelperClass

CommonClassProjectClass

ProjectHelperClass

Class

HrClass

ass ojec

Projss

Class

HrClass

ass ojec

Projss

FunctionalFunctional SystemicSystemic

Extend common/create plugs for project specific req’ts

Create projectspecific components

ComponentsComponents IntegrationIntegration

Page 4: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 5

Model-Based Component Integration Approach

Model-Based Component Integration Approach

Focus Area

Build Test

ModelModel

Analyze

GenerateConfiguration Build Test

ModelComposition

ModelReusable

Components

Page 5: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 7

Process Related ViewsProcess Related Views

• Logical Fault Management– Operational and backup modes and components– Components that need replicated backups

• Execution Dependencies– Triggers and trigger types– Trigger based dependency graphs – Execution rates for the roots of dependencies

• Threads– Threads and their associated rates and priorities

ModelModel

Analyze

GenerateConfiguration

ModelComposition

Page 6: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 8

Deployment Related ViewsDeployment Related Views

• Physical Fault Management– Relationships between fault modes and physical resources

• Component Quality of Service– Execution rates– Importance– Resource requirements

• Process– System physical resources– Allocation of threads to processes

• Component Allocation– Components that are strongly coupled– Allocation of components to processors and processes– Parameters for automatic generation of integration code

• Identify and generate CORBA stubs and skeletons as needed

ModelModel

Analyze

GenerateConfiguration

ModelComposition

Page 7: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 9

Model-Based AnalysisModel-Based Analysis

• Execution Dependencies– Identifying cyclic dependencies– Ensuring consistency of dependency graphs– Using dependency graphs to identify execution

requirements for timing analysis

• Timing Analysis– Schedulability– Utilization

• Fault Tolerance– Determine status of components in various fault scenarios– Support allocation of backup components to processors to

meet fault-tolerance goals

Having models that capture cross-cutting aspects of a system is the basis for analysis

Having models that capture cross-cutting aspects of a system is the basis for analysis

ModelModel

Analyze

GenerateConfiguration

ModelComposition

Page 8: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 10

Model-Based ConfigurationModel-Based Configuration

• Automatic Generation of Configuration Code Based on Models Can Yield Increased Speed and Quality and Reduced Cost– Manual creation of integration code is time

consuming, tedious and error prone– Much integration code is fully determined by a

model of the system configuration– Tools already exist that generate much similar

code• CORBA IDL compilers, etc.

ModelModel

Analyze

GenerateConfiguration

ModelComposition

Infrastructure Services

Model

Operator

Configurator

Page 9: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 11

Inter-ViewTranslation

ConfigurationTranslation

GenerateConfiguration

GenerateConfiguration

AnalysisTranslation

InputTranslation

Resultant ProcessResultant Process

BuildBuild

TestTest

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

ModelComponents

ModelComponents

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

ModelImporterModel

Importer

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Instrumentation

Well Defined XML Interfaces Enable Tool

Integration

Well Defined XML Interfaces Enable Tool

Integration

Vanderbilt, CMU,

Honeywell, Southwest Research

Vanderbilt, CMU,

Honeywell, Southwest Research

Teknowledge, Vanderbilt

Teknowledge, Vanderbilt

U Michigan, Vanderbilt

U Michigan, Vanderbilt

InstrumentationInstrumentation

Page 10: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 12

Development Scenario Example Walkthrough

Development Scenario Example Walkthrough

Page 11: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 13

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 12: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 14

Component SpecificationComponent Specification

• Initial Design of Components Accomplished in Rational Rose– Stereotypes used to express components

Page 13: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 15

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 14: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 16

Exporting the Component data Exporting the Component data

• Scripts Export The Model Data And Filter Out All Non-Component Related Details

Page 15: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 17

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 16: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 18

Event/Invocation Dependency Subview Modeling

Event/Invocation Dependency Subview Modeling

Interaction models must be created in ESML to show the initiating timer object, instances of event types and component types and the connections between them.

Component instances are assigned a unique Group and Item Id.

Page 17: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 19

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 18: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 20

Threading/Process Subview Modeling

Threading/Process Subview Modeling

In the Configurations folder, definethe processors, then double click on them to define the threads and processes running on that processor.

Assign the priority and rate associated with each thread.

Page 19: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 21

Constraint CheckingConstraint Checking

• Static Errors Are Caught Either During Modeling Or Analysis

Page 20: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 22

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 21: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 23

AIRES Event Dependency Graphs (EDGs)

AIRES Event Dependency Graphs (EDGs)

• Graphs Are Created To Visualize Event Dependencies

Page 22: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 24

Scheduling AnalysisScheduling Analysis

• Utilization Is Shown for Each Processor, and Divided Among Tasks Running on the Processor

Page 23: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 25

Inter-ViewTranslation

GenerateConfiguration

GenerateConfiguration

Inpu

tT

rans

latio

n

MoBIES-Enabled ProcessMoBIES-Enabled Process

BuildBuild

TestTest

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

Con

figur

atio

nT

rans

latio

n

ThreadingThreading

EventDependency

EventDependency

InvocationDependencyInvocation

Dependency

ComponentThread Map.ComponentThread Map.

ProcessProcess

ComponentAllocation

ComponentAllocation

PhysicalFault Mgmt

PhysicalFault Mgmt

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTiming

LogicalFault Mgmt

LogicalFault Mgmt

VU:ESML

ModelComponents

ModelComponents

GME ImporterGME ImporterVU:

ESMLSWRI:

ASC-Scheduler

VU:rr2esml

Tek:MoBIES XML

Exporter

UM:AIRES

Tek:MoBIES

Translator

Application Component

Library (ACL)

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Ana

lysi

sT

rans

latio

n

Page 24: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 26

Configuration GenerationConfiguration Generation

• Interfaces Defined Via UML Meta-Models• XML Configuration Files Generated From

Models Via Scripts– ESML2Config MC__MediumSP.mga

Interface Model

Interface Model

OEP Configuration

File

OEP Configuration

File

Page 25: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 27

AccomplishmentsAccomplishments

• End-To-End Automated Model-Based Configuration– From UML Reusable Component Models to

Running Code

• Initial Set Of Real-Time Analyses

• Configuring Representative Avionics Systems Of Up To– ~20 Component Types– ~400 Component Instances– ~3 Processes / processors

• Using– Multiple tools with well-defined XML interfaces– Pervasive meta-modeling

Page 26: Model-Based Integration of Reusable Component-Based Avionics Systems

RTAS MDES Workshop May 2003 - 28

ImplementMware

ImplementMware

MiddlewareModeling

Application Modeling

ConfigurationTranslation

InputTranslation

Remaining ChallengesRemaining ChallengesAnalysis

Translation

BuildBuild

TestTest

FaultTolerance

FaultTolerance

EventDependencies

EventDependencies

TimingTimingModel ComponentImplementations

Model ComponentImplementations

Parse RoseParse Rose

Filter/TranslateTo XML

Filter/TranslateTo XML

ModelImporterModel

Importer

Analysis Interchange

Format (AIF)

OEP Configuration

Model Editor

Instrumentation

ComponentDesign

ComponentDesign

Design Generation

Design Generation

InstrumentationInstrumentation

ImplementComponentImplementComponent

GenerateMware Config

GenerateMware Config

Model MwareModel Mware

ThreadingThreading

PersistencePersistence

LogicalFault Mgmt

LogicalFault Mgmt

PhysicalFault Mgmt

PhysicalFault Mgmt

mware configaspect 1…

mware configaspect 1…

ActivationActivation

Event Dependency

Event Dependency

InvocationDependencyInvocation

DependencyComponentAllocation

ComponentAllocation

ProcessProcess

ComponentThread MapComponentThread Map

Appl Comp

Lib (ACL)

GenerateApp

Config

GenerateApp

Config

PIM PSM

Performance OptimizationPerformance Optimization

Round-Trip EngineeringRound-Trip Engineering

Scalability, Usability…Scalability, Usability…

Tool IntegrationTool Integration

Middleware ConfigurationMiddleware Configuration

StandardizationStandardization

Component-Oriented Design

Component-Oriented Design