Abstractions are a
two-edged sword in software architecture. Their power must be
weighed against their propensity to ask too much from stakeholders, who may not have the time or inclination to fully internalize them. Unfortunately most
abstractions require internalization for appreciation of their power.
In mathematics, consider the power of Euler's equation
and contrast it with the effort involved to understand what its simple looking component symbols represent. In music, consider the power of the
Grand Staff to represent musical compositions and contrast that with the effort required to understand what its simple looking symbols represent.
Both of these abstractions are
both very demanding and very powerful. It is not uncommon in software
architecture for the practitioner community to enjoy and be
comfortable with constantly internalizing new abstractions. However,
in my experience, a roomful of software architects is not
representative of a roomful of stakeholders in general.
Before you
release your killer abstractions from the whiteboard into Powerpoint,
try them out on a friendly audience of non-specialists first.
No comments:
Post a Comment