language: en

A Field Guide to Boxology: Preliminary Classification of Architectural Styles for Software Systems

Mary Shaw and Paul Clements
Computer Science Department and Software Engineering Institute Carnegie Mellon University
Pittsburgh, PA 15213
April 1996

Abstract: Software architects use a number of commonly-recognized styles to guide their design of system structures. Each of these is appropriate for some classes of problems, but none is suitable for all problems. How, then, does a software designer choose an architecture suitable for the problem at hand? Two kinds of information are required: (1) careful discrimination among the candidate architectures and (2) design guidance on how to make appropriate choices. Here we support careful discrimination with a preliminary classification of styles. We use a two-dimensional classification strategy with control and data issues as the dominant organizing axes. We position the major styles within this space and use finer-grained discriminations to elaborate variations on the styles. This provides a framework for organizing design guidance , which we partially flesh out with rules of thumb.

Keywords: software architecture, architectural styles, style classification/taxonomy

[This document was created with FrameMaker 4.0.4]