Monolithic application

Monolithic application

In software engineering, a monolithic application describes a single-tiered software application in which the user interface and data access code are combined into a single program from a single platform.

A monolithic application is self contained, and independent from other computing applications. The design philosophy is that the application is responsible not just for a particular task, but can perform every step needed to complete a particular function.[1][2] Today, some personal finance applications are monolithic in the sense that they help the user carry out a complete task, end to end, and are "private data silos" rather than parts of a larger system of applications that work together. Word processors are an example of a monolithic application.[3] These applications are sometimes associated with mainframe computers.

See also

In software engineering, a monolithic application describes a software application which is designed without modularity. Modularity is desirable, in general, as it supports reuse of parts of the application logic and also facilitates maintenance by allowing repair or replacement of parts of the application without requiring wholesale replacement.

Modularity is achieved to various extents by different modularization approaches. Code based modularity allows developers to reuse and repair parts of the application, but development tools are required to perform these maintenance functions (e.g. the application may need to be recompiled). Object based modularity provides the application as a collection of separate executable files which may be independently maintained and replaced without redeploying the entire application (e.g. Microsoft "dll" files, Sun/UNIX "shared object" files). Some object messaging capabilities allow object based applications to be distributed across multiple computers (e.g. Microsoft COM+). Service Oriented Architectures use specific communication standard/protocols to communicate between modules.

The extent to which an application is described as monolithic is dependent upon perspective. Software that is not Service Oriented may be described as monolithic even though it is Object based and can be distributed.

The original use of the monolithic term described enormous main frame applications with no usable modularity, therefore resulting in un-maintainable systems and the "software crisis." Such monolithic applications are also commonly referred to as "spaghetti code."[citation needed]

References

  1. ^ ICCI Monolithic Applications Retrieved on 5 August 2007
  2. ^ Information Technology Services Monolithis Application Retrieved on 3 August 2007
  3. ^ Microsoft Three-tier Application Retrieved on 3 August 2007

Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Monolithic HPLC column — A monolithic HPLC column is a special type of column used in HPLC with porous channels rather than beads. High performance liquid chromatography (HPLC) is the third most widely used laboratory instrument, surpassed only by analytical balances and …   Wikipedia

  • Demonolithicized application — is the result of breaking a monolithic application[1] into small manageable pieces the deliver the same or superior business results. The word derives from the Latin word monolithus from the Greek word μονόλιθος (monolithos), derived from μόνος ( …   Wikipedia

  • Software bloat — Software bloat, also known as bloatware or elephantware [ [http://www.downloadsquad.com/2008/01/01/the 5 most annoying programs on your pc/ The 5 most annoying programs on your PC Download Squad ] ] , is a term used in both a neutral and… …   Wikipedia

  • Modular programming — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computin …   Wikipedia

  • NGOSS — or New Generation Operations Systems and Software is the TeleManagement Forum’s programme to provide ways to help Communication Service Providers to manage their business. NGOSS includes a set of principles and technical… …   Wikipedia

  • Frameworx — Frameworx, formerly known as NGOSS or New Generation Operations Systems and Software is the TeleManagement Forum’s programme to provide ways to help Communication Service Providers to manage their business. Frameworx includes a set of principles… …   Wikipedia

  • Virtuoso Universal Server — Virtuoso Conductor (Database Administration User Interface) Developer(s) OpenLink Software …   Wikipedia

  • Software architecture — The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. The term also… …   Wikipedia

  • Zope 3 — is the new generation of the popular Zope web application server, rewritten from scratch with a component architecture and which has evolved into a large library of reusable Python components. The first production release of the software, Zope X3 …   Wikipedia

  • Universal integration platform — A universal integration platform is a development and/or configuration time analog of a universal server. The emphasis on the term: platform implies a middleware environment from which integration oriented solutions are derived. Likewise, the… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”