Michael Platt's WebLog

Computer Engineering

Blogs

Infrastructure Architecture

  • Comments 6
  • Likes

As I mentioned in my last blog my new job makes me responsible for Microsoft’s strategy and guidance on Infrastructure Architecture. The first question I have to answer is what is Infrastructure Architecture, that is what is a formal definition for the area? I have a good idea what I mean by the term but it is nice to have a common understanding of what something is.
Looking up Infrastructure in the dictionary the definition is:

The basic structure or features of a system or organization

And so in IT it would be:

Basic support services for computing

My favorite source for definitions, wikipedia, has:

Infrastructure, most generally, is the set of interconnected structural elements that provide the framework for supporting the entire structure

Similarly Architecture is defined as:

The manner in which the components of a computer or computer system are organized and integrated

Wikipedia has a number of definitions, none of which I particularly like. I feel architecture is the use of abstractions to model systems (both real world and other models) in order to manage complexity and assist with communication.


There don’t seem to be any formal definition of what Infrastructure architecture is, the only one found by searching the web is from the Open Group where it is defined as:

Infrastructure architecture connotes the architecture of the low level hardware, networks, and system software (sometimes called "middleware") that supports the applications software and business systems of an enterprise.

The main thrust of this definition is to position Infrastructure Architecture relative to TOGAF and ends up as calling infrastructure architecture everything other than specific software project architectures which whilst not incorrect is a rather exclusive definition.

It would appear that there is not a formal definition of Infrastructure Architecture for IT so I have come up with my own:

Infrastructure Architecture is the set of abstractions used to model the set of basic computing elements which are common across an organization and the relationships between those elements.

So it would include the architecture of:
• 
Networks
• Storage
• Platforms
 
Middleware

• Information
• Access Management
Security
Identity 
• Management
o Deployment
Provisioning

It does not include anything to do with design or operational processes or software design, these fall under the remit of SDLC, Operations Lifecycle and Software Architecture respectively. It does not include any business elements.
It is a major subset of Enterprise Architecture and the platform for a Service Oriented Architecture.
It does include Service Oriented Infrastructure and Grid.

I think this definition works so I will see if anyone has any comments and if not I will post it on Wikipedia.

Comments
  • Michael continues his definition thread, first there was Virtualisation and now the big one - how...

  • Michael continues his definition thread, first there was Virtualisation and now the big one - how...

  • Michael continues his definition thread, first there was Virtualisation and now the big one - how...

  • Jon Arce emailed me that in my earlier blog I should have included the IEEE standard definition of Architecture:...

  • Where are the design patterns for Infrastructure Architecture?

  • Working towards patterns. You have to have some commonly defined and understood terms, then clear layers of abstraction (models) before you can build patterns at those layers. We are still trying to get definitions and levels of infrastructure understood, then we can start to harvest patterns. This is a journey, not the asnswers!