One of the
interesting problem within an typical enterprise is the issue of lost in
translation.....basically objective of building business capability and
corresponding IT capability normally tends to get lost during flow of
activities across teams (say...Business --- Enterprise Architects ---- Project
Architects ---Technical Leads --- Designers --- Developers). Now the question
is why is it happening? Obvious answer is decision taken at each level is not getting
properly communicated and adhered to. At the same time, there is no obvious
mechanism to detect this failure early enough to avoid any accident.
Let’s look at an analogy. Say "God" has given you
the responsibility to create a new solar system with planets like Earth and
also with built-in cities and towns with all amenities including housing. Now
"God" wants to validate if everything is created as per his vision …..basically
by looking at different views from planets to continents within the planet to
countries within the continent to states within the country then to
cities within the state. If you had designed with tools with
features like Google Maps which will provide ability to zoom into details
starting from high level view of planets to continent to country, then could
zoom into state level, then zoom into city level ...zoom into detailed view of
city.....it will clearly show how things are tied together. Beauty of
such a model is that all the views are intrinsically tied together
which ensures design decision at various levels are implemented as planned.
Now coming back to the problem....in IT, as we know each
team creates different models(like business motivational model,
business process model, service model, security model, information model,
component model plus others) which is best suited to convey their decisions.
One of the inherent issue is there is no standards that tie together those
models in terms of relationships between elements across the
models, trace-ability between models. This is because most of
standards are defined by different groups for a specific problem and there is
lack of standards that tie them together unless you use single standard like
UML alone. But UML alone is not enough to capture all aspects of business
and IT capabilities. Another aspect is about diagram interchange as
each team may be using different set of tools with support for subset of
adopted standards. (For instance, component designer may be using uml modelling
tools which may not have support for BPMN standards.) This is also adds
to the problem as all relevant models may not be available within a single tool
so context get lost. To address the problem, I would suggest following as steps
- Adopt modelling
standards at enterprise level which aids intrinsic interoperability
- Bring in
internal modelling standards for bridging the gaps in areas
like relationships between elements across the
models, trace-ability between models.
- Adopt tools
which support almost all modelling standards adopted at enterprise level.
At the same time, places where there are gaps...build utilities which
enables diagram interchange or creates some kind of mapping information
As a long term solution, there should be standard which ties various
models which is required in a typical enterprise. Hope to see some
activity in standards body on the same.
No comments:
Post a Comment