miércoles, 16 de enero de 2013

Missing from ArchiMate: (Business) Capability?

Hi

 

image

One of the most often heard complaints about ArchiMate is that the concept Capability is missing. People often use ArchiMate’s Business Function for Capability as it comes closest. Are they right? And: What is ‘Capability’ and how should we model it in ArchiMate?

Capability is widely used as a concept in many different definitions, both in Enterprise Architecture and in natural language. For instance, TOGAF 9.1 gives the followingdefinition of Capability:

Capability: An ability that an organization, person, or system possesses. Capabilities are typically expressed in general and high-level terms and typically require a combination of organization, people, processes, and technology to achieve. For example, marketing, customer contact, or outbound telemarketing.

From an ArchiMate perspective, that sounds like (potential) behavior. But TOGAF also says this when it describes the Core Metamodel:

Function: Delivers business capabilities

Here, from an ArchiMate perspective, TOGAF’s Function sounds like an active object. And:

Function describes units of business capability at all levels of granularity The term “function” is used to describe a unit of business capability at all levels of granularity, encapsulating terms such as value chain, process area, capability, business function, etc. Any bounded unit of business function should be described as a function.

Here, the description of Function casts a very wide net which not so much deliversbut encapsulates Capability. And also when discussing ‘implementing’ an Architecture (the domain of ArchiMate’s Migration Extension) TOGAF says:

Capability: A business-focused outcome that is delivered by the completion of one or more work packages. Using a capability-based planning approach, change activities can be sequenced and grouped in order to provide continuous and incremental business value.

Work Package: A set of actions identified to achieve one or more objectives for the business. A work package can be a part of a project, a complete project, or a program.

Are you confused yet? I am, but probably that is because I am not TOGAF certified (anymore — I did the 8.1.1 certification a few years ago). Anyway, TOGAF 9 uses (and as we know from Uncle Ludwig: meaning lies hidden in use) ‘capability’ as a concept mostly when discussing realizing an architecture (e.g. in ‘capability based planning’) and secondly as something that is encapsulated by a Function. TOGAF’s idea of what a Function is differs fundamentally from what ArchiMate says it is. While ArchiMate’s functions are purely behavioral siblings of separate active objects (‘the other side of the same coin’), in TOGAF Function seems more like an form of GOFBF (see also section 10.3 in theMastering ArchiMate book), a mixture of active and behavioral objects. It also makes the ease with which many use the Business Function concept from ArchiMate for Capability slightly suspect. Do they have ArchiMate’s function concept or GOFBF in their mind when they use the word ‘function’? Are they ”bewitched by language” as Uncle Ludwig would have it? Or are they satisfied with what ArchiMate offers?

Such differences, by the way, make plans to integrate TOGAF and ArchiMate fraught with peril: though names of concepts may be the same (think ‘Function’) their meaning is quite different in both standards and trying to link them will be difficult in the extreme as you have either to fundamentally adapt one of the current meanings or you have to live with the utter confusion of two related but different meanings (‘uses’) for the same word. Before you know it, you will be, as suggested above, “bewitched by language“. It seems that for any chance of success with respect to integration, TOGAF could adopt ArchiMate’s metamodel of the enterprise and re-phrase its method. Adoption the other way around (apart from some additions like Capability that can be made in the proper ArchiMate way, see below) would probably destroy the unique contribution of ArchiMate: looking at active versus behavioral concepts to describe multiple aspects of what is essentially one ‘thing’.

Now, TOGAF’s metamodel sometimes seems not a metamodel about the enterprise, it sometimes feels like a metamodel about the artifacts of enterprise architecture(TOGAF artifacts instead of enterprise artifacts) and its use (again, I am not a TOGAF expert). ArchiMate on the other hand, has a metamodel that consists of artifacts that are about the enterprise (the artifacts in the extensions are meant for modeling changeand architecture). So, when TOGAF talks about ‘capability’ it is often in the context of capabilities that are realized by ‘implementing an architecture’ via ‘work packages’ which sounds like a metamodel for enterprise change instead of a metamodel for enterprise.

Still, these concepts are close enough and the first definition given above seems pretty usable to me from an ArchiMate perspective. So, I will start from the TOGAF definition of Capability (the first one, not the second one) and see where that takes me when looking at it from the ArchiMate side. In fact, I am looking here at how ArchiMate could get inspiration from TOGAF.

From ArchiMate’s perspective, what a business produces are Services and these are — in ArchiMate — purely behavioral objects (though in principle always linked to an Interface— an active object). ArchiMate is a bit skimpy on allowing passive objects to be produced. ArchiMate’s Product concept aggregates Services and a Contract, and that’s it. No Interface or other active objects at all. No passive objects other than Contract. So, if your business for instance builds web sites to customers, you can model the offering of a ‘web site building’ Service, but you cannot model the ‘web site’ code itself as part of the ArchiMate Product. That seems to be an omission in ArchiMate. I think it would be a good idea to have the possibility to aggregate a Business Object as well in a Product, then the Business Object could be ‘web site’ and this one is realized by — for instance — a zip file (Artifact) with a Joomla setup. But I digress.

So, given that Capability, as defined initially above, is missing from ArchiMate, how would we add it? My initial thought would be to create a concept related to Product. Before everybody gets bored by the lack of illustrations in this post, here is a first attempt:

http://masteringarchimate.com/2012/12/27/missing-from-archimate-business-capability/#more-617

;;_))

No hay comentarios:

Publicar un comentario