Jump to Definitions of:
Enterprise Architecture Basics:
UML 1.3: A system is a collection of connected units that are organized to accomplish a specific purpose. A system can be described by one or more models, possibly from different viewpoints.
IEEE Std. 610.12-1990: A system is a collection of components organized to accomplish a specific function or set of functions.
System Architecture Definitions
ANSI/IEEE Std 1471-2000: 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.
TOGAF: "Architecture” has two meanings depending upon its contextual usage:
Enterprise Architecture Definitions
The following definitions of Enterprise Architecture, IT Architecture, and Enterprise-Wide IT Architecture are by influential standards-setting organizations and writers in this field.
Clinger-Cohen Act definition of IT Architecture: "The term `information technology architecture', with respect to an executive agency, means an integrated framework for evolving or maintaining existing information technology and acquiring new information technology to achieve the agency's strategic goals and information resources management goals."
HCFA's definition of IT Architecture: An IT architecture is "a logically consistent set of principles, policies and standards that guides the engineering of the organization's IT systems and infrastructure in a way that ensures alignment with business needs."
The Open Group's definition in TOGAF: There are four types of architecture that are commonly accepted as subsets of an overall Enterprise Architecture:
Ruth Malan, Bredemeyer Consulting: An enterprise is made up of many interacting systems of various kinds. Enterprise Architecture identifies these systems, their key properties, and their interrelationships, and plans for and guides the evolution of the enterprise systems to support and enable the evolution of the enterprise in its pursuit of strategic advantage.
Thus, Enterprise Architecture is fundamentally a "system of systems" architecture, while software architecture is a "system of components" architecture (where systems produce stand-alone value, and components have to be composed into a system to produce value).
We hope that you will be stimulated to contribute to the discourse and hence (hopefully) growing understanding of the nature of Enterprise Architecture, by thinking about how to express it in a concise definition. We would like to post your definition of Enterprise Architecture here.
Christopher Turner, U.S. Department of Housing and Urban Development, Washington D.C.: Enterprise Architecture is a formal map/blueprint that is an integral component of the system ('enterprise') it specifies, which specification includes the methodology by which this "Architecture" is to be dynamically updated by its host system in the course of that system's transformational adaptations to its changing environment. I prefer the term "network" to "system", as in the recursive 'a self-sustaining , self-assembling network of distinguishable but mutually supporting components'. This definition of network would encompass personnel, as well as their information tools, protocols, etc. And I prefer "enterprise Dynamic Network Architecture (e-DNA)©" as more functionally evocative than the less metaphorically fertile "Enterprise Architecture". Copyright © 2002 by Christopher L. Turner
Jurgens Pieterse, CEO,
AlephZeph Consulting C.C., Cape Town, South Africa:
Software Architecture Definitions
The following definitions are by influential writers in this field. They are organized chronologically, with the most recent first. (You can also check out the SEI's great collection of Software Architecture Definitions.)
Architecture is the organizational structure of a system. An architecture can be recursively decomposed into parts that interact through interfaces, relationships that connect parts, and constraints for assembling parts. Parts that interact through interfaces include classes, components and subsystems.
Bass, Clements, and Kazman. Software Architecture in Practice, Addison-Wesley 1997:
'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 among them.
By "externally visible" properties, we are referring to those assumptions other components can make of a component, such as its provided services, performance characteristics, fault handling, shared resource usage, and so on. The intent of this definition is that a software architecture must abstract away some information from the system (otherwise there is no point looking at the architecture, we are simply viewing the entire system) and yet provide enough information to be a basis for analysis, decision making, and hence risk reduction."
Garlan and Perry, guest editorial to the IEEE Transactions on Software Engineering, April 1995:
Software architecture is "the structure of the components of a program/system, their interrelationships, and principles and guidelines governing their design and evolution over time."
Dewayne E. Perry and Alexander L. Wolf. "Foundations for the Study of Software Architecture''. ACM SIGSOFT Software Engineering Notes, 17:4, October 1992:
"... software architecture is a set of architectural (or, if you will, design) elements that have a particular form.
We distinguish three different
classes of architectural element:
IEEE Std. 610.12-1990:
Architecture is the organizational structure of a system.
Definition of Architecture Description
TOGAF: An architecture description is a formal description of an information system, organized in a way that supports reasoning about the structural properties of the system. It defines the components or building blocks that make up the overall information system, and provides a plan from which products can be procured, and systems developed, that will work together to implement the overall system. It thus enables you to manage your overall IT investment in a way that meets the needs of your business.
Definition of Architectural Framework
TOGAF: An architectural framework is a tool which can be used for developing a broad range of different architectures. It should describe a method for designing an information system in terms of a set of building blocks, and for showing how the building blocks fit together. It should contain a set of tools and provide a common vocabulary. It should also include a list of recommended standards and compliant products that can be used to implement the building blocks.
Bredemeyer, Dana, Ruth Malan, Raj Krishnan and Aaron LaFrenz, Enterprise Architecture as Business Capabilities Architecture, http://www.ewita.com/newsletters/10025_files/EnterpriseArchitectureAsCapabilitiesArchSlides.PDF
McAfee, David, What is Enterprise-Wide IT Architecture (EWITA)? http://www.lanset.com/dmcafee/earlywork/what.htm
McAfee, David, Why EA? http://www.lanset.com/dmcafee/POVs/DMC POV.html