Architectural Styles


 * Independent components
 * Communicating processes
 * Client and Server
 * Event systems
 * Implicit invocation
 * Explicit invocation
 * Data flow
 * Batch sequential
 * Pipe-and-filter
 * Data-centered
 * Repository
 * Black board
 * Virtual machine
 * Interpreter
 * Rule-based system
 * Call and return
 * Main program and subroutine
 * Object-oriented
 * Layered system