Architectural Structures
Module structures
   Which piece is responsible for what
Component-connector structures
   how do the major pieces interact at runtime
Allocation structures
   allocates pieces of the architecture to pieces of the
   external environment