Enterprise Architecture Demystified

Sethuraj Nair’s Enterprise Architecture Thoughts

Posts Tagged ‘IT Architecture’

EAI, EDI, Convergence (and Convenience ! ).

Posted by snair007 on July 27, 2008

Integration Methodologies: Melting Frontiers Or Age of Divergence ? – Part II

 

In the first part of this discussion, we have seen quite a hatful of interesting jargons and acronyms ‘basking’ under both EAI and EDI, the niche of each is apparently unique and delimited. There are overlaps – pardonable ones. But our core discussion is not on these subsections anyway; we are here to know how appropriate it is to address data and application integration problems separately, where they converge – if at all- , and where down the road the industry and integration solution providers want to see each of them.

In IT architecture, the greatest rule of thumb says that if a problem baffles you, state it in business terms before addressing it. Our problem thus reads as to (1) what the users want to see after integration and (2) how far data and application integration methods can work together or in isolation to bring about what they want to see. So, yet again, it all boils down to the obvious center of enterprise universe – requirements.

Here too, the classical classification of requirements is invariably applicable – ‘business’ and ‘technical’. (I would always choose to call them more broadly and sensibly as operational requirements and enabling requirements – but that’s another discussion, anyway). Assuming that the business requirements heavily depend on the pertinent domain, and that it is not all that worthwhile to delineate some across-the-board pattern in business requirements that drive the integration, we’d better focus on the technical ones. But it will be even better if we combine the requirement in a need-and-fulfillment model. Let’s do that.

Hitting The Object(ives)

So, what is it, in simplest terms, a typical enterprise ‘E’ expects out of enterprise integration methodologies in general and how these methodologies meet the expectations?

·          To integrate business processes by facilitating enhanced interaction among ‘relevant’ enterprise components in IT spectrum (data, departments (business units, sub- organizations), actors( human resources), applications, interfaces, locations, services, sub-processes, functions, standards, rules  and infrastructure).

·          To broaden the business perspective across the enterprise by collating/ aggregating/re-organizing/re-structuring/re- representing relevant enterprise data segments.

·          To widen the ambit of enterprise’s functional standards, business policies, operational rules and governance models by unifying/centralizing/federating the hosting and management of business rules.

·          To assist effective and seamless co-ordination/mergers/amalgamation processes among business-units by improving connectivity, inter-operability and communication across disparate platforms and technologies.

·          To improve the enterprise’s adaptability to changes in line with business goals and objectives by establishing enough  ‘channels’  in terms of configurable mappings between business logic and technology for efficient change- propagation.

·          To optimize the efforts involved in altering(adding/removing/updating) an ‘enterprise component’ by optimizing degree of coupling among components

·          To reduce the cost of maintaining and scaling the enterprise IT framework by standardizing and reusing enterprise-wide interfaces or other middle-ware infrastructure and by reducing the number of “point-to-point” connections.

·          To ensure functional and informational consistency in the enterprise by unifying/standardizing transferring protocols in tandem with an increased usage of business semantics while defining interfaces.

Now that we have seen the expectations of integration, we are in a very good position to sum up the “KSAs( Key Solution Areas)” that could be used to appraise the role and effectiveness of integration methodologies to position them accurately :

·          Process Orchestration  : Components’ Coordination (broadly : Functional Co- ordination)

·          Enterprise Perspective : Data Organization

·          Governance : Business Rules Management

·          Business Scalability and Technology Portability : Platform Independence

·          Agility/Change Management -: Change-Propagation

·          Agility/Flexibility  : Coupling Optimization

·          Cost Control: Interface and Components Reusability

·          Consistency :Message Standardization

 

EAI to Bear The Torch

The distribution of applicability of EAI and EDI methods (that we have seen in Part-1 of this discussion) across each of these KSAs would look somewhat like this:

·          Components’ Coordination  – EAI , EDI

·          Data Organization – EDI

·          Business Rules Management -EAI , EDI

·          Platform Independence EAI , EDI

·          Change-Propagation-  EAI

·          Coupling Optimization – EAI

·          Interface Reusability – EAI,EDI

·          Message Standardization  – EAI , EDI

 

This is as much an interesting result as an important one. EAI by its definitions and for all its accepted forms/types can be found to be ‘wider and deeper’ in its scope. In other words, EAI turns out to be a definitely broader area, or at least to be more significance to the enterprise in terms of meeting its expectations out of  consolidating its  IT ‘ingredients’.

EAI also has its firm footprints on many layers of integration where data integration methodologies lack obvious and explicit applicability – be it Presentation Layer and Network Layer ( No, not OSI reference – just the implementation layers). If someone wants to adulterate the scopes and definitions to argue otherwise, well – s/he should be an awfully loyal EDI fan. Recommended 3-step algorithm for him/her  is –  start with that assumption , use Reductio ad absurdum and get disappointed.

Shared Pains

 Sarcasm apart,  there are a lot of common integration problems where there is enough room for solid give-and-take between these methodologies. Some of them are,

·          Need for Independence/transparency of platform heterogeneity

·          Data Exchange Requirements and formalized Data Formats.

·          Need for message integration and workflow management

·          Need for Control and coupling

·          Usage of common business integration middleware.

·          Repository-driven Meta Data management requirements

·          Need of Federated Models (in some scenarios)

·          Common security challenges.

·          Distributed data manipulation and concurrency control.

·          Usage of integration assistants like APIs, XML,RMI Service Interface standards such as WSDL and HTTP/SOAP.

·          Desired common traits of integrated framework include Scalability, reliability, consistency and availability.

Role Convergence  

To hone our discussion, we need to have a look at two more distributions – this time to affirm the activity-overlaps across the integration methodologies :

(1) Distribution of EDI presence across EAI categories : The amount of Data Integration activities typically performed as part of the majot EAI types we have seen in Part-1 of this discussion (Functional Integration , User Interface Integration and Data-level integration)

 

 

(2)  Distribution of EAI presence across EDI categories : The amount of Application Integration activities typically performed as part of the major EDI types we have seen in Part-1 of this discussion (( EDR,ETL,ECM,EII,MDM,CDI,BPI and EAI itself))

 

Conclusion

Presence of several monolithic integration approaches may slim down over the years as evolving paradigms would either supersede them or make them completely redundant. Still at lower strata of activities, these changes would prove to be nothing more than surges of ‘terminological feats’ , for, from an Enterprise Architecture perspective, both Application and Data Integration methodologies will forever be considered as key enabling techniques for all broader enterprise technical programs such as mergers and acquisitions, strategic architecture reorientations, SOA implementations, service clustering, business process integration and enterprise activity monitoring.

A good example is what the enterprise integration arena has seen with the advent of ESB or SOA – many schools of thought preferred to see them in mutual exclusion with EAI.  EAI, despite its terminological advantage in terms of ‘interpretive flexibility’ that should have qualified it to be considered as a functional superset of even SOA, was demeaned to deal with sheer point-to-point integration (hub-and- spoke, at best). Fact of the matter is that SOA as a conceptual framework and ESB as a middleware infrastructure ( or as a common information model) could all be a part of EAI union that should help a grand classification of like-minded models. But then,  the proponents of each new model want to see them in isolation, properly insulated from the ‘adulterating  influence’ of their less sophisticated technological ancestors. So things never so happened that SOA had been added to EAI concepts, but rather, SOA has been ‘introduced in place of’ EAI concepts. Of course, only then it’s convenient to present the world with a roadmap so strikingly titled as ‘From EAI-to-SOA’!

My feeling is that EAI is the only term with enough historical and semantic potential to accommodate ESB-based approaches, most of data integration methods, Composite/Federated Applications, Saas, Service Oriented approaches as well as those “inter-silo mashups” ( for which EAI is unfairly synonymous with). I am hardly a name junkie, but I do believe that consistent categorization and evolutionary traceability are important – very important.

Posted in Architecture Process, Data Integration, EA Requirements, Enterprise Application Integration, Enterprise Architecture, IT Architecture | Tagged: , , , , , , , , , , | Leave a Comment »

Integration Methodologies: Melting Frontiers Or Age of Divergence ?

Posted by snair007 on July 18, 2008

Part1 : The Integration Big League

Integration is pretty much what IT architecture is all about. Once we get rid of the ‘fat’  from this area and get to the core of affairs, all that matters is the way components ( data,application,technological ) are fastened together. No wonder Enterprise IT Architecture and Systems Integration were used interchangeably up until a close past.

But then there are a huge lot of methods out there, the purpose of which would rather seem to confuse than to assist. But I am sure there can be no argument as to which of them are most significant – Enterprise Application Integration (EAI) and Enterprise Data Integration (EDI). As a term, EAI has proven to be monumentally more significant than EDI, but when it comes to the activities that either of them deals with, the disparity vaporizes.

In an Enterprise Architecture evolution context, where would they stand tomorrow as two approaches of integration? In a time and age when ‘components’ are made with integration in mind, how relevant (and possible) is it to retain their distinct identity? Are they heading for convergence? If so, which of the two would potentially supercede another (if at all)? Which other integration methods would get encapsulated in either of these two?

Loads of great questions, and let’s not wait to hash them out.

Egg is not the mother of Chicken, or is it?

All serious Enterprise Architecture practicians might’ve noticed how EAI and EDI are often used in affiliation with one another, if not in place of one another. But if we try to ignore this phenomenon as yet another industry misnomer, we need to be careful. I have come across many research papers and books making contradicting remarks when EDI and EAI are referred in context with each other. Some say EDI activities and tools are a part of EAI framework; others speak something quite the opposite. Still others argue that there is not much difference anyway.

And they can all be right, too!

For the time, though, let me jot down my understanding of the most accepted distinctionsbetween EAI and EDI, before dissecting each of them too much:

·          EDI focuses on unifying enterprise data views; EAI enables unifying business processes by blending applications’ capabilities.

·          EDI  is data-centric; EAI is ‘message’ centric.

·          EDI deals with high-volume data movements; data movements in EAI is normally limited to real- time/near real-time data ‘propagation’

·          The technologies used for typical EDI operations are different from those of EAI

·          EAI is normally defined to be integration of data with application or application with application; EDI is to do with data to data integration.

·          In general, data extraction is a ‘pull’ activity in EDI and in EAI; it is a ‘push’ one.

·          Data Integration may not radically alter the systems architecture of an enterprise, but Applications Integration does.

·          At one level down, the frequently talked about sub- types of EDI (EII,MDM,ETL etc) are significantly different from typical activities surrounding EAI

·          EAI can start right from the component development (by ensuring compatibility), whereas EDI is almost always an implementation/interfacing activity.

·          There are more standards, guidelines and protocols to be followed to realize EAI than in the case of EDI. Many EDI efforts can be ad-hoc and tactical.

Sigh! There are quite a few, right?

But as I posited, these ‘differences’ haven’t seemed to restrain many experts from bracketing either of them under the other. Some believe EAI is a part of EDI just like EII,ETL and Data Federation. There are other schools of though that sees no reason why EDI is not a part of EAI framework, which according to them, is immense and flexible enough to accommodate that and much more.

These chickens and eggs!

Let the argument go on; we shall go back to tackle some more important questions by taking a nigher look at each of them.

Implicitly implicit

Interestingly (and quite thankfully), there’s been a clear pattern in the way EAI technologies have evolved overtime. It is fair to say that the definition of EAI has also evolved with them. But then, arguments in favor of placing EDI under the EAI umbralla have been there in all elementary definitions of EAI. Here is how Gartner group defines EAI:

            unrestricted sharing of data and business processes among any connected application or data sources in the enterprise.” (  a clear indication that we can regard           EDI as a subset of operations and framework that EAI offers.)

But the moment we see something like “business process” in its definition, EAI gets much more than a set of application or data components technically welded together. Linking business processes demands a well- orchestrated, business-centric approach.In other words, EAI is the technical consolidation of application silos in accordance with a set of business rules,to satisfy a set of business requirements.

An interesting aspect of EAI is that it can give rise to a set of new functionalities that the component applications wouldn’t provide in isolation. But mind you – these ‘generated functionalities’ are not‘technical accidents’ of EAI, but a result of well thought-out and estimated efforts.But both the expectations as well as the methods around this area have been varying over the years.

Wing and Venky (Enterprise Architecture and Integration,2007) give an interesting picture of how the focus of applications integration efforts have shifted over time – from one of technical to that of business.

They accurately points out that

            “The perception of integration has therefore shifted over time from tactical, low-business-value technical plumbing to a strategic and high-value enabler for     achieving business competitiveness.”

And the roadmap they present has a picture of EAI transmuting from “technical plumbing” to business-enabling frameworks generation.The focus areas making their appearances in the chronological order are systems integration, real-time integration, ERP Integration, Web Integration, Supply chain management, e-business integration,CRM, B2B Commerce and finally – collaborative commerce.

So, the future of integration is decided by business trends and paradigms rather than technological advances in data/message propagation. What does it mean to the question of addressing EAI and EDI as distinct integration streams? Answer seems quite obvious at first glance, now that we have seen the diminishing importance of integration methodologies in a rather business-centric integration environment. But is that truly the case?

To analyse that further, we must have to take a look at the types of integrations falling under each of EAI and EDI.

Let me encapsulate major EDI and EAI categories in two tables :

           

Table-1 : EDI Categories
  EDI Type  What is it ?
 
1 EII

Enterprise Information Integration

  • Multiple DBs, single virtual view
  • Fedarated approach
  • Holistic  Business View
  • Need-driven query redirection
  • “Divide-and-conquer” approach to execute queries. 

 

 

2 MDM

Master Data Management    

  • Multiple business components, single virtual ‘view’.
  • Focus on conformance with “Reference Data”
  • Focus on business consistency
  • Similar to CDI in many ways
  • Depends on a predefined / accepted “business semantics”  
  •  

3 ETL

Extract, Transform and Load

  • Synonymous with Data Warehouses
  • Normally batch- oriented
  • Differed data transfer
  • Normally based on “Pull” extracts
  • Normally uses an intermediate “staging area” for preparation and transformation
  • asynchronous
  • centralized hosting
4 RT-ETL

Real Time ETL

  • ETL process done in real-time or near real time
  • Data Propagation rather than bulk- transfer; similar to EAI
  • Normally based on “push” methods
  • “semi-synchronous”
  • centralized hosting
5 EDR 

Enterprise Data Replication

  • Replication of partial or full database
  • Rarely used as an integration solution; normally used for back-up and duplication
  • Normally use DB- triggers / transaction logs
  • CDC and Data propagation are used   
  •  

6 ECM

Enterprise Content Management

  •  Best suited for integrating data “as-is” / unstructured
  • Used for integration/consolidation of documents, web contents and rich media.
  •  ECM Products normally use a Content Management engine on top of  Data Store
7 EAI (We will see this in detail below)
8 CDI Customer Data Integration
9 CDC

Change Data Capture

  • Not so much of a type of EDI as a technique.
  • Publish-Subscribe mechanism
  •  Normally used for near real-time propagation purposes  

     

  

Table-2 : EAI Categories
  EAI Type  What is it ?
 
1 EDI

(We have seen this in detail)

  •  Integration at data level
  • Whitebox or Blackbox approach.
  • All EDI methods come under this category ( as seen above )
2

Functional Integration (FI)

-AND-

Process Integration (BPI+)

  • Integration at processes and data manipulation / interpretation rules level.
  • “Tight” application-to-application integration
  • Approach can be White / Blackbox
  • Used when presentation integration is inadequate
  • Normally wses any of the following technologies :
Message Oriented Middleware (MOM): integration through messages exchanges     

 Configurations : message queuing and message passing.

Examples : IBM’s MQSeries and Talarian’s Smart Sockets.

Distributed object technology:  Integration through application of object- oriented concepts t o middleware.

Configuration : Software components are made into objects which is then can be accessed by other applications across a network through the object interfaces.

Example : CORBA, MS COM+, J2EE,DCOM,RMI

 Transaction processing monitors (TPMs):   Integration through preserving integrity of distributed information resources (databases, files, MQs).

Configuration :To impliment distributed transaction processing support concepts like two-phase commit.  

 Example : BEA Tuxedo,web services 

 

 

3

Presentation Integration (PI)

-OR-

IUI (User Interface Integration)

  • Integration at applications’ prsentation /UI level
  • Whitebox appoach
  • Improved , Integrated access
  • Integrated user interface management(e.g validation, error handling)
4

Application Interfacing

  • Out-of-the-box Integration
  • Implemented with specializedAPIs, connectors or other forms of interfaces to access application components.
5 BPI

 Improved Functional Integration

  • Blackbox Appoach
  • Normally uses advanced middleware solutions like message brokers
  • Standardized and controlled the flow of information with a bus / hub-and- spoke framework.  

 *black box integration approach hides internal complexities of the application or database. White box approach does it the other way around.

 Next : Part2 : Convergence and Convenience

 

Posted in Data Integration, Enterprise Application Integration, Enterprise Architecture, IT Architecture | Tagged: , , , , , , , , , , , , , , , , | 1 Comment »

Agility Requirements: The Groundwork Of Agile Architecture – Part I

Posted by snair007 on July 6, 2008

Agility, Architecture and Agile Architecture

What a good word Agility is!  You are agile only when you are alert and adaptable, both. Hats off to the wise soul – whoever it was – that discovered its utility in ever-wavering frames of Information Technology practices. In any case, it was just a matter of time since its possible coinage before we started seeing its decisive presence in a gamut of IT methodologies and standards – Agile Programming, Agile Design, Agile Application Development and of course Agile architecture.

Why should architecture be agile? Is it advisable to see something that is to be rightly regarded as an authentic reference/blueprint of action to be as a variable in itself? Is it just about architecture change management?

Or to ask more directly- how important is the concept of agility in architecture?

One plain (and proper) definition of agility is as the ability to react to upcoming changes effectively and efficiently (Ambrose, Morello, 2004). In this sense, each architecture effort, if it is not done as a part of a fresh full life-cycle project, is meant to deliver exactly this purpose. It is so important that one can even argue we do architecture for agility rather than with agility.

Implicit and Explicit Agility

We need to know what we have and how it all add up in order to be able to assess the impact of a change so much as to know what is going to change, when, where, how and why it changes. We also need to know the architecture of our systems to know what each change will cost us in terms of money, time and effort. So to have a good architecture is the undoubtedly the first step of being agile. In other words, the greatest objective of Enterprise Architecture is to assist agility. Going by this logic, one may tend to think that Agile Enterprise Architecture is badly phrased; if not that it is an absolute oxymoron. And believe me – this is not entirely wrong. Agility is implicit in IT architecture.

But intention of this being regarded as a major EA topic is good. We normally say Agile Architecture to stress the importance of an architecture that is optimized for changes. So, while capturing the “As-Is” architecture is implicitly and arguably agility-driven, defining the ‘To-Be’ state is much more than that. In the latter case, we strive to devise an architecture that is to respond to changes ‘effectively and efficiently’, rather than to pull the current architecture together to fine-tune our understanding of the system(s) to handle potential changes ’effectively and efficiently’. We should therefore rather focus on this future-state modeling when we talk on Agile Architecture.

Focus On Agility: Agility Requirements – Foresee & Be Agile

Agility is the conceptual parent of many best-loved architecture features like dynamism, vibrancy and some most popular paradigms like SOA. They all deal with agility in their own ways. Agility is everywhere; though it is important to know how much is present where.

We have just seen how architecture can be implicitly and/or explicitly agile. But what do we normally do for making architecture agile? A good enterprise future-state architect definitely keeps the big agility factor in mind, but how often do we address agility factor upfront? Many architecture frameworks overlook considering agility in scoping and planning phases. We need to aim directly at the bull’s eye to increase the probability of striking it – we need to treat agility as the foremost success-criteria upfront for an architecture undertaking to make the implemented system agile. The first and most important step in this direction is to understand the organization’s ‘agility requirements’. When we gather architecture requirements, we normally tend to neglect the need of capturing a set of requirements under the head ‘agility requirements’. But the challenging question is how we can identify our ‘agility requirements’. How can we put down something that is uncertain and fluid? And most important of all, who is going to provide agility requirements?

We will see this in detail in later sections soon, and for the time, we only need to understand that agility as an architectural characteristic that is worth getting prime attention – expressly and systematically.

If we can actually expect changes, we would respond to them more effectively. And this simple logic makes a powerful case for gathering, organizing and representing agility requirements as one separate part of requirements collection phase of the architecture effort. Not only that it saves time, money and efforts, it also places the change in a politically and strategically favorable zone now that the change was an anticipated one. But is it about predicting changes, really? And if so it is, is it practical?

Science and Methods of Agility Requirements

Deductive Method

One way of identifying agility requirements is to understand the actual pattern of your business and technology changes. In most enterprises, there could be a significant degree of commonality across ‘System Change Events’ (SCE, if you like) happening over a period of time, due to business, ‘political’, geographic, economic and other reasons. It is possible to get considerable insights on the nature of ‘expectable’ changes by analysing changes that have been happening for a certain period of time. Presenting a full- fledged methodology for identifying the SCEs and analysing them is beyond the scope of our present discussion, though I would wish to rake up the applicability of some of the classic methods of pattern identification in this area – such as statistical approaches and data mining.

It is quite possible for a good enterprise to keep a history of their key business, application, data and technology changes, which I prefer to classify as System Changes (yes – I understand ‘system’ is a subjective term). In some cases though, the changes would be captured at a very granular level and without any proper plan to place the changes in context with each other to make it architecturally significant. The changes in Network topologies , changes in CI configurations and resources, applications patching and upgrades, adding new types of users to an application or configuration items are all System Changes but not with much use until they are rolled up to a proper higher level. Either way, with a focused and scientific approach, it is possible not only to conform these changes to a certain desired level of abstraction, but also to ‘make sense’ of this data.

So the ‘deductive method’ of agile requirement capture include mainly 2 steps :

      (1) To Prepare: To collect, organize, level-up the System Change Events in order to dress them       up for analysis.

      (2) To Analyze: To apply mathematical-statistical data mining techniques to draw    inferences that are direct inputs to Agile Requirements capture process.

 

What we look out for in an organized set of historical change records is a pattern of occurrence of various categories of changes, so as to be able to make sensible prediction and projections..

Let’s see some examples

Result of SCE analysis:

      There is a pattern in which a particular technology component ‘x’  is rolled out in a particular  geographical entity ‘y’.

The agility requirement corresponding to this finding would be something like:

      ‘To anticipate the implementation of upcoming releases or versions of ‘x’ in ‘y’.

Another One:

      ‘There are cases of recurring failures of implementing a certain strategic directive /standard ‘s’ in     certain client account ‘y’ ‘.

This translates into an Agility requirement statement that goes like:

      ‘To anticipate implementing an alternative to ‘s’ in account ‘y’ ; to keep an alternate blueprint of       implementation just for this account.’

In some cases, the ROI can be found significantly higher with specific changes, which would make way to repeat similar changes in future. Cases like this enable us to make fair, rather direct predictions.

Analysis and consultation

The most obvious method of gathering agility requirements is to do that in a requirement gather session from business representatives and stake-holders as ‘parking lot’ buy-ins. It is not recommended to get very formal with the process, though – as it may sound to be a rather speculative business. There should be enough transparency while asking for expectations. The ‘donor’ of a strategic tip-off may not be ready to own it or vouch for it , and rightly so. But it may prove to be valuable when you do agility requirements analysis.

Another important option is to seek internal or external professional assistance to do keep a tab on industry trends and developments. Agility of the enterprise is proportional to its foresight substantiated by quality trend-analysis, and the architecture responsive to the industry developments always identifies and assimilates trend data in consultation with business experts and analysts who can make quantified predictions as to which business and technology components can undergo changes in a certain period of time.

Next: Agility Requirements: The Groundwork of Agile Architecture Part-2 : Real Actions, Range of Change, Cost , resources and risk

Posted in Agile Architecture, Architecture Process, Enterprise Architecture, IT Architecture | Tagged: , , , , , , , , , , , | Leave a Comment »

Enterprise Architecture : How Not To Miss Anything ? -Part II

Posted by snair007 on June 21, 2008

“Getting Meticulous About It…..”

EA and EA Projects – Federated Scoping

Sorry, I can’t help harping on (I tried, though) the great ‘problem of rendition’ in EA. Right from the definition through the details, there is enough room for ‘convenient interpretation’ of many terms and ideas we find in countless Enterprise Architecture standards, frameworks and guidelines. Granted – the end-to-end roadmaps like the ones offered by TOGAF ADM are jobs very well done, but confusion lingers on in some less cheerful corners of every framework. A good example would be the difference in approaches to EA and to what can be termed as EA projects.

Wait a minute – did I say EA project? What can be termed as an EA Project? Well – everything you actually do as a part of ‘conducting’ Enterprise Architecture (You heard it right – “Conducting Enterprise Architecture” are the exact words used in the definition of MODAF. Not Conducting EA project, nor Conducting EA Activity – just conducting EA. They say MODAF is a “standardized way of conducting Enterprise Architecture and…”). So an EA Project can be any activity with enough significance to alter the EA status-quo as much as much as  being any component activity of building up Enterprise Architecture or being one that is formally aligned with Enterprise Architecture governance mode,.

The last statement, however, adds an improper degree of flexibility and thus sets in motion the wheels of convenient interpretation.

Out of Governance = Out of Scope?

Can we really take into account something that is not governed by Architecture Board as a part of Enterprise Architecture? Practically – yes , because practically in all organizations, there could be activities significant enough to disturb the EA status-quo without getting adequately controlled by governing council. The process of ‘adoption’ to EA framework would only be done at a later stage as a separate activity in such cases – mostly due to pressing deadlines, cash-flow reasons or simply sheer holes in the framework.

That leads us to having a federated approach to the scoping activity too – no matter at which rung of evolution we are at in terms of EA Framework compliance. What it means to us is this: apart from having a firm traction on governed EA Activities, there is a need for considering all substantial undertakings with definite inputs and outputs happening within the enterprise to be an EA Project; the substantiality can ideally be evaluated by governing body with minimal upfront involvement.

An EA Project can thus have a management and control outside Architecture Board. As shown in the graphic, Adoption and integration of the project to EA Framework are controlled by a pre-defined adoption strategy.

EA and EA Projects

 

But how are all these important in defining scope? They are very important, as, for one, we just saw that a project can be conceived, planned, scoped, executed and managed independently and can still be considered as an EA effort. Setting up right boundaries for such an isolated effort would be the key to all right things to follow.

 

The long and short of it: Reductionism in Scoping

Think of a sprint event. Which one would you pick as of more consequence- the distance to be covered in the race or each step that is to take you till the finishing line? Like most of you, I too would say : both. Every step is as much important as the distance to be covered. Though done inadvertently and being mastered by practice, every breath taken in, every muscle movement and every hop has its role in deciding the winner.

No holistic framework can be sound enough when it is frail in parts. Assembly may be fantastic but a week link in the chain can spoil the show, and that is where the importance of federation lies. In both the phases of scoping and planning an EA Project, the architect (an individual or a body) should be conscious of the Enterprise Significance of its outcome.

This gives a whole new importance to the scoping activity. Here we are not only concerned with scoping of the implementation of EA as a framework, but also of individual project scope in context with EA. So, the scope of the project should be defined as the scope of the business, application and technology areas of the enterprise as a whole that will be impacted by the project as well as those that constitute the project in isolation. This activity can prove to be providing great inputs to planning phase.

 

There are more to “TOGAF dimensions”

Back to the question of ‘meta’ scoping. What should we expect out of scoping exercise? TOGAF talks about 4 different dimensions ( details to be captured/ defined as a part of scoping exercise) : Scope of the Enterprise, Scope of Domains, Scope of Details, Scope of Time (not in the exact words used by The Open Group- refer TOGAF 8.1 for details ).

But are they enough?

Most of us who have ever even tried our hands on an Enterprise-Wide projects would not probably defer when I venture to say they are not all. There are some 4 more dimensions that I can think of:

Scope of Inputs:  A finite line should be drawn to mark the boundaries of information (required + available) concerning the effort. Identifying how much information would be open and/or available as inputs to the architecture effort is vital for successful execution of an EA Project . There can be numerous constraints for the Architecture Body in gathering information related to the project – like security, availability, time considerations and accessibility. On top of it, this effort should address the need of distinguish between available information and required information.

Scope of Compliance: Many Enterprise Architecture efforts are “cross-standard”. For example, while the actual development process of the architecture is being carried out in alignment with TOGAF, the security aspects of the enterprise may need to comply with SOX even as the implementation is to be carried out in an environment that follows ITIL-way of functioning. A ‘matrix of accord’ needs to be in place at the scoping phase of the project in order to meet the standards set by a multitude of standards that may or may not have requirements at variance with one another ( there should not be any, ideally).  

Scope of Usage: This is a highly overlooked factor, especially in Federated Architecture environments. As I mentioned in the previous part of my Thoughts, the effort here is to systematically capture answers to the questions like who is going to take up the architecture from the point where you leave, what will they be doing with the deliverable and whether it is development-facing or the business-facing or both.

Scope of Approval: Not everything is to be approved by everybody. Review and approval of the Enterprise Business Model should be limited to the business reps, whereas Application and Technology Models should follow a different/other review stream. I don’t very much buy in to the idea that this should be a part of defining roles and responsibilities (under planning) and not scoping, for this activity is more to do with defining boundaries of ‘jurisdiction’ rather than assigning work.

Posted in Architecture Process, Enterprise Architecture, IT Architecture | Tagged: , , , , , , , , , , | 1 Comment »