In November 2002, I began a blog on software engineering; two weeks later, IBM announced its intent to acquire Rational, a deal which was finally consummated in March 2003. Needless to say, I was swept up by those events and so my original blog lay fallow. Life finally reached a reasonable point of stability and thus in January of this year I began a blog at a private site that I'd built in support of my effort to create a handbook of software architecture. No comprehensive architectural reference yet exists for software-intensive systems, and so the primary goal of that work is to fill this void in software engineering by codifying the architecture of a large collection of interesting software-intensive systems. My second goal is to study these architectural patterns in the context of the engineering forces that shaped them so as to provide to the developer community a set of proven patterns that they may then use to construct new systems and to reason about legacy ones. Finally, my third goal is simply to satisfy my insatiable curiosity for how software works. When encountering any interesting and useful software-intensive system, I often ask the question "how did they do that?" In short, I want to expose the inner beauty of these systems through a study of their architectural patterns.
Now, a private blog seems a bit of an oxymorn (like "jumbo shrimp" or "military intelligence"). This internal site is actually a working environment where I record the results of my archeological digs, vet them with the developers of these systems, and then incrementally expose those architectural descriptions when they are in a reasonably stable. The blog I maintain on that site is therefore largely a stream of discoveries about these systems, the architectural patterns they embody, and the more general topic of architect and software engineering, the representation and principles used to build these systems.
Our plan here is to stream out the RSS feed from my handbook site to this one. We've got most of the pieces working but have a little bit more to do to link with this blog, so in the meantime, I'll be posting here in an independent thread.[Read More]
Software architecture, software engineering, and Renaissance Jazz
gbooch 120000P81R 831 Views
gbooch 120000P81R 782 Views
This evening, I'll be at the Boulder Java Users Group ( http://www.boulderjug.org ), giving a presentation on software archeology (which draws from a number of materials from my work on developing a handbook of software architecture, a topic I'll talk more about as this blog unfolds).
Some of you might recognize the style of the cartoon in these slides. For both editions of Object-Oriented Analysis and Design with Applications, I commissioned a cartoonist from the UK, Tony Hall. While working on the first edition of the book, I also approached Scott Adams, but at that time he was on his rise to fame and so very politely declined. I've never met Tony - he lives somewhere along the northeast coast of England with a menagerie of animals - although we've communicated over the years by phone, fax, and snail mail. A few years ago, I again commissioned Tony to produce a new set of illustrations for a third edition of OOAD, from which this particular cartoon is taken.[Read More]