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:
And so in IT it would be:
My favorite source for definitions, wikipedia, has:
Similarly Architecture is defined as:
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.
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.