UNCLASSIFIED
i
SOFTWARE COMMUNICATIONS ARCHITECTURE
SPECIFICATION
20 August 2015
Version: 4.1
Prepared by:
Joint Tactical Networking Center (JTNC)
33000 Nixie Way
San Diego, CA 92147-5110
Distribution Statement A - Approved for public release; distribution is unlimited (27 August 2015)
UNCLASSIFIED
SCA Specification Version: 4.1
20 August 2015
Distribution Statement on the Cover Page apply to all pages of this document. ii
REVISION SUMMARY
Version
Revision Description
Date
Next <Draft>
Initial Draft Release
30 November 2010
Next <Draft>
1.0.0.1
Applied SCA Next Errata Sheet v1.0
09 March 2011
Next <Draft>
1.0.0.2
Applied SCA Next Errata Sheet v2.0
14 September 2011
Candidate
Release
Initial Release
27 December 2011
4.0
ICWG Approved Release
28 February 2012
4.0.1
Incorporated transition to JTNC and applied SCA 4.0
Errata Sheet v1.0
01 October 2012
4.1<DRAFT>
Naming Proposal Changes, Backwards Compatibility
Changes, Scalable Components Changes,
ScalableManagerChanges
31 December 2014
4.1
New :Process Collocation and Core Affinity
Deployment Enhancement,
Changes: Domain Late Registration, Allocation
Properties, Domain Component Type Uniformity,
Deployment Data, DomainManager and
DeviceManager Instance Level Property Value,
Clarification and Consistency edits
ICWG Approved
20 August 2015
UNCLASSIFIED
SCA Specification Version: 4.1
20 August 2015
Distribution Statement on the Cover Page apply to all pages of this document. iii
TABLE OF CONTENTS
1 INTRODUCTION.....................................................................................................................11
1.1 Scope........................................................................................................................................11
1.2 Document Conventions and Terminology ...........................................................................11
1.2.1 File and Directory Nomenclature ......................................................................................11
1.2.2 Requirements Language ....................................................................................................11
1.2.3 Core Framework Interface, Component and Operation Identification .............................12
1.3 Document Content .................................................................................................................12
1.4 Normative References ............................................................................................................13
1.5 Informative References .........................................................................................................13
2 OVERVIEW ..............................................................................................................................14
2.1 Architecture Definition Methodology ..................................................................................14
2.1.1 Component and Interface Definitions ...............................................................................15
2.1.2 Component Implementation..............................................................................................15
2.2 Architecture Overview ..........................................................................................................16
2.2.1 System Architecture ..........................................................................................................16
2.2.2 Application Architecture ...................................................................................................19
2.2.2.1 Reference Model ........................................................................................................20
2.2.3 Platform Devices and Services Architecture ....................................................................21
2.2.4 Core Framework Control Architecture .............................................................................22
2.2.5 Structure ............................................................................................................................22
2.2.6 Domain Profile ..................................................................................................................23
3 SCA PLATFORM INDEPENDENT MODEL (PIM) ...........................................................25
3.1 Operating Environment ........................................................................................................25
3.1.1 Operating System ..............................................................................................................26
3.1.2 Transfer Mechanism & Services .......................................................................................26
3.1.2.1 Log Service ................................................................................................................26
3.1.2.2 Event Service and Standard Events ...........................................................................27
3.1.2.2.1 Event Service ......................................................................................................27
3.1.2.2.2 StandardEvent Module........................................................................................27
3.1.2.2.3 Types ...................................................................................................................27
3.1.2.2.3.1 StateChangeCategoryType ..................................................................................................... 27
3.1.2.2.3.2 StateChangeType .................................................................................................................... 27
UNCLASSIFIED
SCA Specification Version: 4.1
20 August 2015
Distribution Statement on the Cover Page apply to all pages of this document. iv
3.1.2.2.3.3 StateChangeEventType ........................................................................................................... 28
3.1.2.2.3.4 ComponentChangeType ......................................................................................................... 28
3.1.2.2.3.5 ComponentChangeEventType ................................................................................................ 28
3.1.2.3 Additional Services ....................................................................................................28
3.1.3 Core Framework ...............................................................................................................29
3.1.3.1 Common Elements .....................................................................................................30
3.1.3.1.1 Interfaces .............................................................................................................30
3.1.3.1.1.1 ComponentFactory ................................................................................................................. 30
3.1.3.1.2 Components ........................................................................................................32
3.1.3.1.2.1 BaseComponent ...................................................................................................................... 32
3.1.3.1.2.2 BaseFactoryComponent .......................................................................................................... 34
3.1.3.1.3 Core Framework Base Types ..............................................................................35
3.1.3.1.3.1 DataType ................................................................................................................................ 35
3.1.3.1.3.2 ObjectSequence ...................................................................................................................... 35
3.1.3.1.3.3 FileException .......................................................................................................................... 35
3.1.3.1.3.4 InvalidFileName ..................................................................................................................... 36
3.1.3.1.3.5 InvalidObjectReference .......................................................................................................... 36
3.1.3.1.3.6 InvalidProfile .......................................................................................................................... 36
3.1.3.1.3.7 OctetSequence ........................................................................................................................ 36
3.1.3.1.3.8 Properties ................................................................................................................................ 36
3.1.3.1.3.9 StringSequence ....................................................................................................................... 36
3.1.3.1.3.10 UnknownProperties .............................................................................................................. 36
3.1.3.1.3.11 DeviceAssignmentType ........................................................................................................ 36
3.1.3.1.3.12 DeviceAssignmentSequence ................................................................................................. 36
3.1.3.1.3.13 ErrorNumberType................................................................................................................. 37
3.1.3.1.3.14 PortAccessType .................................................................................................................... 37
3.1.3.1.3.15 Ports ...................................................................................................................................... 37
3.1.3.1.3.16 ComponentEnumType .......................................................................................................... 37
3.1.3.1.3.17 ComponentType ................................................................................................................... 38
3.1.3.1.3.18 Components .......................................................................................................................... 39
3.1.3.1.3.19 InvalidState ........................................................................................................................... 39
3.1.3.1.3.20 PropertyActionType ............................................................................................................. 39
3.1.3.1.3.21 PropertyType ........................................................................................................................ 39
3.1.3.1.3.22 AllocationPropertyType ....................................................................................................... 40
3.1.3.1.3.23 AllocationProperties ............................................................................................................. 40
3.1.3.1.3.24 ManagerInfo ......................................................................................................................... 40
3.1.3.1.3.25 SpecializedInfo Identifiers .................................................................................................... 41
3.1.3.1.3.26 UsesDeviceAssignmentType ................................................................................................ 41
3.1.3.1.3.27 UsesDeviceAssignmentSeq .................................................................................................. 41
3.1.3.2 Base Application ........................................................................................................42
3.1.3.2.1 Interfaces .............................................................................................................42
UNCLASSIFIED
SCA Specification Version: 4.1
20 August 2015
Distribution Statement on the Cover Page apply to all pages of this document. v
3.1.3.2.1.1 ComponentIdentifier ............................................................................................................... 42
3.1.3.2.1.2 PortAccessor ........................................................................................................................... 42
3.1.3.2.1.3 LifeCycle ................................................................................................................................ 46
3.1.3.2.1.4 TestableInterface .................................................................................................................... 47
3.1.3.2.1.5 PropertySet ............................................................................................................................. 49
3.1.3.2.1.6 ControllableInterface .............................................................................................................. 50
3.1.3.2.2 Components ........................................................................................................52
3.1.3.2.2.1 ApplicationComponent ........................................................................................................... 52
3.1.3.2.2.2 ManageableApplicationComponent ....................................................................................... 53
3.1.3.2.2.3 ApplicationControllerComponent .......................................................................................... 54
3.1.3.2.2.4 ApplicationComponentFactoryComponent ............................................................................ 55
3.1.3.2.2.5 AssemblyComponent .............................................................................................................. 55
3.1.3.3 Framework Control ....................................................................................................56
3.1.3.3.1 Interfaces .............................................................................................................56
3.1.3.3.1.1 ApplicationManager ............................................................................................................... 57
3.1.3.3.1.2 DeploymentAttributes ............................................................................................................. 61
3.1.3.3.1.3 ApplicationFactory ................................................................................................................. 62
3.1.3.3.1.4 DomainManager ..................................................................................................................... 66
3.1.3.3.1.5 DomainInstallation ................................................................................................................. 67
3.1.3.3.1.6 ComponentRegistry ................................................................................................................ 70
3.1.3.3.1.7 FullComponentRegistry .......................................................................................................... 71
3.1.3.3.1.8 EventChannelRegistry ............................................................................................................ 73
3.1.3.3.1.9 ReleasableManager ................................................................................................................. 75
3.1.3.3.2 Components ........................................................................................................76
3.1.3.3.2.1 ApplicationManagerComponent ............................................................................................. 76
3.1.3.3.2.2 ApplicationFactoryComponent ............................................................................................... 78
3.1.3.3.2.3 DomainManagerComponent ................................................................................................... 83
3.1.3.3.2.4 DeviceManagerComponent .................................................................................................... 87
3.1.3.4 Base Device ...............................................................................................................93
3.1.3.4.1 Interfaces .............................................................................................................93
3.1.3.4.1.1 AdministratableInterface ........................................................................................................ 93
3.1.3.4.1.2 CapacityManagement ............................................................................................................. 94
3.1.3.4.1.3 DeviceAttributes ..................................................................................................................... 97
3.1.3.4.1.4 AggregateDeviceAttributes .................................................................................................... 98
3.1.3.4.1.5 LoadableInterface ................................................................................................................... 98
3.1.3.4.1.6 ExecutableInterface .............................................................................................................. 100
3.1.3.4.1.7 AggregateDevice .................................................................................................................. 104
3.1.3.4.2 Components ......................................................................................................106
3.1.3.4.2.1 DeviceComponent ................................................................................................................ 106
3.1.3.4.2.2 LoadableDeviceComponent.................................................................................................. 111
3.1.3.4.2.3 ExecutableDeviceComponent ............................................................................................... 112