Have you noticed? Organizations
have become initiative driven. Ten years ago enterprise architecture was topic
de jour precisely because of initiative fatigue. But today there’s a huge focus
again on narrow focus strategic projects and programs, because they are
(perceived to be) the only way to deliver business change fast.
Architecture, especially
enterprise architecture, has become yesterday’s issue – primarily, many would
argue because it failed to deliver the promised business agility. Challenging
for the same mindshare but at the other end of the spectrum are Agile software
development methods that bring an almost religious zeal to rapid delivery by concentrating
responsibility on self-managing, cross functional teams. Don’t get me wrong,
narrow focus teams are highly effective in solving complex problems that are
intrinsically narrow in scope. The problem is that many enterprises are inherently
complex, and well executed architecture is the only way in which complex
problems can be broken down and structured in order to establish appropriately
independent units of work that can be addressed in an effective manner using
Agile methods.
There have been
several well intentioned attempts to evolve Agile methods to be effective in an
enterprise context, to deal with the inevitable complexity that goes with very
large scale operations that demand high levels of regulation, governance,
scalability, standard services and business processes. But these efforts are
unlikely to succeed because they approach the problem through the narrow lens
of the Agile methods.
At the same time we
should observe that use of UML based model driven methods and tooling has not
become widespread, as was once anticipated. Agile methods provide no guidance
on “how” to undertake tasks and Agile practitioners by my own observation
commonly reject the rigor of formal methods and tools. This single action
without question limits the scalability of Agile projects making continuous
change and iteration an effort intensive and lower quality activity.
Many enterprises have
voted with their feet and in their use of Agile methods have adopted a hybrid
approach commonly referred to as Water-Scrum-Fall. In other words,
architecture, planning and requirements are undertaken in the time honored fashion, and development is executed using Agile methods, typically Scrum. In
truth, Water-Scrum-Fall should be designated an Anti-Pattern because it
perpetuates the inefficiencies of early phases and renders the Agile development
process sub-optimal because conventional levels of requirements errors and
development and test driven rework persist.
What’s happened is
that Agile methods have in the main been adopted in a relatively uncritical and
immature manner. It’s very noticeable that proponents of Agile methods strongly
advocate adherence to the core concepts and methods, citing the
transformational nature of the approach and the inherent dangers of compromise.
Yet there are examples of Agile being used effectively in large scale, but
these are the exception, and have usually been achieved with either,
exceptional levels of skilled resources, or more probably considerable
customization of method, together with high levels of structure and tooling.
One must conclude that
adoption of Agile methods remains at an early stage of maturity, and that like
many new ideas in many domains, will be evolved by convergence with depending
and dependent practices, which themselves must also evolve.
A practical way to
manage this maturing process is with a value chain of the business change
delivery cycle.
Whilst architecture
and structured methods and tooling are important as discussed, it’s clear
there’s a larger ecosystem that Agile methods must collaborate with. This
collaboration cannot be approached in a casual manner, it needs to be specified
in detailed processes, practices and deliverables with appropriate automation
to bring high levels of discipline to the end to end delivery process. It’s
time enterprises applied the same level of process change effort to the IT
activity that it does to the broader business. In this business improvement process
it’s also important to note that Agile concepts can be productively applied to
a broader range of activity than purely software development. And as with any
value chain, there’s great opportunity to organize the supporting activities
and leverage common practices, methods, resources and assets.
The very pace of
technology change means today’s enterprise is inevitably going to be initiative
driven, but this doesn't mean initiatives should be isolated in order to be
successful - this is a path to delivering instant legacy. Rather Agile methods and
concepts are effective Organizing and Management approaches, and they need to
be integrated into the broader value chain, particularly architecture and life
cycle automation, that delivers rapid business change.
Talk to Everware-CBDI about the Agile Enterprise Workshop. This is currently available as an in-house, intensive workshop. Public scheduled classes will hopefully follow next year.
Talk to Everware-CBDI about the Agile Enterprise Workshop. This is currently available as an in-house, intensive workshop. Public scheduled classes will hopefully follow next year.

No comments:
Post a Comment