Tutorial at Dr. Dobbs Architecture & Design World 2008

I have submitted a proposal to give a 3-hour tutorial at Dr. Dobb's Architecture & Design World 2008 July 21-24, 2008. Here is the text of my proposal.

Presentation Abstract:

Software architects build and analyze models to understand systems and reduce risk, and use those models to create and evolve implementations.

Since software development has diverse risks, architects build various kinds of models. They follow a divide-and-conquer strategy, where they “divide” by producing models with a limited view of the system, allowing them better comprehension and reasoning about a particular part or quality of the system. In order to “conquer,” however, they must understand how all the models fit back together to build a system.

So we need ways to make it easier to understand individual parts of a model and relate the parts with the whole.

This session surveys some of the common architecture models and how they fit together. It gives participants the conceptual tools to help them divide models as needed, as well as fit them back together (“conquer” them). Session participants will leave with a coherent mental framework of software architecture, helping them to reconcile business needs with implementation issues, identify risks, and successfully design systems.

Prerequisites:
Familiarity with UML and basic software architecture is helpful, but not required.

Speaker Bio

George Fairbanks has been teaching software architecture and object-oriented design for ten years for companies including Kinetium, Valtech, and Platinum Technology. He is co-instructing the graduate software architecture course at Carnegie Mellon University. He holds a Ph.D. in Software Engineering from Carnegie Mellon University, advised by David Garlan and Bill Scherlis. His dissertation introduced design fragments, a new way to specify and assure the correct use of frameworks through static analysis. He has publications on frameworks and software architecture in selective academic conferences, including OOPSLA and ICSE. More concretely, he has written production code for telephone switches, plugins for the Eclipse IDE, and everything for his own web dot-com startup.

Proposed Track: Modeling & Design

Presentation Title: Architecture Modeling with UML

Audience Level: Beginner

Comments and Additional Information:
The primary sources for this presentation are:

1. Catalysis and subsequent elaborations by D'Souza & Wills
2. Documenting Software Architectures by Clements et. al
3. Software Architecture in Practice by Bass et. al

The presentation is a condensation of a five-day course.