
artificial intelligence community and the field of ar-
chitecture description languages (ADL). In the mili-
tary sector, there is still a primary focus on the de-
sign of physical platforms, low-level control systems
and sensing. Recently, there has been some work
started in order to build so-called open source plat-
forms. OCP is a joint venture from Boeing, Georgia
Institute of Technologies and Honeywell Laboratories
to build an open control platform designed to give fu-
ture UAVs more capable flight control systems and in-
tegrates interdisciplinary systems that enables recon-
figurable control (Schrage and Vachtsevanos, 1999)
(Wills et al., 2001). A prototype of OCP was lately
tested on a UAV helicopter. JAUS is another example
of a joint venture to design an architecture for future
unmanned systems. The main focus of this project
is based upon building an architecture for various
unmanned systems that tries to become independent
from technological trends (JAUS, 2004) (Hansen,
2003). A third initiative is the avionics architecture
description language (AADL) which is expected to
pass as a standard soon. The AADL has be designed
to support a model-based architecture-driven devel-
opment of large-scale systems with an emphasis on
concepts that address performance-critical embedded
systems concerns like timing and performance (Feiler
et al., 2003) (Dissaux, 2004).
Building of software architectures has a long tradi-
tion in the artificial intelligence community. The first
important developments go back to the early 80s with
the deliberative architectures from (Nilsson, 1980)
that are characterised through predictable and prede-
termined communication between layers. Reactive
behaviour-based architectures introduced by (Brooks,
1986) that emphasised parallelism over hierarchy ap-
peared later. Intelligent behaviour in such an archi-
tecture emerges from the interactions of multiple be-
haviours and the real world. To combine the bene-
fits of both approaches and thus enabling reactive be-
haviour and planning capabilities a multitude of hy-
brid architectures have been introduced over the in-
tervening years. An overview about various architec-
tures in AI applications can be found e.g. in (Ko-
rtenkamp et al., 1998). Currently, distributed agent
architectures are under investigation. A sample ar-
chitecture is the Open Agent Architecture, a domain-
independent framework for integrating heterogeneous
agents in a distributed environment based on the inter-
agent communication language (Cheyer and Martin,
2001).
Architecture description languages have become an
area of intense research in the software engineering
community. They define software architectures as
reusable and transferable abstractions of software sys-
tems (Clements et al., 2002), composed of compo-
nents, connectors, and configurations to define locus,
interaction, and topology (Garlan and Shaw, 1993).
In general, software architectures are used to describe
the structure of software systems. Support exists from
a number of architectural description languages like
Adage (Coglianese and Szymanski, 1993), C2 (Med-
vidoc et al., 1996) (Medvidoc, 1999), Meta-H (Binns
and Vestal, 1993), or ACME (Garlan et al., 2000) to
name but a few. xADL, another ADL, has been eval-
uated by a number of projects like AWACS aircraft
software system or Mission Data System (Dashofy
et al., 2002). It can be used in a flexible manner to
develop new styles and architectures on a coarse de-
scription level, suited even for families of architec-
tures. An extensive comparison of the various de-
scription languages can be found in (Medvidovic and
Taylor, 2000). Although used in a variety of applica-
tions, each ADL has its particular justification but so
far none of them has accomplished as being a stan-
dard.
At present, most of the propagated approaches lack
on the one hand of support for integrating off-the-
shell middleware (Nitto and Rosenblum, 1999) and
consider on the other hand only the design of coarser-
grained architectural elements. Instead of ignoring
the results that practitioners have achieved in the def-
inition of middlewares, the design of a software ar-
chitecture should incorporate both, the benefits of
top-down and bottom-up approaches. Some research
concerning the integration of middleware has already
been started (e.g.(Dashofy et al., 1999)).
To build systems with capabilities for self-
dependent acting requires a fine-grained design. This
regards in particular the internal architecture of sin-
gle architectural elements like components or connec-
tors. To support this, the present article describes an
integrated view to the design of a reference software
architecture for the domain of unmanned aerial ve-
hicles regarding coarse-grained and fine-grained as-
pects with respect to autonomous requirements. Com-
ponents are considered as architectural elements that
encapsulate functionality in a blackboard style. That
means, the way of providing a service is of no con-
sideration as long as a reasonable result is returned
and each component therefore possesses mechanisms
to ensure the required quality of service.
2 DESCRIPTION OF THE
SOFTWARE ARCHITECTURE
The reference software architecture is an abstract
model that may be substantiated for a multiplicity of
missions. It consists of identical constructed compo-
nents, so-called autonomous entities (AEs), covering
roles and functionalities, connectors that contain var-
ious ORB middleware implementations, and configu-
rations that describe potential connection structures.
TOWARDS A CONCEPTUAL FRAMEWORK- BASED ARCHITECTURE FOR UNMANNED SYSTEMS
119