To get an overall idea of the structure of a software
system is intrinsically difficult.
The notion of architecture has proven to be
a powerful metaphor for describing the structure of
a system, that is the components and their interrelations,
in a sufficiently abstract way.
Software architecture
7
- architecture -- components and boundaries
- case study -- a framework for multimedia feature detection
- native objects -- the language boundary
- embedded logic -- the paradigm boundary
- architectural styles -- distributed object technology
- cross-platform development -- Unix versus Windows
Additional keywords and phrases:
components,
information architecture,
multimedia information retrieval,
feature detection,
portability
slide: Software architecture
In this chapter we will explore the notion of
software architecture.
We will first look at some definitions.
As a preliminary to some technical
explorations that illustrate a variety of ways
to couple heterogeneous components,
we will look at a case study involving
a framework for multimedia feature detection,
which is to be used for the indexing and retrieval of
multimedia objects on the Web.
In particular we will look at how to deploy
embedded logic for managing meta-information and knowledge,
and how to define corresponding collections of objects
across language boundaries. As an example, we will discuss
the Java and C++ coupling in hush in some detail.
Finally, we will discuss some architectural patterns and styles,
as well as some solutions for cross-platform development.