Page 1
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 1
Complexity-Reducing
Design Patterns
for Cyber-Physical
Systems
SysML-AADL Model Translation
Page 2
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 2
Outline
• Project vision • Tool environment • Technologies
• System-level modeling and translation • Complexity-Reducing Architectural Patterns • Compositional verification
• Next steps
Page 3
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 3
Team
• Rockwell Collins / Advanced Technology Center • Darren Cofer, Steven Miller, Andrew Gacek • System modeling & analysis, tooling, integration
• UIUC • Lui Sha • Design pattern development
• University of MN • Michael Whalen • Pattern verification, compositional analysis
• WWTG • Chris Walter, Brian LaValley • Pattern implementation & analysis tools
Page 4
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 4
Vision
• Improve effectiveness and scalability of system design and verification through pre-verified design patterns and compositional reasoning
COMPUTING RESOURCE SENSOR
LRU
FAIL-SILENT NODE FROM
REPLICAS
COMPUTING RESOURCE A
COMPUTING RESOURCE B
VOTE MULTIPLE
DATA
SENSOR 1
SENSOR 2
SENSOR 3
VERIFIED AVAILABILITY
VERIFIED INTEGRITY ARCHITECTURE
MODEL
COMPOSITIONAL PROOF OF CORRECTNESS (ASSUME – GUARANTEE)
SAFETY, BEHAVIORAL, PERFORMANCE PROPERTIES
AB
STRA
CTIO
N
VERIFIC
ATION
R
EUSE
COMPOSITION
Page 5
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 5
PATTERN & COMP SPEC
LIBRARY
SYSTEM MODELING
ENVIRONMENT
INSTANTIATE ARCH PATTERNS & CHECK
CONSTRAINTS
COMPOSITIONAL REASONING &
ANALYSIS
SYSTEM MODEL (AADL)
AUTO GENERATE
SYSTEM IMPLEMENTATION
ARCH PATTERN MODELS
COMPONENT MODELS
ANNOTATE & VERIFY MODELS
COMPONENT LIBRARY
SPECIFICATION SYSTEM DEVELOPMENT FOUNDRY
Approach
Design Flow
Complexity-reducing design patterns • Capture best solutions to architectural
design problems • Reuse of formally verified solutions • Increase level of design abstraction 2
Compositional verification • Reason about system behavior based on
contracts and system design model structure
• Compositional approach scales to large software systems
3 System architecture modeling • Apply formal specification and analysis tools
to system-level design • Separate component specification and
implementation • Automated model translation 1
Page 6
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 6
Tool chain
AADL
SysML-AADL translation
EDICT: Architectural
patterns
Lute: Structural verification
AGREE: Compositional behavior
verification
OSATE: AADL modeling
Enterprise Architect
Eclipse
KIND
SysML
Lustre
Page 7
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 7
System architecture modeling
• We have been very successful at applying formal methods to software components produced in model-based development environments
• Gryphon translation framework • Objective
• Leverage this knowledge and apply formal methods to the system design process
• Issues • Modeling language and tools • Different models of computation • Scalability
SimulinkGateway
SimulinkGateway
Model Checkers:NuSMV, Prover, BAT, Kind, SAL
Theorem Provers: ACL2, PVS
Programming Languages:
SPARK (Ada), C
Page 8
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 8
System modeling and translation
• AADL is a good fit and provides sufficiently formal notation • Available tools do not provide stable graphical environment • OSATE: open source, Eclipse-based
• SysML is being adopted by many organizations for system design • But has no formal semantics • No common textual representation across tools
• Solution: Eclipse plugin that provides bidirectional translation • Based on Enterprise Architect SysML tool used by Rockwell Collins • Define block stereotypes that correspond to AADL objects
Page 9
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 9
Scale and composition
• Architectural model does not capture implementation details • Component descriptions, interfaces, interconnections
• Assume/guarantee contracts provide the information needed from other modeling domains to reason about system-level properties
• Guarantees correspond to the component requirements
• Assumptions correspond to the environmental constraints that were used in proving the component requirements
• Contract specifies precisely the information that is needed to reason about the component’s interaction with other parts of the system
• Supports hierarchical decomposition of verification process
• Contract can be applied to both components and design patterns • Mechanism for verification reuse
Page 10
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 10
Enterprise Architect Eclipse
Internal representation
class Translator Types
Piv otPackage
+ name :String
+ GetPath() :String+ GetRelativePath() :String
Piv otPart
+ facts :String+ name :String+ properties :Collection<String>
+ GetPath() :String+ GetRelativePath() :String
Piv otPort
+ properties :Collection<String>
+ GetPath() :String+ GetRelativePath() :String
Piv otConnection
+ name :String+ properties :Collection<String>
+ GetPath() :String+ GetRelativePath() :String
Piv otType
+ category :PivotCategory+ contract :String+ name :String+ properties :Collection<String>
+ GetPath() :String+ GetRelativePath() :String
Piv otPortType
+ direction :String+ feature :PivotFeature+ isConjugated :String+ name :String+ properties :Collection<String>
+ GetPath() :String+ GetRelativePath() :String
+parts 0..*
+parent 1
0..*
+name
1
+parent 1
+ports 0..*
+pkg 1
+types 0..*
+type
1
+impls
0..*
+ports 0..*
+parent 1
+parts 0..*
+pkg 1
+children 0..*
+parent 0..1
+connections 0..*
+parent 1
+in
0..*+dest
1
+out
0..*
+source
1
AADL SysML
Page 11
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 11
AADL components and features in SysML
SysML Block Stereotype AADL Component AADL_system System*
AADL_data Data AADL_process Process AADL_thread Thread
AADL_memory Memory AADL_bus Bus
AADL_device Device Not Supported Abstract Not Supported Thread Groups Not Supported Subprograms
* Default if SysML block is not stereotyped
SysML Port Stereotype AADL Feature AADL_port Port*
AADL_provides_data_access Provides Data Access AADL_requires_data_access Requires Data Access AADL_provides_bus_access Provides Bus Access AADL_requires_bus_access Requires Bus Access
Not Supported Port Groups * Default if SysML port is not stereotyped
Page 12
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 12
Defining AADL stereotypes in EA
Page 13
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 13
Contracts in SysML
• Contracts describe behavior of components and design patterns in system design
• Used for formal verification of system requirements and checking design validity
• Currently expressed in PSL • Implemented in AADL as
string property and processed separately
• Implemented in SysML as constraint referencing a text file
Page 14
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 14
Initial Avionics System
Page 15
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 15
Final Avionics System (after pattern transformations)
Page 16
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 16
Verification tools Lute AGREE Counterexample
Page 17
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 17
Next steps
• Extend compositional verification to more complex models of computation
• Multiple rates, delays, asynchrony • Incorporate additional design patterns in library
• Especially fault tolerance patterns with existing verification artifacts
• Improved annotation of contracts in architecture models
• AADL annex? Alternate representations (e.g., sequence diagrams?)
• More general mechanism for composing evidence from multiple sources
• Evidence graph, assurance case
Page 18
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 18
System architecture design and verification environmentprovides correct-by-construction system synthesis
COMPONENT LIBRARY
IMPORT COMPONENT
MODELS & CONTRACTS
SYSTEM MODELING
ENVIRONMENT
MULTI-DOMAIN COMPOSITIONAL
REASONING & ANALYSIS
SYSTEM MODEL
FOUNDRY CONFIG
ANNOTATE & VERIFY MODELS
CONTEXTLIBRARY
HETEROGENEOUS COMPONENT MODELS
WITH FORMAL CONTRACTSSYSTEM ARCHITECTURE REFERENCE MODEL
FOR INTEGRATION / ANALYSISiFAB FOUNDRY WITH
MANUFACTURING CONSTRAINTS
ARCHPATTERNLIBRARY
SYSTEMIMPLEMENTATION
CONSTRAINTS
LS
PALS Rep
Platform
synchronouscommunication
one nodeoperational
timingconstraints
notco-located
AvionicsSystem
leader transitionbounded
ASSUMPTIONS
GUARANTEES
RT sched& latency
Errormodel
Behavior
Structure
Resource Probabilistic
Model Translation
Transformation
Compositional Verification
REQUIREMENTUnder single-fault assumption, GC output transient response is bounded in time and magnitude
Initial System Design• Provides basic control
system functionality• Automatic translatioin
between SysML and AADL design environments
• No fault-tolerance: A single failure causes violation of system requirements
SysML AADL
Architectural Design Patterns• Patterns provide
verification reuse• Transformed model
includes REPLICATION, PALS, LEADER SELECT, VOTING
Lute property checker
KIND model checker
Requirement counterexample
Contract-based Reasoning• Basis for scalability• Assume/guarantee contracts
provide the information from components needed to reason about system-level properties• Pattern contracts inserted
automatically• Component contracts come
from component library
META Design Flow
Page 19
Global Product Data Interoperability Summit | 2012
BOEING is a trademark of Boeing Management Company Copyright © 2012 Boeing. All rights reserved.
Copyright © 2012 Northrop Grumman Corporation. All rights reserved. GPDIS_2012.ppt | 19
Contact
Darren Cofer Advanced Technology Center Rockwell Collins [email protected] 319-263-3571 Gregory Pollari Advanced Manufacturing Technology Rockwell Collins [email protected] 319-295-1629