Archive

Posts Tagged ‘archimate’

On Archimate 2.0

February 29th, 2012 4 comments

Archimate 2.0 is now available – its formal release was at the end of January 2012, during the Open Group conference in San Francisco. I’ve been a bit busy in the meantime, so this is the first chance I’ve had to do a proper review.

Why Archimate?

Archimate aims to be the standard notation for all enterprise-architecture work, bridging an important gap between free-form whiteboard-style sketches and detail-layer executable models.

The catch is that it all depends on what’s meant by the term ‘enterprise-architecture’… which is not a trivial point, as Len Fehskens explained on the Open Group blog early last year, in his seminal post ‘Enterprise Architecture’s Quest for its Identity‘.

The short answer is that version 1.0 of Archimate was a very good fit for what Fehskens describes as ‘EITA’ – enterprise IT-architecture. It was not a good fit for whole-enterprise architecture – a literal ‘architecture of the enterprise’ – because in essence everything in Archimate 1.0 centred around IT, and it had no real means to describe anything that did not in some way directly impact upon IT.

For a logistics context, for example, we could model how information about a package would move through the system, but not the physical package itself: so there was no real way describe any of the scenarios by which the parcel and the record of that parcel might become misaligned – or, perhaps more importantly, become realigned. (In the real world, that kind of misalignment still happens way too often for anyone to be comfortable or complacent about it – as can be seen in so many Twitter-complaints with the ‘#fail’ hashtag. It’s a very real business-problem – and usually a problem that is rooted somewhere deep within the architecture of the enterprise. Which is why it is our problem.)

There were also several key items that were missing from the Archimate metamodel that were going to be needed by anyone aiming to bridge the infamous business/IT-divide – particularly about motivation. (There’d been some coverage of that in the earlier versions of Archimate, but were dropped in the 1.0 release, perhaps to improve its alignment with the TOGAF 9 metamodel.)

The underlying anatomy of Archimate is also somewhat problematic. As I explained somewhen mid last year in a long post, ‘Unravelling the anatomy of Archimate‘, to me there are what seem to be several fundamental flaws in the structure of its metametamodel that actively constrain its use to an IT-oriented view of enterprise-architecture. And there seems to be no easy way to resolve those flaws without going a long way down into the internals and starting again. The surface-layer can look much the same – and certainly remain backwards-compatible – but the internals would need to be very different to make Archimate usable for the kind of business-oriented enterprise-architecture that so many more EAs are moving towards now.

So when I first found out about the revision for this new version, my attitude was ‘high hopes but not high expectations’. And that’s pretty much what’s happened – except that there’ve been some been very useful additions, some of them in places that I didn’t expect.

So for those of us working in whole-enterprise architectures, there’s good-news, and there’s bad-news. And there’s quite a lot of good-news, and nothing in the bad-news that we wouldn’t have expected, so let’s get the latter out of the way first.

Bad-news: there’s no fundamental move away from IT-centrism

The bad-news it that we’re still stuck with the same inane IT-centrism as before – right from the very first sentence of the specification:

An architecture is typically developed because key people have concerns that need to be addressed by the business and IT systems within the organization. … Architecture descriptions are formal descriptions of an information system, organized in a way that supports reasoning about the structural and behavioral properties of the system and its evolution.

There’s a lot more to any enterprise than just its IT-based information-systems, but in essence that’s all that this new version of Archimate would allow us to handle. And that annoyingly-arbitrary constraint is carried through into the same old pseudo-layering of Business, Application and [IT] Technology, in which ‘Business Layer’ is a similarly arbitrary and annoyingly-incomplete placeholder for ‘anything not-IT that might affect IT’. Not only absurd, but now seriously out-of-date for current EA practice – as even Open Group would freely admit, given the nominal focus of many of the presentations at the San Francisco conference and elsewhere

Sigh.

And they’ve used the same ‘plug-in’ concept for all the new add-ons as in the TOGAF 9 metamodel – which is a nice idea, but there’s nothing to support it in the existing Archimate metametamodel. So the result is that the underlying architecture has become yet more fragmented – which is going to make it even harder to do the fundamental rework of the architecture that must be done it’s to be usable forward into the future.

Oh well.

But that’s about the sum-total of the bad-news, and none of it was unexpected, so let’s move on to what is good in the new release.

Good-news: the Motivation extension

This wasn’t unexpected, but it’s still very good news: we can now link any architectural-entity explicitly to the reasons why it exists, and in a manner that allows for formal rigour between all of those interrelationships, roughly in line with the Business Motivation Model (BMM). The new entities are a subset of the BMM, but still eminently usable:

  • Stakeholder
  • Driver
  • Assessment
  • Goal
  • Requirement
  • Constraint
  • Principle

In the Business layer we can link these to the existing entities for Value and Meaning, to create a (mostly)-complete trail of derivation for business-purpose. No equivalents in the other two layers, but it probably doesn’t matter as long as entities there are linked up into the Business layer, either direct or via the new Motivation entities.

The only thing that’s bizarre about this is the whole idea of treating motivation as an ‘extension’, rather than core. To use Simon Sinek’s term, surely we should always ’start with why‘?

Good-news: the Implementation & Migration extension

This one’s likewise very good news, and I wasn’t expecting it at all. This gives us a means to model the dynamics of an architecture – the way in which the architecture itself undergoes change. Again the new entities here are only a subset of what we really need for this, but they’re certainly enough with which to get started:

  • Work-Package
  • Deliverable
  • Plateau (for example, an ‘intermediate state’ at some predefined time-horizon)
  • Gap

It does make sense to describe this as an ‘extension’, because we don’t need it to describe a particular configuration or ‘state’ of an architecture – though we do need it whenever the architecture is to change.

The really good-news about this is that it provides a nice graphic workaround for the fact that almost none of the existing toolsets handle architecture-dynamics in any useful way. And if the toolset-vendor implements the appropriate ‘hooks’, this would also provide a solid anchor-point for cross-links into project-management tools and the like. Nice.

Good-news: the Location entity, and other minor amendments

A Location entity had been included in the earliest iterations of Archimate, but for some unfathomable reason it was dropped long before the Version 1.0 release; it now makes a very welcome and very necessary return.

A glance at Zachman should give the reason why it’s so important: without it, we have no means to describe the ‘where‘ of the architecture, whether in virtual, physical or any other form.

The Location entity is arbitrarily placed in the Business layer – which makes no sense, of course, because location should apply to everything, but it’s probably the only way that it can be handled within that absurd IT-oriented ‘layering’. Despite that placement, it is allowed to connect with every other entity, mostly via ‘assignment’ or ‘association’ relationships.

The other oddity is that there’s no explicit distinctions between types of location – particularly virtual versus physical, which is extremely important even in IT-architecture. No doubt this can be handled within toolsets via attributes, but it is a distinction that needs to be addressed.

There are a few other clean-ups down in the Technology layer, mostly new types of IT-specific relationships for newer technologies. To me the most significant item is Infrastructure Function – significant mainly because its stated purpose is to reinstate some much-needed structural symmetry in the underlying metametamodel for Archimate.

What next?

The specification ends with a ‘Future Directions’ chapter, which summarises some ideas about what could be added in future. Which is all fine: except they still don’t include anything that would make it more usable for the non-IT aspects of enterprise-architecture.

At the very least, if Archimate is to be usable for what it purports to do, we need it to be able to cover the symmetric equivalents of Application and Technology in the non-IT space – and not try to dump it all into ‘Business’, where most of it does not belong. The core partitionings that we need in an architecture are:

  • role-type – passive-structure, behaviour and active-structure
  • asset-type – physical-object, virtual-information, human-relation
  • agent-type – physical-machine, IT-system and/or human-process

Role-type is the nominal core of current Archimate. But asset-types are in effect conflated into and scrambled within Technology, Application and Business layers respectively; and the only agent-type fully acknowledged is IT-system, with the others either ignored (physical-machine) and/or arbitrarily shunted into the Business ‘layer’ (human-process). This makes it all but impossible, for example, to use Archimate to describe business-process redesign or process-fallback where the existing or alternate implementation-methods would use machines or manual-processes; it makes it impossible to describe a business-continuity plan for a context where the IT is out of action; it still leaves it impossible to describe that logistics paralleling-problem between physical parcel versus information about the parcel. This are real needs in any viable enterprise-architecture, and we need a notation that can cover them. Hence, if Archimate is to be the notation of choice for EA, it needs to address these concerns: there is simply no other option.

From assorted snippets of conversation with various colleagues I know that such concerns are being explored in the discussions for the next version of TOGAF, currently code-named ‘TOGAF Next’. So if Archimate is to keep aligned with TOGAF, any putative ‘Archimate Next’ would have to follow suit. So I do still have high hopes for something useful and usable happening there; is it too unreasonable this time to have high expectations as well?

More on that enterprise-architecture ‘help needed’

August 15th, 2011 7 comments

Given the responses to my previous post ‘Guess I could do with some help here…‘, seems it’d be useful if I clarify a bit more what kind of help I most need. (Or we need, rather, as an industry and discipline: probably the only ‘I’-part here is that I seem to be one of the few at present who’s asking these questions?)

To be honest, we don’t need much help in thinking about the nature of enterprise-architecture or the like: that’s already well covered, and it’s actually quite straightforward anyway.

Where we need help is in rethinking the toolsets that we use for enterprise-architecture and the like.

To me it’s clear that if we’re to make sense of the enterprise, and support viable decision-making about the true whole-enterprise-scope within which our organisations operate, we’re going to need some kind of holographic approach to modelling.

We already have plenty of frameworks for enterprise-architecture. We also have plenty of methodologies to work with those frameworks. Each of those is constrained to some variously narrow view into this holographic space, and usually constrained by placing some particular point as ‘the centre’ – hence IT-centrism, business-centrism, health-and-safety-centrism and so on. And those constraints are useful in practice: no doubts whatsoever about that. So to my mind there’s nothing whatsoever that’s inherently ‘wrong’ about any of those frameworks or methods, other than their own occasional internal inconsistencies and than that they too-often position their own very limited perspective on reality as ‘the only possible’ view on reality. That’s the only problem there, and it’s very easy to fix, by acknowledging the value of a single viewpoint as a viewpoint yet also insisting on cross-viewpoint generics. We can choose anywhere as ‘the centre’, for some given purpose, yet must also insist that everywhere and nowhere is ‘the centre’, all at the same time.

Hence, as such, we don’t need any new frameworks or methodologies for enterprise-architecture. We have more than enough of them already, to be honest.

What we do need are better ways to manage and make sense of the information we have about this ‘enterprise-hologram’.

Which is where toolsets come into the picture. And that‘s the part that I really need help on – or we need help on, rather, because it’s definitely too large a context for any one person, or even any one group, to tackle on their own.

What we need most is clarity on the question we’re aiming to address. I think it’s an Einstein quote that says “if I had an hour to solve a problem, I would spend the first fifty-nine of those minutes on the question, and only the last minute on the answer” – because the right answer tends to fall out all by itself when we have clarity on the question.

One thing we do know, though, is that there are many different players all trying to tackle different aspects of the same enterprise-holograph – for example:

  • enterprise-architecture and all the other domain-architectures and solution-architectures – an emphasis on structure and purpose, and how they link together to deliver useful value
  • knowledge-management – an emphasis on how knowledge-items link together (especially narrative-knowledge, stories and ‘subjective truth’)
  • change-management – how everything changes and can be changed over time
  • process-management – how activities link together, and entities flow between them, to add value across supply-chains, value-networks and so on
  • service-management – the human and technical aspects of keeping everything going and ‘on purpose’
  • futures and other business-intelligence – how to trawl through the enterprise-space for sensemaking and the like
  • simulation, ‘gamification’ and other skills-development – how to apply ‘what-if’ to any part of the overall context
  • skills-management – identifying the skills needed, and the training and/or recruiting needed to cover present or future gaps
  • performance-management – identifying required metrics and their impacts (especially, to avoid ‘gaming the system’)
  • governance – identifying requirements and responsibilities, assuring assignment and ability to comply, and verifying compliance

In principle, yes, they’re all views or viewpoints into the same overall context. Yet each of those views also carries information or requirements that are specific to that view alone – in other words, more like an orthogonal dimension. And there are a lot of those distinct dimensions in there – an n-dimensional space, where n could literally be any number. (Certainly a lot more than are accessible in the simple flat images so typical of so many current ‘EA’-toolsets, anyway.)

Then there are all the different uses for all those distinct views: an architectural view shows us relationships between structure and purpose, for example, but do we need that view to decide on future strategy, to plan investment, to compare different implementation-options in trade-off analysis, to guide scenarios and substitutions in planning business-continuity and disaster-recovery? The views we’d use might at first seem similar, but the focus and emphasis and model-dynamics in each case might be very different.

At first glance this all might seem impossibly huge. Yet it’s not as hard as it seems. Most of the technology we’d need to deal with all of this complexity does already exist. Despite the huge spread of the overall toolset-ecosystem, most of the key software components we’d need are already easily available, at little or no direct cost, running on a wide-range of easily-available existing devices. Conceptually speaking, the underlying data-structures are straightforward enough: for example, it could be done with little more than freeform tagging in an object-database of some kind, with some kind of filters applied to the tagging. The same applies to search, and filtering: pretty much everything we need already exists somewhere, if we knew where to look. And even if display-technologies are not yet quite capable of showing a true n-dimensional holographic space, they’re certainly capable of simulating one. Given the right people and the right ideas, the technology side really isn’t all that hard these days.

But if the technology isn’t hard, the user-experience part is hard. And seems to me that that’s where we most need to focus our attention at the moment.

In many cases, we simply don’t have the right metaphors for model-relationships:

  • some of it can be usefully described as a matrix – but it’s definitely more than a simple matrix as per Zachman
  • there are some contexts in which a metaphor of hierarchical layers will sort-of make sense – but it’s definitely more than a simple ‘stack’ as per TOGAF or Archimate, or even a multi-axis matrix-stack as per CapGemini IAF
  • there are flows of information and materials – yet it’s much more than a simple supply-chain
  • there are identifiable relationships, including realisation, aggregation and so on – yet much of it tends to follow a modal logic of possibility rather than solely a simple true/false logic of presence or absence
  • there are identifiable trails of derivation and decomposition – yet there’s more to it than a simple Zachman layering, or the classic ‘current state’ versus ‘future state’

And perhaps more important, we don’t yet have adequate user-interface metaphors:

  • drag-and-drop for entities can be misleading – is it a class or an instance? how do we link back an instance back to a parent class? are we editing the instance only, or the whole class? are we affecting other instances elsewhere? or other versions of the same nominal instance? what happens if the parent disappears over time, but the instance continues as re-linked to something else?
  • notations can be confusing – especially where the same nominal entity would appear in multiple views with different notations or visualisations or images
  • aggregation (as in Zachman primitives versus composites, TOGAF ABBs versus SBBs [Architectural Building Blocks versus Solution Building Blocks]) can be very confusing – especially where entities can recombine in many different forms, and at different levels of abstraction or realisation
  • zooming (as per Prezi) works well to describe a ‘containment’ or hierarchical concept of structural-decomposition – but it’s hard to make sense, if entities aren’t fully ‘contained’, or if there are more than two orthogonal axes
  • timelines (as in Gantt-chart relationships, or Apple OS-X Time Machine backup/restore) provide a good means to step through time-related views – yet the views themselves may change over time
  • multi-axis user-controls work well for up to three or four exactly-orthogonal dimensions – but become exponentially harder to use with increasing numbers of dimensions and other variables, and probably cannot cope when the dimensions themselves blur into each other

In short, we urgently need new user-interface metaphors to navigate through n-dimensional holographic space, where the nature of the space itself may change as we go.

(Oh, and it has to be easy to use, too, such that both the navigation and what’s visible in the view will make immediate sense to anyone. Of course.)

To use another Einstein quote, “Everything must be made as simple as possible, but not more simple”. Simple to use; yet actively dissuade overly-simplistic ‘solutions’ such as IT-centrism and the like.

That’s the challenge.

And that’s also where Agile and the like come into the picture – and, most of all, people who are experienced in Agile-style software-development for toolsets and the like. We seem to have quite a lot of methodologists and the like around here, who tend to be great on the theory. But what we need most are developers who know how to think seriously-sideways and put it into practice.

We can’t just talk it into existence: we need to get past the ‘talking about it’ stage now. Given the blunt fact that we’re very unlikely to get it right first time, we need something to play with, to test in real-world practice, to review and rethink our ideas, to help us clarify what the question really is that we’re facing here.

More thinking-about-thinking, about the theory and the like, well, yes, we’re always going to need it, it’s always going to be a ‘nice to have’, and so on. But right now, we’ve done more than enough thinking-about-thinking: it’s time to get down to the doing, of creating this new kind of toolset.

Anyone interested in helping with that? Please?

Two kinds of Why

August 5th, 2011 14 comments

What is ‘Why?’ And why, anyway?

“Oh no, not again“, do I hear you cry? Actually, it’s not as bad as that: it’s not going to be yet another of those long tedious technical posts – honest! :-)

(It is a sort-of technical question, I’ll admit. And, in the event, quite long. But interesting to just about everyone, I hope.)

What do we mean by ‘Why’? It’s a question that’s been puzzling me for quite a while – not least because enterprise-architecture is in some ways all about the shared ‘why‘ of an enterprise, and how we express that ‘Why’ in practice.

That kind of ‘Why’ is energising, and engaging. “Start with Why“, says Simon Sinek – and in terms of how things really happen in enterprise, he’s right. If we start with why, things do indeed happen, and usually happen well.

But then I look at the ‘Why’ column in Zachman: ‘Why’ is business-rules, it says. Gosh. Wow. Exciting… (To be honest, my heart just sinks. Doesn’t yours?) Business-rules? – seriously, where’s the fun in that? Kind of the exact opposite of engaging, really. Something’s gone missing there, clearly…

That’s not quite fair, of course. Up at the top, Zachman describes ‘Why’ as a list of Goals. Not quite as unexciting as business-rules. (But close…) Yet there’s something kinda odd here… kinda like a sudden sideways jump… different things all mixed up together in the same space…?

And I hit up against the same problem when working on the Enterprise Canvas concept, a year or so ago. The same Start with Why: the ‘vision’ for the extended-enterprise is the core ‘Why’ from which everything else flows. That ‘Why’ is emotive, it means something: for the right kind of ‘Why’, people are willing, even eager, to get out of bed way too early on a cold dark dreary workday morning. It matters. It sits above everything else. And yet, to make sense of the content and activities of the service that we’d represent on an Enterprise Canvas module, there’s that same dull boring ‘Why’ again: decisions, principles, rules and regulations, all that kind of stuff. Where’s the fun gone? How come we’ve lost the why from the Why?

I’ve been bouncing up against an answer on this in several previous posts over the past while, such as one about principles in enterprise-architecture, and another on the relationship between architecture, design and implementation. But perhaps a better answer came up over the past couple of days, when trying to unravel the anatomy of Archimate and, in particular, struggling to make sense of the split between what in Archimate they call Intentional Concepts versus Extensional Concepts.

Intentional Concepts are, as the name suggests, about intent. Extensional Concepts are about what we do with that intent – about how we extend that intent out into real-world practice. In Archimate, Intentional Concepts are entities such as Value, Meaning and Reason. And the important point is that these are viewed as separate from ‘the action’. Yet down in the details of that ‘the action’, we again come across another kind of ‘reasons’ – all those business-rules and so on. (Archimate doesn’t model any of that as yet, but that’s another story.) So again we’ve got this kind of sideways jump: ‘Why’ is above everything, as Intent; yet it’s also just another part of that ‘everything’, as Extension, the ways things work together.

The obvious answer: we’re dealing with two different kinds of ‘Why’. Or two different sides of the same ‘Why’, perhaps.

One side of Why creates a question: literally, it starts a ’quest’. For most of us, that’s the exciting bit.

The other side of Why is the answer to the question, the end of the quest. That was the question, here’s the answer: The Decision. End of story. For most of us, that’s when the fun ends: a sense of relief, perhaps, that there’s no more need to quest, but also, well, no more need to quest… Final. That’s it. Full Stop. (or Period, if you speak the US version of English). An ending, that somehow ends up in a bunch of rules, with No Questions Allowed any more. A Why To End All Whys.

Kind of like the braces round a mathematical function: a=func(x,y) and all that. The opening-brace ( begins the question: what’s x? what’s y? what do we do with them? – exciting, new, gosh, wow! And then we hit the closing-brace ) that ends the question: its kind of ‘nothing more to say’, really. We have the answer, the decision. Nothing more to do. Oh. Oh well. (Except that in much of maths, and in computing too, we have parentheses within parentheses within parentheses: q=some(func(x,y), also(y,z, andalso(b,c))) – quests within quests! Fun within more fun – hooray! :-) )

So we do have two different kinds of ‘Why’ – and they go into different places in our architecture.

One kind of ‘Why’ – the question, the ‘(‘ – goes above the Zachman space, goes above the Enterprise Canvas, goes into Archimate as intention. Think of it as a row above everything, or a backplane, or something like that: whichever way we view it, it pervades everything.

The other kind of ‘Why’ – the ‘)’, the decision – goes into the Zachman space as just another column, goes into Archimate as extension. Each decision is specific, explicit: it literally cuts off other choices in that context. We can connect it to things, show how it affects other things, but it doesn’t pervade everything in the way that the question does.

In that sense, it does make sense to put them in different places. (And also – very important – not to forget the intention. Zachman ignores it, or loses it somehow in its strange sideways jump; Archimate all but abandons it, when it squeezes all of its Intentional Concepts into the literal meaninglessness of Passive Structure; and Business Model Canvas doesn’t even bother, but seemingly assumes that the only ‘Why’ that matters is ‘How do we make money?’ The ‘questing Why’ is literally emotive, the source of all motivation: if we don’t explicitly include it in our enterprise models, we’ve just shut out any reason for anyone to be engaged in our whatever-it-is. Perhaps not a wise mistake…?)

In another sense, though, it’s still the same ‘Why’. Just different faces – or phases – of the same quest. That’s where so much of the confusion comes, because often where we place it is more about how we choose to look at it than anything else. Looking ‘downward’, we see a stream of decisions: “because so-and-so… therefore… therefore… therefore…”. Looking upward, we see a stream of reasons: “because… because… because…” – ultimately ending up in the the unquestionable ‘Because!’ of the enterprise-vision or whatever. (I tend to place only that ultimate ‘Because!’ and its immediate implied-values as that uppermost layer of the enterprise-model; everything else ends up at various levels of that Extensional side-column of ‘Why’.) The Knowledge Genes structure also describes this Janus-faced relationship well, though in a different way: move leftward towards the question of Why, rightwards towards the decisions of How. The same ‘Why’, and yet different; a different ‘Why’, and yet the same.

Two kinds of ‘Why’.

That are also the same ‘Why’.

Now why is that, I wonder…? :-)

Unravelling the anatomy of Archimate

August 4th, 2011 20 comments

The Archimate notation aims to be the standard to be used by everyone in enterprise-architecture and related fields. But what exactly is its anatomy – its underlying structure? And if it’s aimed at enterprise-architecture, what is it about that structure that makes it seem only to support IT-architecture, and in such an awkwardly IT-centric way?

(Apologies, folks, because, yes, this is going to be another one of those very long, very technical posts… Skip it if you’re not interested, of course, though I believe this actually is important for anyone involved in enterprise-architecture and the like.)

Read more…

Assets and Resources

August 1st, 2011 No comments

More on translating Business Model Canvas to Archimate etc. (Yes, it’s another of those long, interminable technical posts – my apologies, though they are necessary…)

This one picks up on a couple of sort-of-mistakes that I’ve made in the previous post, ‘Questions on business-model to enterprise-architecture‘, and which need a bit more clarity in explanation. In particular, it’s about specific points in relation to two of Stuart Boardman’s questions:

  • an Asset as a type of a Resource – specifically as a Resource for which “the respective service is responsible”;
  • a Capability also as a type of Resource.

A key part of this relates to what goes into the Key Resources section in Business Model Canvas, and how we translate and model the respective items in Archimate.

This will no doubt be another long one – sorry… – hence more after the ‘Read more…’ break.

Read more…

Questions on business-model to enterprise-architecture

July 31st, 2011 2 comments
Following up on one of the previous posts on Business Model Canvas and Archimate, British/Dutch enterprise-architect Stuart Boardman sent in a comment with a stream of questions that it seems would be worthwhile to reply to in detail here.

You advocate starting (“for now”) with one Business Service. How are we to determine what this business service represents? If the typical enterprise had one single, tightly defined core business, it would be easy but as that’s not usual, I’m unclear how one would define this.

In the adaptation from Business Model Canvas to Archimate, if we start with one Business Service entity, that entity would then represent either the business-model as a whole, or else one of the subsidiary models in a multi-part business-model. If the latter, we would come back later and build equivalent cross-maps for the other subsidiary models. We ‘define’ the service only in the sense that we choose that as the place to start modelling: the content for that ‘service’ is defined already from what we’ve developed on the Business Model Canvas.

The reason for starting just with one Business Service entity is that, when we first start doing this kind of cross-map, it’s often complicated enough already just with the one. As we gain more experience with the cross-map process, we can go straight to a model that looks more like a real-world structure right from the beginning, but that level of detail can often seem overwhelming at first – especially to others when they see the model for the first time. We’ll almost certainly need to decompose it into multiple Business Service entities later, but it’s best to keep it simple at the start! :-)

Why did you pick Activity as the genericization of Application? I see an activity as a much more fine grained thing. (IT) Applications typically perform many activities (and I’m only talking about externally visible activities here). That’s actually one of the reasons I am uncomfortable about the IT focus on applications rather than services. But that’s another discussion. This point might just be semantics, in which case don’t worry.

To use the famous phrase, “it seemed like a good idea at the time”… to me there’s nothing special about that choice of ‘Activity’ versus any other equivalent term. The main point was that I wanted a term that could describe the same something-being-done, as done by any combination of real-people, machine and/or IT – not just the strongly IT-oriented term ‘Application’.

You say a Capability is “the ability to work on specific types of asset”. Can you give an example? I’m not following what you mean by “working on” an Asset.

This relates to part of the rework I did some time back on making the Zachman columns fit more closely to what happens in the real-world, and specifically relates to what Zachman describes as the ‘Who’ column. To me Zachman’s column-structure has never made sense, because it kind of randomly conflates different things into the same spaces, and the ‘Who’ column is particularly problematic. Business-folks also tend to use terms such as ‘process’, ‘service’, ‘function’, ‘capability’ and even ‘unit’ as almost random sort-of-synonyms for each other but at different levels of abstraction or decomposition – a further muddying of the waters that really doesn’t help when trying to disentangle the resultant mess!

There are several fundamentally different things going on in that context:

  1. What is being changed or used or referenced or otherwise worked on or worked with;
  2. The rules that govern what changes are to take place, and how those changes should take place;
  3. The ability to work on (create changes to) whatever-it-is;
  4. The ability to make appropriate decisions about how those changes are taking place (the skill-level or decision-level).

Item 1 is what I term an Asset – more about that in a moment, when we look at Stuart’s next question.

Item 2 is what I term a Function, because it’s essentially as in a mathematical function – a=resultofdosomethingwith(x,y). It defines the parameters that will be used (i.e. providing labels for Asset-types), but in essence everything else is encapsulated inside the function (i.e. black-box).

The specific combination of item 3 and 4 is what I term a Capability, because it’s the ability to do something at a specific level of skill and decision-making. (This is similar to the way that Stuart defines it below – “the ability to perform some activity/task/service” – but with a bit more specificity and taxonomic precision.) In the human context, capabilities are often clustered or bundled into Roles and/or Responsibilities – the latter of which are, literally, ‘response-abilities’. That’s the human side of skill and ability, which is why it fits as more consistent meaning at the detail-layer than Zachman’s ‘Who’.

We bring a Function and a Capability together to form a Service. On its own, a Function is always abstract: it needs a Capability to make it actually do something. And on its own, a Capability literally has no function: the Function provides a context in which the Capability can be put to work. A Service may present the same Function interface but with different underlying Capabilities – hence, for example, a Service that can handle any level of insurance-claim, with low-value claims processed entirely by IT-based Capability but higher-value claims requiring human intervention with a different Capability implementing a higher skill-level and decision-making authority.

A Process is just a sequence of changes provided by Services, that are regarded as related in some way (hence ‘choreographed’ etc). It may be a predefined sequence (as in most IT-driven processes); or it may be almost entirely freeform, requiring high skill-levels; or anywhere between those two extremes, using any appropriate combination of human, machine and/or IT capabilities.

This is yet another example where IT-centrism has scrambled people’s understanding of what’s actually going on here. The problem arises because Function and Capability and, often, Process, are all blurred together within a software-application, whereas in a human or even a machine context the distinctions are much more necessary and explicit. We need to be able to distinguish between them for key architectural concerns such as trade-off analysis for implementations or load-balancing, and business-continuity/disaster-recovery.

When you say an Asset is a Resource for which “the respective service is responsible”, how do we determine which service that is and what does responsible mean?

A Resource is simply something that can be used in some way: anything that exists in some form or other is a potential Resource for some kind of business-model. A resource becomes an Asset within some type of ownership-model: in the crudest possible sense, it’s an Asset if we own it. Some things – air, for example, or time – can be resources but can’t be Assets because we can’t own them as such.

We then hit up against the complexities of contrasting different ownership-models, particularly possession-based (i.e. what we’d usually think of as ‘property-rights’) versus responsibility-based. I won’t go into those distinctions in detail, but in essence all of this actually revolves around roles and responsibilities. The whole point of the business-model is we say that we will deliver the Value Proposition via the Channels to the Customer Segments. If we expand that statement into more precise taxonomic detail, what it means is that we declare responsibility (‘response-ability’) to deliver value to the shared-enterprise, by doing something (Key Activities) with Assets (i.e. resources for which we also have responsibility), and then, via some defined mechanism (i.e. Channels), passing the responsibility for those value-added Assets to the enterprise-stakeholders referred to as ‘Customer Segments’. That second definition probably seems horribly long-winded and pompous, but that’s the level of detail that we actually need when we’re going to design a real-world implementation.

I’m uncomfortable with Capability as a Resource. A Capability seems like an abstract concept, the ability to perform some activity/task/service. A resource is something that gets used – whether consumable or not. I realize that, if I’m right, we may have a gap in the Business Model Canvas, which doesn’t seem to have a place for Capabilities.

Perhaps the best way to explain this is that well-meant phrase “Our people are our greatest asset”. (In reality, it’s the relationship with the person that is the asset, but that’s another story.) The point here is that the skills and abilities of the person, the machine, the IT-application or whatever – the set of available “ability to perform some activity/task/service” – is definitely “something that gets used” in the organisation, and hence ‘resources’ from the organisation’s perspective. So it’s not a gap in the Business Model Canvas – it’s what we would include under the Key Resources banner.

In fact in general one of the things you’ve done (deliberately or otherwise) is to highlight a weakness in the Canvas, when it comes to dealing with extended enterprise. I mentioned this in another comment. Of course it’s possible but it requires one to think outside of the boxes (boundaries) in the Canvas. In particular the relationship with Partners seems to be unidirectional and rather more resource than service based. By doing the mapping this becomes clearer. So either we say that it’s OK just to work with the Canvas’s implicit support for extended enterprise or we need to address that (or rather ask Alex Osterwalder to do so). The first option means from my perspective that we then need to find a way to handle it explicit in the Archimate (or any similar) mapping. You were dealing with some of these issues in your post on non-profit enterprises and the Canvas.

There’s a real danger of being unfair here, so I ought to reiterate that Business Model Canvas works very well indeed for the task that it was designed to do. That task is about getting people to think and innovate about how their business-model operates, in a kind of integrated, big-picture way, all with the simplicity needed for rapid brainstorming and pre-prototyping and the like in a free-form workshop or cafe context. To me it’s a business-architecture tool, with a very specific purpose: we really have no right to complain that it isn’t a good fit for whole-scope enterprise-architecture, or for detail-layer implementation, because it was never designed for those kinds of uses.

If we need to link it into methods and tools and the like for those other uses, it’s our responsibility to get those cross-mappings to work – not Alex’s. That’s what this bunch of posts has been about: going downward to Archimate and suchlike, and upward to Business Motivation Model and beyond.

The same applies to using Business Model Canvas for business-models for government or non-profits. The fundamental structure of the Canvas is geared towards commercial organisations, and there’s nothing wrong with that. If we want to use the Canvas outside of a commercial context, it’s our responsibility – not Alex’s – to make the appropriate amendments. (Alex did set up a website a couple of years back to explore ‘business-models beyond profit‘ – and although it doesn’t seem to have gone any further in the last eighteen months or so, I know he does have a deep personal interest in that space.) So again, we do need to be fair here.

The only ‘weakness’ in the Business Model Canvas as such is its implicit asymmetry on the Key Partners side of the model: in my opinion those relationships need to be understood as exactly symmetrical with the Customer Segments side, not least because we can make or break a business on supply-side as easily as on customer-side. That asymmetry also makes it more difficult to visualise a full supply-chain, or the role of the business-model within an overall value-network. Much the same applies to its orientation towards resources rather than services, and (especially in the Canvas’ implementation in the BMTBox iPad app) the low priority given to modelling of flows and transactions.

But I do acknowledge both of those as trade-offs to preserve simplicity: that kind of structure does make it easier to focus on this organisation’s business-model, without getting too distracted by anyone else. For the Enterprise Canvas, I made different trade-offs: it’s explicitly symmetrical, and it’s explicitly designed around services, but it is also more complex – especially once we use it to go into recursive service-decomposition or inter/intra-service coordination or flows-modelling or role-mapping or values-dependencies and the like. It’s designed for those uses, and Business Model Canvas isn’t – but that doesn’t make Business Model Canvas ‘wrong’ as such. Using Enterprise Canvas for multi-layered enterprise-modelling also requires a different mindset and skillset, than those needed for roughing out business-models on Business Model Canvas – the difference between whole-enterprise architecture and domain-specific business-architecture, in fact. Sure, we can use Enterprise Canvas to develop business-models, and it actually fits that need very well: but it’s not specifically designed for that purpose – whereas Business Model Canvas is. ‘Horses for courses’, really.

I hope that makes some degree of sense, anyway, and that it answers those questions well enough for now?

Why business-model to enterprise-architecture?

July 27th, 2011 3 comments

Yes, I admit it: I’ve been kinda pouring out the posts lately. Sorry…

But why all this fuss about business-models and enterprise-architecture? What’s the point about the bottom-line not being the baseline to work from? If everyone’s selling something to someone, is there really any difference between a for-profit and a non-profit business-model? And who would want to go from Business Model Canvas to Archimate, anyway? Is anyone interested in any of this technical stuff?

I suppose it all comes down to this quote from Chris Potts:

The devil is in the detail, but the angel is in the architecture.

People like building business-models. It’s wonderfully abstract, and it’s fun – like playing with model-trains, where the passengers are only imaginary and the trains really can run on time. Unfortunately (or fortunately?) the real world is a bit different from that…

Real-world detail can break the best-looking business-model without even breaking out a sweat. We need to know that detail – or at least have a better sense of that detail – before committing ourselves and others to a lot of hard work and ultimate heartache.

Yet we also need to avoid drowning in the detail – otherwise we’ll never get started. Analysis-paralysis, and all that.

Which is where architecture comes into the picture. Formal discipline, yet without overt formality. Patterns help us break through the problems. We simplify, without being simplistic. And we model to reduce the muddle, to cut through the chaos and complexity of all that devilish detail.

Perhaps even more, it’s about the story: the story of each action, and the story of the enterprise itself. If we get clear on the story, the sensemaking becomes a lot simpler.

As I understand it, architecture comes down to a single idea: everything works better when they work together, in pursuit of purpose, a clear aim in mind. Everything connects with everything else. It’s the detail of how everything connects with everything else, of how we get everything to work with everything else, that I’ve been focussed on here.

A lot of detail, I know: but sometimes that is the nature of the beast. Fact is that architecture isn’t all nice pretty abstracts and nice pretty pictures – sometimes there is a lot of petty picky detail, and sometimes we just gotta face that fact… sorry… :-(

Hope it’s been useful to someone, anyway?

Business Model Canvas to Archimate (the short version)

July 26th, 2011 8 comments

The previous post, ‘From business model to enterprise-architecture‘, turned out to be another of my monster essays. Sorry… :-(

The detail’s there if you need it, but if you just want to do the translation from Business Model Canvas to Archimate, without worrying too much about the ‘Why’ behind it, here’s the short version.

Step 1: Start with a business-model on Business Model Canvas

That part’s straightforward enough for most folks here, I imagine?

Step 2: Separate out the players on the business-model

Start an Archimate diagram at the Business layer (the ‘Why’ layer).

Represent each Key Partner from the Business Model Canvas by a Business Actor entity on the Archimate diagram.

Likewise, represent each Customer Segment by a Business Actor entity.

(We will also need Business Role and Business Interface link-entities for each of these business-actors, but we’ll come back to that in a moment.)

The remaining cells of the Business Model Canvas – this organisation – can for now be represented by a single Business Service entity.

Step 3: Expand the detail for the interfaces of the business-model

Represent each Value-Proposition offer by a Product entity, optionally with an associated Value entity to describe why this offer would be of value to a customer-segment. Link these Product entities to the organisation’s Business Service.

Represent each Customer Relations item and Channel with the following:

  • Business Interface entity, linked on one side to the organisation’s Business Service, and on the other side to a Business Role assigned to the respective customer-segment Actor
  • Business Interaction entity, also linked to the Business Service and to a customer-segment’s Business Role
  • Business Object entity – indicating the content of the flow between the organisation and the customer-segment, optionally associated with a Meaning entity and/or Contract entity – linked to the respective Business Interaction

Represent each Revenue Stream in a similar way, as a ‘back-channel’ through which value is returned to the organisation. Each back-channel will include its own Business Interface, Business Interaction, and Business Object, with the latter probably linked to the same Contract as for the respective Business Object in the main transaction channel.

Repeat the same process on the supplier-side, with matching Business Interface and Business Role entities for each Key Partner, and Business Interface, Business Interaction, Business Object and Contract entities for each external Cost Structure item. The respective channels and supplier-relations services are only implicit in Business Model Canvas, but you’ll need to add the respective Business Interaction and Business Object entities on that side, together with any needed Contract entities.

Step 4: Expand the Key Activities

Extend the Archimate diagram down to the Applications layer (the ‘How’ layer). In particular, we’ll use this layer to model the Key Activities in the Business Model Canvas.

We have a problem at this point: Archimate’s ‘Applications’ layer only knows about IT, and we need it to cover a much broader range of types of ‘How’. This is because an activity in a business-model could be done by any combination of people, IT and ordinary machines, and to understand the trade-offs between different ways of doing things – different types of ‘How’ – we need to model them in much the same way in each case.

To do this, we need to change the Archimate entities for this layer from the IT-specific ones in the standard, to more generic ones that will work with any type of implementation. In most cases, all we need to do is change the prefix of the name from ‘Application’ to the generic ‘Activity’. This gives us the following entities to model our Key Activities:

  • Activity Object (generic of Data Object): represents an object (or subject) to be created, accessed, changed, deleted or otherwise worked on in a business-activity – may be physical, virtual, relational or any combination of those as required
  • Activity Service (generic of Application Service): the ‘exposed’ part of an activity that connects with a Business Function in the Business layer
  • Activity Function (generic of Application Function): a ‘chunk’ of activity that is visible only within this layer
  • Activity Interaction (generic of Application Interaction): a unit of behaviour where two or more components or modules come together to act on an Activity Object
  • Activity Interface (generic of Application Interface): a point where an activity can connect with its environment – particular to access or exchange Activity Objects
  • Activity Module (generic of Application Component): a defined unit of activity in a structural sense, such as specified in an ISO9000-style Work Instruction
  • Activity Collaboration (generic of Application Collaboration): a temporary configuration of two or more modules to perform collaborations

Link these entities as appropriate, using the respective standard Archimate relationship-links.

Step 5: Expand the Key Resources

Extend the Archimate diagram down to the Infrastructure layer (the ‘With-What’ layer). In particular, we’ll use this layer to model the Key Resources in the Business Model Canvas.

One of the frames we use extensively in our own enterprise-architecture is an extended and adapted version of Zachman, which uses the categories Asset, Function, Location, Capability, Event and Decision. In general, the Key Resources section in Business Model Canvas relates to Assets, Locations (physical, virtual, relational, and various combinations), and Capabilities (the abilities or facilities used to the work or within which or through the work takes place).

Again, the Archimate standard only knows about Assets, Locations and Capabilities that relate to IT: we need to extend this to include any other types we may need in the business-model – including buildings, machines, and individual people’s skills.

An Asset can be defined simply as a resource for which the respective service is responsible and can put to use as required.

A Capability is the ability to work on specific types of Asset using a specific level of competence and skill.

A Location is a node within some type of location-schema. Locations may be of any asset-type or resource-type, or any combination of these.

A network is a schema that describes a set of Location nodes, specific relationships between those nodes, and, often, the types of Assets than can be transferred on pathways of connection between those nodes.

An infrastructure is thus a clustering of Assets, Capabilities and Locations, often in network-relationships.

Given these, we would represent the Key Resources via the following Archimate entities, adapted as appropriate:

  • The Artifact entity may represent any type of real-world Asset.
  • The Infrastructure Service entity may represent the exposed available behaviour (Capability) of any cluster of related Assets, Capabilities and Locations, linked to any Activity Function in the Application layer.
  • The Infrastructure Interface entity can represent the exposed interface for an Infrastructure Service, as linked to any Activity Interface in the Application layer.
  • The System Software entity is merely one very specific example of a generic Capability entity, and can be used (preferably retitled) to represent any Capability.
  • The Device entity represents a type of Asset that can be used in and for specific activities, as ‘active structure’: a hammer, a power-drill, a fork-lift truck and an ordinary ‘dumb’ telephone are a Device in this sense.
  • The NetworkNode and Communication Path entities respectively represent a schema for connections between Location nodes, a node within that schema, and a connection-path through which specific types of Asset (Artifact entity) may be transferred between nodes.

As in the Application layer, the types of relationships that Archimate permits between these more generic entities and their derived specialisations should remain essentially unchanged.

Step 6: Apply enterprise-architecture disciplines as required

Use standard enterprise-architecture techniques – such as the methods and tactics outlined in TOGAF Phases B-D – to review the resultant architecture portrayed in the Archimate model(s), and make any recommendations for changes to the business-model itself.

Use standard project/architecture techniques – such as the methods and governance outlined in TOGAF Phases E-G – to define and monitor change-projects to implement the agreed business-model.

From business-model to enterprise-architecture

July 26th, 2011 7 comments

Okay, I think I’m finally getting somewhere, on looking for a way to connect a business-model to enterprise-architecture, to provide a full link between top-down intent and bottom-up real-world constraints.

This specific part goes from the business-model downwards, from Business Model Canvas to Archimate, and thence to BPMN, UML and other detail-layer models. (There’s another part needed to link upward, connecting that work back up through Business Motivation Model and the like to the core shared-enterprise, but I’ll have to deal with that in another post.)

As you’ll see, I’ve had to twist Archimate somewhat in a few places, to provide workarounds for its current IT-centrism, but otherwise everything exactly follows the existing standards. The keys that enable and to some extent validate those adaptations are two assertions:

  • everything is a service (an assertion supported explicitly by the design of Archimate itself)
  • everything is recursive (a principle that enables pattern-based modelling, such as the concept of ‘layers‘ used in Archimate, TOGAF etc)

The ‘how-to’ that follows after the break is the current outcome of a lot of exploration over the past weeks, months and years, a lots of posts and conversations on this blog and elsewhere, and a lot of in-person discussion with a lot of people, many of whom have explicitly asked to remain anonymous. I do believe it’s in a usable state right now, but it should still be regarded as ‘in beta’ at best: use with some caution, and please send me any feedback and suggestions.

In parallel with both Business Model Canvas and Archimate, this may be considered to be under a Creative Commons licence. It’s probably not yet stable enough to attach to a CC license-type in a formal manner, but for now please assume non-commercial, share-alike and attribution-requested for the parts described here.

More after the ‘Read more…’ break, anyway.

Read more…

Rethinking the layers in enterprise-architecture

July 25th, 2011 26 comments

Still plodding away on ideas for a systematic process to translate a business-model in Business Model Canvas down into real-world architecture and implementation. (This links up with quite a few previous posts, such as ‘More on business-models‘, ‘Enterprise-architecture – let’s keep it simple‘ and ‘Is Archimate too IT-centric for enterprise-architecture?‘)

[Note: this is a work-in-progress post, not a finished piece - I really do need discussion on this one!]

What’s come up this time is the usual struggle with the so-called ‘architectural layers’ in common EA frameworks such as TOGAF and Archimate:

  • Business
  • Applications (in Archimate) or Information Systems (in TOGAF)
  • Infrastructure

The problem is that, for me, these are ridiculously incomplete, and lead directly to IT-centrism – where IT is deemed to be the sole centre and basis for everything. That IT-centrism what creates most of the much-lamented ‘business/IT-divide’.

The corollary is that, because IT is placed as the centre for everything, and applications only run on IT, everything else has to be lumped into ‘business-architecture’, because it’s the only place it can go. Hence in TOGAF, for example, high-level business-strategy is bundled together with mid-level process and detail-level manual work-instruction, without any kind of distinctions between them, solely because it’s ‘not-IT’. And technology and infrastructure that isn’t computer-based – lorries, fork-lift trucks, assembly-lines, plumbing and wiring and even the buildings within which everything operates – don’t even get a mention anywhere.

This brings serious problems even in IT-specific architectures: for example, how can we usefully describe the overall architecture of a data-centre without mentioning power-supply or cooling or access-pathways? What’s the point of arguing about instant-on virtualization for data-servers if it takes a minimum of six months to construct the building that houses them? How do we describe disaster-recovery processes for when the IT is out of action, when the only metamodels available to us can only describe IT? To anyone doing real enterprise-scope architecture in the real-world, the myopic inanity of IT-centrism gets really frustrating after a while…

Hence why I’ve been ranting and raging so much about the limitations of TOGAF and the like over the past few years. It’s not because I’m ‘anti-IT’ – as some people have dismissed me – but because I’m trying to get things to work in the real world. A messy, chaotic, uncertain world in which IT is often unreliable at best, irrelevant at worst, and which, for the most part, is not centred on IT. Sigh…

So, in short, the conventional concepts of so-called ‘business-architecture’ are an unusable mess, and the ‘application’ and ‘infrastructure’ so-called ‘layers’ are too narrow in scope to make practical sense for anything other than the most IT-centric of IT-architectures. Hence, also in short, not so much useless as probably worse-than-useless for most real-world purposes.

Which means that we need to start again. Properly.

But from where? Using what as the layers?

(Or do we even need layers at all? Is even the idea of ‘layers’ misleading?)

There’s the Zachman layers, of course: Contextual, Conceptual, Physical, Logical, Implementation, Operations. That does make practical sense as a description of the process of change, but perhaps not so much about the architecture itself – the interrelated, interconnected structure of that which is in use.

What about structural-decomposition – from abstract to detail? Well, yes, that’s useful, certainly, but it doesn’t really tell us much more than Zachman does, and doesn’t help us to differentiate between different kinds of ‘thing’ – the distinctions that come up, if somewhat erratically, in Zachman’s columns of What, How, Where, Who, When and Why.

The ‘Why’, though, does lead to another suggestion: Simon Sinek’s principle of ‘start with Why’, and its layering of Why, How and What.

Because if we start with Why, and tweak the ‘What’ slightly to ‘With What’, we end up with an almost exact match to the Archimate / TOGAF layering – but this time a layering that is not IT-centric. And which also lines up with key parts of the Business Model Canvas:

  • Why? – about the choices and Value Propositions that drive ‘the business of the business’
  • How? – about IT-applications, ‘manual’-processes and any other Key Activities that enact those choices and needs
  • With What? – about any machines, equipment, buildings and other infrastructures and Key Resources upon which or through which those activities take place

At first glance this has some parallels to the long-established CapGemini ‘Integrated Architecture Framework‘ [IAF]:

(I have a vague recollection that there’s at least one more EA framework that uses a similar Why / How / With-What structure, but right now I can’t remember whose it is… :-( – my apologies to that person, anyway.)

But if we look more closely at those layers in IAF, it’s clear that they’re just a re-labelling of Zachman layers, with the old TOGAF-style layers sideways-on, and deeper ‘cross-cutting themes’ such as security and governance further behind. (And actually that’s quite a good way to put it – which we’ll come back to in a moment.)

The point here is that if we use that Sinek-style categorisation of Why, How and With-What, we can cover just about anything that’s needed in the architecture: it doesn’t assume that the end-point is only about IT. And it still lines up well to Archimate: hence business-information (linked to Why) is represented in Archimate as a Business Object, its usage in processes (linked to How) is a Data Object, and its physical form (as a With What) is a Representation. Archimate doesn’t as yet have any entity to represent generic ‘physical Thing’ or ‘thing that flows through processes’ – such as we’d need to represent a parcel in a logistics context, for example – but the Why / How / With-What structure makes it easy to understand that Representation, Data Object and Business Object are just IT-oriented specialisations (in the UML sense) of each of the respective generic entities. It works. :-)

But should we use layers at all – especially scope-defining layers such as ‘business’, ‘application’ and ‘infrastructure’? In a sense, the IAF suggests not – any fixed notion of ‘layers’ is misleading. A better way to describe is to say that the ‘layers’ are merely areas of emphasis of attention: we separate those areas in order to ‘black-box’ the internals of an area of scope so as to focus our attention on the interfaces between those areas of attention. The IAF shows a very good way to visualise this, with sets of viewpoints that are in effect orthogonal to each other. The only problem there with the IAF is that, yet again, it constrains the overall scope to IT alone – which renders it too limited for whole-enterprise architecture. If we imagine that, rather than that catch-all column labelled ‘Business’, we could have as many columns as we need – and as many ‘backplanes’ that we might need, equivalent to the existing ‘Security’ and ‘Governance’ but covering all values in context for the enterprise – then something like IAF would make good sense.

I would suggest, though, that that simple categorisation would be a good place to start:

  • Why – ‘business’
  • How – ‘applications’
  • With What - ‘infrastructure’

Use each of these not-quite-layers as a viewpoint for focus into the overall enterprise context, and use an adapted version of Archimate or an equivalent to model both within those ‘areas of interest’ and to explore the connections between them.

Okay, that’s it for now: over to you, if you would?