Monday, October 28, 2013

Agility is the ability to adapt to the change. It takes both strategy and tactics.

Practicing Agile has many benefits with three “I’
(Incremental, Interactive and Iterative) characteristics. However, some
practitioners warn that Agile teams have a tendency to focus on tactical
accomplishments at the expense of strategic goals. Is it true, If so, how did
you handle it?

This can happen. And
if so, it’s a management problem. This is one of the weaknesses of most
Agile practice. 'Going Agile' shouldn't be a pretext for forgetting the
big picture of what the project is all about. Sometimes you keep working on
tiny stories that everyone (including the Product Owner) loses the big picture
vision. Engineering teams can get caught in operations and forget longer term
strategy. This is a sign of leadership deficiency and rewards given for the
wrong things.

You need to think
business goals strategically before embarking on a project. Keep in
mind only about 3 percent of the population thinks strategically, the rest
tactically. Usually engineering teams are like a tactical strike force. They are
interested in tactical accomplishments. It is up to organizational leadership
and management to well blend the strategic focus with tactical implementation. Without strategic leadership, vision typically gets lost in
translation through the organization. Teams are part of the overall
picture. The team implements part of the vision of leadership.

A truly
cross-functional agile team tends to have the different levels of focus needed
to cater for both the technical and business goals that the project is
trying to reach. Developers often have a tendency to focus on the means to the
solution and may well lose sight of the overall strategy. There may be reasons
where you cannot share certain details due to sensitivity, but most teams
perform best when the understanding why what they are doing is important to the
business and what goals are to be accomplished. The challenge is when the folks
who have an interest and strong opinions (but no accountability) disagree with
direction from top. One of the functions of the owners is to make sure
that the project is proceeding in a useful direction. That is also a product of
well defined stories that deliver sequentially useful and visible
results.

It's very important
for the entire team to be aware of the overall vision of the project and the
product(s) being produced to meet that vision. Leaders need to keep in mind
three key things: Vision, Message and Execution. Have a vision, articulate that
vision well throughout the organization and surround yourself with those who
can execute on that vision. This is especially important in terms of being
able to successfully do 'emergent design'. The awareness of what is planned to
come is required in terms of 'leaving room' for the other upcoming features,
both in the architecture and even elements such as the UI.

Agile - and
specifically Scrum in the software world is the good way to ensure that you
actually do execute what you plan - it enables you to do the right stuff
quickly and efficiently, and always keep re-aligning to the business objectives
and key priorities. These are the "Goal-driven" Sprints (the real
intention of Scrum) and the same also applies with the Release Planning
activities (a defined Release Goal - typically a set of objectives).

Therefore, a high performing agile team should be strategic enough to fulfill business vision and tactical enough to deliver the project with customer satisfaction timely.