Book review: Software Fortresses
- By Dan Romanchik
Enterprise systems are chaotic by nature. According to Roger Sessions, author
of "Software Fortresses: Modeling Enterprise Architectures," enterprise
systems are often made up of a "disparate bunch of applications" driven
by databases that are a "series of disorganized data storage technologies."
Throw in departments that are suspicious of one another and malicious clients,
and you pretty much get the picture.
The solution to this mess, said Sessions, is to treat all of these systems
as separate "fortresses" and define how they interact with one another.
The software fortress architecture consists of a series of self-contained, mutually
suspicious, marginally cooperating software fortresses interacting through carefully
crafted and meticulously managed treaty relationships. In other words, if you
can't beat 'em, at least try to get them to work together.
Along with the idea of software fortresses, the author introduces a modeling
methodology that uses medieval cartoon characters to represent the different
types of fortresses. Some may feel this is cute, but I found it to be distracting
and silly. Once you get past the cartoons, though, the methodology is designed
to show how all the fortresses interface with one another.
One positive about the modeling techniques put forth in this book is that they
are technology-independent. You can, for example, use them whether you're using
the .NET platform or the J2EE platform. And in several sections, the author
compares the two and gives some advice on how to choose the best platform for
your particular situation.
This book is not for everyone. For one thing -- as the author admits -- this
methodology is still immature. Second, not everyone needs such high-power modeling
techniques. If, however, you're a CTO, enterprise architect or developer in
a larger enterprise, then you may find many of these ideas useful.
"Software Fortresses: Modeling Enterprise Architectures" by Roger
Sessions. ISBN 0-321-16608-6. Addison-Wesley Professional, Boston, Mass., 2003,
Dan Romanchik is an engineering manager turned writer and Web developer. His current passion is amateur radio. You can read his amateur radio blog at www.blurty.com/~kb6nu.