Applications Architecture - Applications Architecture Patterns

Applications Architecture Patterns

Applications can be classified in various types depending on the applications architecture pattern they follow.

A "pattern" has been defined as: "an idea that has been useful in one practical context and will probably be useful in others”.

To create patterns, one needs building blocks. Building blocks are components of software, mostly reusable, which can be utilised to create certain functions. Patterns are a way of putting building blocks into context and describe how to use the building blocks to address one or multiple architectural concerns.

An application is a compilation of various functionalities, all typically following the same pattern. This pattern defines the application’s pattern.

Applications typically follow one of the following industry-standard applications architecture patterns:

  • Client-Proxy Server: Acts as a concentrator for many low-speed links to access a server.
  • Customer Support: Supports complex customer contact across multiple organisations.
  • Reactor: Decouples an event from its processing.
  • Replicated Servers: Replicates servers to reduce burden on central server.
  • Layered Architecture: A decomposition of services such that most interactions occur only between neighboring layers.
  • Pipe and Filter Architecture: Transforms information in a series of incremental steps or processes.
  • Subsystem Interface: Manages the dependencies between cohesive groups of functions (subsystems).
  • Self-Service: Users accessing transactions on a 24x7 basis (a.k.a. user-to-business)
  • Collaboration: Users working with one another to share data and information (a.k.a. user-to-user)
  • Information Aggregation: Data from multiple sources aggregated and presented across multiple channels (a.k.a. user-to-data)
  • Event-Centric: Data events (which may have initially originated from a device, application, user, data store or clock) and event detection logic which may conditionally discard the event, initiate an event-related process, alert a user or device manager, or update a data store.
  • Enterprise Process-Centric: A business process manages the interactions between multiple intra-enterprise applications, services, sub-processes and users.
  • Bulk Processing: A business process manages the interactions between one or more bulk data sources and targets.
  • Extended Enterprise: A business process manages the interactions between multiple inter-enterprise applications, services, sub-processes and users.

The right applications pattern depends on the organisation's industry and use of the component applications. An organisation could have a mix of multiple patterns if it has grown both organically and through acquisitions...

Read more about this topic:  Applications Architecture

Famous quotes containing the words architecture and/or patterns:

    Art is a jealous mistress, and if a man have a genius for painting, poetry, music, architecture or philosophy, he makes a bad husband and an ill provider, and should be wise in season and not fetter himself with duties which will embitter his days and spoil him for his proper work.
    Ralph Waldo Emerson (1803–1882)

    Persons grouped around a fire or candle for warmth or light are less able to pursue independent thoughts, or even tasks, than people supplied with electric light. In the same way, the social and educational patterns latent in automation are those of self- employment and artistic autonomy.
    Marshall McLuhan (1911–1980)