Applications architecture

In information systems applications architecture is one of several architecture domains that form the pillars of an enterprise architecture.

Applications architecture is the science and art of ensuring the suite of applications being used by an organization to create the composite architecture is scalable, reliable, available and manageable.

One not only needs to understand and manage the dynamics of the functionalities the composite architecture is implementing but also help formulate the deployment strategy and keep an eye out for technological risks that could jeopardize the growth and/or operations of the organization.

Definition

An applications architecture describes the behavior of applications used in a business, focused on how they interact with each other and with users. It is focused on the data consumed and produced by applications rather than their internal structure. In application portfolio management, the applications are usually mapped to business functions and to application .

The applications architecture is specified on the basis of business and functional requirements. This involves defining the interaction between application packages, databases, and middleware systems in terms of functional coverage. This helps identify any integration problems or gaps in functional coverage. A migration plan can then be drawn up for systems which are at the end of the software life cycle or which have inherent technological risks.

Applications architecture means managing how multiple applications are poised to work together. It is different from software architecture, which deals with technical designs of how a system is built.

Applications architecture strategy

Strategy by definition is a stance and does not involve any action. Applications architecture strategy involves ensuring the applications and the integrations align with the growth strategy of the organization. If an organization is a manufacturing organization with fast growth plans through acquisitions, the applications architecture should be nimble enough to encompass inherited legacy systems as well as other large competing .

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 utilized 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:

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.

Tasks of an applications architect

An applications architect is a master of everything application-specific in an organization. An applications architect provides strategic guidelines to the applications maintenance teams by understanding all the applications from the following perspectives:

The above analysis will point out applications that need a range of changes – from change in deployment strategy for fragmented applications to a total replacement for applications at the end of their technology or functionality lifecycle.

Functionality footprint

Understand the system process flow of the primary business processes. It gives a clear picture of the functionality map and the applications footprint of various applications across the map.

Many organizations do not have documentation discipline and hence lack detailed business process flows and system process flows. One may have to start an initiative to put those in place first.

Create solution architecture guidelines

Every organization has a core set of applications that are used across multiple divisions either as a single instance or a different instance per division. Create a solution architecture template for all the core applications so that all the projects have a common starting ground for designing implementations.

The standard of today Architecture world is TOGAF, driven by The Open Group Architecture Framework. It covers all components of EA, including Application as well as Technology Architecture.

There are also other standards to consider, depending on the level of complexity of the organization:

For references and basic understanding check IEEE Standard 1471-2000: IEEE Recommended Practice for Architectural Description of Software-Intensive Systems

See also

This article is issued from Wikipedia - version of the Sunday, January 31, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.