The word architecture may be a source of confusion rather than clarity in this field because it has multiple senses and people use the word loosely. For example, you may have seen speakers point to a diagram and say, "This is the architecture." You may have encountered Web pages entitled Architecture that contain text descriptions of standards and specifications. You may also have encountered the term in various phrases, such as multitiered architecture and enterprise architecture.
To avoid adding to the confusion, we here define the terms we use in this chapter:
Architectural style is a set of general design principles (rules) for designing an information system.1 These rules usually serve as constraints on (1) how we design the functions of each component (e.g., functions are stateless, functions operate independently), (2) how we arrange the components (e.g., in layers, in a star pattern, in a chain), and (3) how the components communicate with each other. We will be discussing architectural styles suitable for constructing enterprise information systems (e.g., a health department's information systems) and for constructing pan-enterprise systems (e.g., a worldwide biosurveillance system).
A blueprint is a set of specifications in sufficient detail that a diverse group of entities (e.g., network engineers, database administrators, programmers) can work collaboratively to construct a system.2 A blueprint comprises
1 A commonly cited work about architectural styles is Roy Thomas Fielding's dissertation Architectural Styles and the Design of Network-based Software Architectures. In this work, Fielding comprehensively reviews the architectural styles used in the architectures of systems that must operate in a distributed manner over a network.
2 We introduce the term blueprint for expository purposes. This term is not used by architects of information systems.
Handbook of Biosurveillance ISBN 0-12-369378-0
Elsevier Inc. All rights reserved.
1. A data model that describes the data elements, vocabularies, grammar, and semantics of the system
2. The set of functional components of the system (e.g., database, user interface)
3. A diagram that shows how the components are connected
Architectural style and blueprint are at opposite ends of a design process. An architectural style is a general approach that exists because of previous experience and that seems to have merit for a current project. A blueprint is the result of casting that style into a concrete plan for construction that allows multiple individuals and/or organizations to build the envisioned system.
An architect is a designer of a system. Similar to an architect of a building, an architect of an information system brings a great deal of knowledge to a project. She is familiar with designs used in other successful projects, what prefabricated (pre-fab) components are available, costs, and local requirements (e.g., the building code). An architect must combine her knowledge about the architectural style (e.g., the layered-client server [LCS] style or, in the case of buildings, multiunit apartment building), building materials (data elements and vocabularies or, in the case of buildings, concrete and steel), the specific requirements (types of functions or, in the case of building, no more than $105 per square foot), and the local regulations (laws and regulations about confidentiality, or in the case of building, the building codes) to produce as a final product a set of blueprints.
Was this article helpful?