Modularity plays an important role in software architecture. It fills a gap
that has existed since we began developing enterprise software systems in
Java. This chapter discusses that gap and explores how modularity is an
important intermediary technology that fills that gap.
Defining Architecture
There are numerous definitions of architecture. But within each lies a common
theme and some key phrases. Here are a few of the definitions. From Booch,
Rumbaugh, and Jacobson (1999):
An architecture is the set of significant decisions about the organization of
a software system, the selection of the structural elements and their
interfaces by which the system is composed, together with their behavior as
specified in the collaborations among those elements, the composition of
these structural elements and behavioral elements into progressively larger
subsystems, and the ar... (more)
Design patterns exploded onto the scene when the seminal work, Design
Patterns: Elements of Reusable Object-Oriented Software, was published in
1994. Since that time, numerous books on patterns have been written,
conferences devoted solely to the patterns movement have emerged, and entire
Web sites are dedicated to discussions on patterns. Compound patterns that
represent a combination of patterns have even been discovered.
While the benefits we've realized through this movement should not be
questioned, the sheer number of patterns has created a situation in which it
has become... (more)
Burton Group Blog
There are many forces that influence technological evolution. After a decade
of building enterprise applications on the web, today’s enterprise
application platform is slowly evolving to the next generation application
platform. What exactly are the components of this next superplatform? Without
question, as the next generation platform slowly evolves, a significant
aspect will be the programming models and frameworks that team members use to
develop and deploy enterprise applications.
The OSGi Service Platform is a dynamic component system for Java. Succin... (more)