|
Enterprise Architecture Overview
The definition of an architecture used in ANSI/IEEE Std 1471-2000is: "the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution."
An enterprise architecture (EA) is a conceptual tool that assists organizations with the understanding of their own structure and the way they work. It provides a map of the enterprise and is a route planner for business and technology change.
Normally an enterprise architecture takes the form of a comprehensive set of cohesive models that describe the structure and the functions of an enterprise. Important uses of it are in systematic IT planning and architecting, and in enhanced decision making.
The individual models in an EA are arranged in a logical manner, and this provides an ever-increasing level of detail about the enterprise, including:
Its objectives and goals.
Its processes and organization.
Its systems and data.
The technology used.
Enterprise Architectural Perspective
The information in the enterprise architecture can be viewed from many perspectives and it can satisfy many needs. Architectural users include business managers and analysts, system architects and designers, workflow and procedures analysts, logistics specialists, organizational analysts, and so on. These people require high-level summary information, detailed data, and all levels in between. These demands are met through the creation of conceptual views, logical analyses, and physical implementations.
The business perspective
The business perspective describes how a business works. It includes broad business strategies along with plans for moving the organization from its current state to an envisaged future state. It will typically include the following:
The enterprise's high-level objectives and goals.
The business processes carried out by the entire enterprise, or a significant portion of the enterprise.
The business functions performed.
Major organizational structures.
The relationships between these elements.
The application perspective
The application perspective defines the enterprise's application portfolio and is application-centered. This view will typically include:
Descriptions of automated services that support the business processes.
Descriptions of the interaction and interdependencies (interfaces) of the organization's application systems.
Plans for developing new applications and revising old applications based on the enterprises objectives, goals, and evolving technology platforms.
The application perspective may represent cross-organization services, information, and functionality, linking users of different skills and job functions in order to achieve common business objectives.
The information perspective
The information perspective describes what the organization needs to know to run its business processes and operations. It includes:
Standard data models.
Data management policies.
Descriptions of the patterns of information production and consumption in the organization.
The information perspective also describes how data is bound into the work flow, including structured data stores such as databases, and unstructured data stores such as documents, spreadsheets, and presentations that exist throughout the organization.
The technology perspective
The technology perspective lays out the hardware and software supporting the organization. It includes, but is not limited to:
Desktop and server hardware.
Operating systems.
Network connectivity components.
Printers.
Modems.
The technology perspective provides a logical, vendor-independent description of infrastructure and system components that are necessary to support the application and information perspectives. It defines the set of technology standards and services needed to execute the business mission.
Although there can be many perspectives, there is only one enterprise architecture that the perspectives view. The value of the enterprise architecture is not in any one individual perspective, but in the relationships, interactions, and dependencies among perspectives.
While all the perspectives are key elements of the enterprise architecture, this document will focus on the application and technology perspectives.
Application and Technology Architecture
The functional requirements of a software system describe the business value that the software delivers. For a weather service, a functional requirement might be stated as "given a well-formed message A as input, the service will return a message B correct for the time span and geographic location represented in message A."
An application architecture is the architecture of any automated services that support and implement such functional requirements, including the interfaces to the business and other applications. It describes the structure of an application and how that structure implements the functional requirements of the organization. Whilst there should ideally be one application architecture in an organization, in practice there are typically many different application architectures.
The operational requirements of a software system define the reliability, manageability, performance, security, and interoperability requirements of the software (to list just a few). Common examples might be that the service is only available to authorized subscribers, and that the service be functioning properly 99.999 percent of the time.
A technology architecture is the architecture of the hardware and software infrastructure that supports the organization and implements the operational (or non functional) requirements, particularly the application and information architectures of the organization. It describes the structure and inter-relationships of the technologies used, and how those technologies support the operational requirements of the organization.
A good technology architecture can provide security, availability, and reliability, and can support a variety of other operational requirements, but if the application is not designed to take advantage of the characteristics of the technology architecture, it can still perform poorly or be difficult to deploy and operate. Similarly, a well-designed application structure that matches business process requirements precisely—and has been constructed from reusable software components using the latest technology—may map poorly to an actual technology configuration, with servers inappropriately configured to support the application components and network hardware settings unable to support information flow. This shows that there is a relationship between the application architecture and the technology architecture: a good technology architecture is built to support the specific applications vital to the organization; a good application architecture leverages the technology architecture to deliver consistent performance across operational requirements.
Conceptual, Logical, and Physical Views
For all architectural perspectives there are various views of the architecture that are often classified as conceptual, logical, and physical views. Conceptual views are the most abstract and tend to be described in terms that are most familiar to the (non-IT professional) users of the system. The conceptual view is used to define the functional requirements and the business users' view of the application to generate a business model. Logical views show the main functional components and their relationships within a system independently of the technical details of how the functionality is implemented. Architects create application models, which are logical views of the business model, as they determine how to meet business objectives and requirements. The application models represent the logical view of the architecture for an application. Physical views are the least abstract and illustrate the specific implementation components and their relationships. Each of the elements in the physical view is implemented, normally by a design and development process, as a software or hardware system. This implementation view is normally owned by the development or operations organizations within an organization and so is outside the scope of this document.
Technology Architecture
Like application architecture, technology architecture provides three views: the conceptual, the logical, and the physical. These views are used by architects to generate models within organizations that support and meet their operational requirements. Just as is the case with applications, there should be a single technology architecture, but in reality there almost always are multiple technology architectures caused by the growth and change of organizations and technologies. A key requirement for organizations is the integration of these disparate technology architectures into one all-encompassing architecture to allow the reuse of present-day applications and the rationalization of these technology architectures to a minimum set. The provision of this single, common architecture is vital to the creation of efficient, effective, and flexible organizations.
Conceptual view
A conceptual view of a technology architecture is used to map out areas of technology into a structure and framework. This is used to define, name, and position these areas for a common understanding between the IT supplier and the organizations using the technology and to ensure that all the technology areas required to implement an organization's operational or nonfunctional requirements are defined and available to the organization.
Logical view
The logical view of the technology architecture is where the major functional elements that provide support for enterprise-scale operational requirements and their interrelationships are provided. Enterprise technology elements such as databases, mail systems, transaction support, and reliable messaging are provided in the logical view. The technologies that are provided at this level are normally packaged together as servers by enterprise software vendors.
Physical view
Each of the elements in the technology architecture requires mapping to elements of real technologies for both hardware and software. In this way, technology architectures are realized as complete systems of networks, servers, operating systems, and so on. Actual physical locations, server product names, and connectivity are shown at this level
Architects are looking for technology frameworks and roadmaps from IT vendors to assist them in building systems that meet their organization's operational requirements and to ensure that their organization's technology architectures are aligned with that of the IT vendors.
source article courtesy of MSDN
|