|
Government
Raytheon
Contact:
John F. Masiyowski
Raytheon, Strategic Systems Division
7700 Arlington Blvd., Mail Stop N204
Falls Church, VA 22042-2900
jmasiyowski@raytheon.com
Tools Used: Object-Oriented
(O-O) concepts and principles, C++, ACE/TAO, CORBA ®
Go to Figure presentation
Problem:
For the last thirty plus years, the Remote Systems Business Unit at the
Strategic Systems Division of Raytheon located in Falls Church, Va., has
been designing, developing and maintaining complex Real-time distributed
Command, Control, Computer, Communications and Intelligence (C4I)
systems in the Signals Intelligence (SIGINT) applications domain. The
current generation system is an integral part of the Contingency
Airborne Reconnaissance System (CARS).
After a series of upgrades over the years the C4I systems (reference
Figure 1) needed a mechanism to facilitate the exchange of information
between system nodes. This mechanism needed to be simple, transparent,
reliable and available on a variety of platforms. In previous systems, a
variety of techniques were utilized to provide this information
exchange. These techniques evolved just as the system evolved. These
methods ranged from simple serial communications links to network
messages via TCP/IP. The previous system generation utilized a
customized abstraction layer (or Applications Program Interface - API)
on top of the network sockets API provided by most Operating Systems.
This custom API, (called Common Software CSW, reference Figure 2) was
created in part because no industry standard means of exchanging
information between network nodes existed at that time (reference Figure
3). For a long time afterwards and many generations and off shoots of
these systems, CSW provided an excellent means of information exchange
between networked applications.
Over time, CSW was ported to a variety of hardware (computers and
microprocessors) and software (operating systems and programming
languages) environments. However, a significant amount of resources were
needed in order to port CSW. CSW was also becoming limited because it
was closely coupled to the C programming language. More importantly, CSW
was not based upon any industry standard and the future direction of the
system evolution was becoming increasingly clear. The future direction
of the system was in part of adhering to industry standards such as the
Defense Information Infrastructure Common Operating Environment (DII
COE). Another future direction of the system was that system
interoperability and operations expand beyond a single system isolated
on a Local Area Network (LAN) to groups of interconnected systems
connected via Wide Area Networks (WANs). New means of information
exchange between components of these systems were going to be needed and
sooner than expected. In May of 1996, the system was due for a major
upgrade due to reliability and maintenance issues not to mention that
new requirements for the system were rapidly emerging.
Solution:
In order to position the system for future growth, standard compliance
and new requirements, new technologies were evaluated and subsequently
utilized in the next generation system. Several technologies were
adopted such as: Object-Oriented (O-O) concepts and principles, the C++
programming language and the Common Object Request Broker Architecture (CORBA),
an industry standard for distributed object computing. All of these
technologies played central roles in the architecture and implementation
of the next generation system (reference Figure 4).
As new features and capabilities were added to the next generation
system, O-O, C++ and CORBA were utilized almost exclusively. CORBA soon
proved to be a natural progression from CSW network services towards
distributed object computing. This progression was necessary due to the
basic architecture of the previous system generations being closely
associated with the classical client-server and functionally structured.
During the development of the next generation system, CORBA was selected
as a new middleware implementation. Presently, there are over forty
CORBA based servers and sixty CORBA based clients in the next generation
C4I system. These clients and servers represent a Source Line of Code (SLOC)
value of: 6k Object Management Group (OMG) Interface Definition Language
(IDL) and 355k C++. The previous generation system had approximately
1,500k SLOC distributed among thirty-three separate applications (called
Configuration Items or CIs). The new generation system has a total of
2,414k C/C++ SLOC, 20k+ source files, 6k OMG IDL SLOC distributed among
forty-six separate CIs.
CORBA replaced the message-based system of previous system generations
and added a defined, implementation (hardware platform and operating
system) independent and programming language (C or C++) independent set
of interfaces. This replacement occurred at both the system and
subsystem (internal to the system) level and at the appropriate level of
abstraction (i.e., functional capability). Refer to Figures 1 and 4 to
determine the architectural differences and the addition of CORBA
interfaces.
One of the most significant developments was that of the interface
between the user and remote subsystem. This interface is referred to as
the Interoperable Sensor Interface (ISI) and is illustrated in Figure 5.
The core of the ISI is that of the Common API that applies for all
sensor interfaces regardless of the exact sensor type. The Common API of
the ISI is specified and described in OMG IDL. Note: The IDL is not
included here due to its shear size (over 4k IDL SLOC). The purpose of
this common API interface is to present a standard view of common
capabilities provided by any of the different sensor implementations.
This common IDL was constructed around an object-oriented view of the
sensor and its capabilities. Sensors are viewed as sources of virtual
sensing capabilities that may be commanded and controlled at a number of
layers of abstraction. The ISI is designed to provide direct
manipulation of capabilities that are meaningful in the application
domain.
The ISI is an integral part of the SIGINT Object Model (SOM). The SOM is
an object-oriented analysis model of SIGINT operations and the SIGINT
domain. The SOM has been embraced by the Government standards community,
and is referenced in the Joint Airborne SIGINT Architecture Standards
Handbook (JSWG 1998).
Migrating to The ACE ORB (TAO) along with the Adaptive Communications
Environment (ACE) will improve system maintainability needs as wells as
other needs. NOTE: ACE is an equivalent to CSW in a sense (the two are
directed towards the same goal of functional transparency).
Another significant benefit of adopting TAO is that TAO is an open
source CORBA implementation. Since TAO is built upon ACE, ACE is an open
source product as well. Also, TAO is only one of two CORBA
implementations that were being considered for DII COE certification.
In addition, TAO enhances
the architecture of the next C4I system with the availability of a large
amount of CORBA Object Services (COS). Some of the COS that are critical
to the architecture and design of a distributed object system are
Naming, Events and Notification.
CORBA branding, DII COE certification, open source, CORBA standard
compliance, number of COS available, documentation, and support network
are powerful advantages for adopting ACE/TAO.
Given the great strides that CORBA has provided software developers,
however, much work remains in order to meet tomorrow's challenges and
needs. Some of the challenges of distributed systems remain, for example
one such challenge is that of Quality of Service or QoS. Some of the
unresolved QoS issues are: performance (latency and throughput), error
handling and recovery, dependence upon the transport layer services
(current capabilities or lack thereof), determinism, client-server
connection management, real-time data streaming, size of CORBA
components, end-to-end (or application-to-application) characteristics
[e.g., performance, determinism]. Some of these issues are left up to
the application and others are addressed in part by Real-time/minimal
CORBA and/or COS. Therefore, continued research in the areas of CORBA
and ACE/TAO are needed in order to meet these aforementioned challenges.
In the future, the SIGINT system must be able not only to interface but
also interoperate with heterogeneous sensors and user systems of various
vintages, using different technologies - and built by multiple
companies. CORBA facilitates Raytheon to meet these challenges.
Raytheon Company is a global technology leader that provides products
and services in the areas of commercial and defense electronics and
business and special mission aircraft. Raytheon has operations
throughout the United States and serves customers in 70 countries.
|