Business processes are used commonly for a long time. Most of the architecture community is using different notations for describing business processes. It doesn’t matter if it’s a known standard such as BPMN or custom notation, we are all finding ourselves describing business processes which are taking place in our enterprise.
Business capabilities, abilities or function are less common, although they might be more important to us as enterprise architects. If you want to understand why business capabilities might be more important to you, keep on reading this short post.
There is a basic difference between business capabilities and business processes. The first is “What” the business can do in order to reach it business goals and objectives, while the second is “How” the business is doing those abilities, or what are the actions that taking place in order to do each one of those capabilities. For example, we as human have capability of reading. In order to do this capability we need to see, understand characters, combine them into words and combine words into sentences. Needless to say that it’s much easier to grasp and describe business processes (or how we’re doing task) rather then thinking what are the capabilities that we need in order to reach our business goals and objectives. It’s easier to ask people what they are doing and simply to document it by following any description language.
Capabilities, on the contrary, are more difficult to deal with. They are more abstract, and everything with higher level of abstraction takes more time and effort. But, capabilities have one huge advantage. What the business is doing is rarely changed while how the business is doing it tend to change a lot. If we’ll get back to humans, the ability to read always exists. Reading might be achieved differently by blind people, but they still have the ability to read.
For enterprise architects who are building agile architecture it seems that abilities (which rarely changed) are more important then business processes (which tend to be changed). The ability of enterprise architect to command his enterprise capabilities is vital to create agile architecture that will support business changes over time. To better command your enterprise business capabilities set what are the basic attributes that each one of your enterprise capabilities should have and assign them values. After understanding capabilities start to map and model the processes that the enterprise is doing to achieve those capabilities. If you’ll define the right capabilities and their attributes you can turn them into services that your enterprise need in order to reach it goals and objectives.