Feedback About wiseGEEK Login
Category: 
What Is Application Architecture?
Article Details
  • Written By: Troy Holmes
  • Edited By: C. Wilborn
  • Last Modified Date: 10 May 2012
  • Copyright Protected:
    2003-2012
    Conjecture Corporation
Free Widgets for your Site/Blog
The first ATM was built in London in 1967, and it could be used only to withdraw 10 British pounds.  more...

May 29 ,  1953 :  Edmund Hillary reached the top of Mount Everest.  more...

Application architecture is the organizational design of an entire software application, including all sub-components and external applications interchanges. There are several design patterns that are used to define an application architecture. These patterns help to communicate how an application will complete the necessary business processes as defined in the system requirements.

A software application is a system designed to automate specific tasks in a logical manner to satisfy a set of requirements. Software applications rely on underlying operating systems and databases to store and perform tasks within the application. The application architecture is the blueprint that defines how the software application will interact with servers and components within the domains of application layers.

With the expansion of interoperability within software, modular components have been created that specialize in specific areas of business processes within an application. Application architecture is the process of defining all of the components within the design and how they will communicate within the application. This definition includes all layers of an application.

There are three main areas of control within all applications. These are the presentation layer, the business layer, and the data access layer. Each domain within an application has a specific responsibility that, when joined with the other layers, satisfy the underlying business requirements of an application.

The application architecture is used as a blueprint to ensure that the underlying modules of an application will support future growth. Growth can come in the areas of future interoperability, increased resource demand, or increased reliability requirements. With a completed application architecture, stakeholders understand the complexities of the underlying components should changes be necessary in the future.

With the creation of advanced object-oriented programming, application architecture has become a vital component in defining how an application will function. This is due to the wide use of N-Tier applications in most enterprises. N-Tier applications enable the deployment of sub-components or modules across multiple servers within an enterprise.

When defining an application architecture, it is also important to define the application server architecture. This server architecture overlays the hardware design that will facilitate the deployment of components on the architecture. Good application server architectures should support both horizontal and vertical growth paradigms.

Application service architecture defines how the application will make key business components available to other modules within an application. This service architecture is also included in the overall application architecture. With the definition of interfaces available, interoperability between application layers is better understood by stakeholders within the organization.

Related Videos

Discuss this Article

sherlock87
Post 2

I think it is easy for us to forget how complicated software can be. We use it all the time, not just on computers now but on phones and iPods and the like, it's hard to imagine how much effort goes into making even simple applications so that they work well.

elizabeth23
Post 1

I have never heard the term architecture used to refer to software design, though it makes sense. It is a way of building things, and good software design can be as artistic as designing a beautiful house.

Post your comments

Post Anonymously

Login

username
password
forgot password?
or connect with facebook

Register

username
password
confirm
email