Thursday, December 22, 2011

Agile: Nature’s way of managing, sustaining and empowering an organization.

Introduction:

It’s a century long tradition that humans have learned from nature, which took billion of years to form, [effectiveness supersedes efficiency] and now has sustained for billions of years, on how to lead a comfortable, productive and prosperous life. So, does nature offer any management thoughts on how to build a large scale, sustainable and empowered organization? A little introspection leads us to the answer as a big “YES”. It’s impossible to have a thought that any single person (or even GOD) would have orchestrated creating nature which is so complex to fathom for human being. Rather, it’s fair to have a thought that an environment [framework] would have been created to facilitate the growth of species; where miniature species formed (taking their own time), experimented with each other, self aligned, evolved and sustained into an empowered variety of strong and large species. The same applies to formation of the galaxy, the human immune system and the “Agile” way of managing people and work. The Agile principle and Nature principle are one and the same, which is to create environment [framework] to facilitate the growth and rest is automatically take care of.

Principle of growth for long term sustainability:

Principle

Nature’s way of management

SCRUM way of management

output

Framework

Climate Change, Rain, Day and Night, Ice Age etc.,

Backlog, Sprint, Standup Meetings, Sprint Review, Retrospective etc.,

Long term sustainability

Experimentation and Risk Taking

Species were formed by experimentation with each other

Risk/Experimentation or Failure is encouraged in SCRUM world. Effectiveness supersedes efficiency

Optimized and Effective solution

Self Aligning

Heat and Rain to cool etc.,

Team is responsible. Team discovers the mistakes and fixes then accordingly

Empowerment

Variety

Different kinds of species

Multicultural team

Strength


Agile thought framework for Growth:

Business Essentials:
Value should supersede plan; Priorities clearly defined; Feature differentiated from scenarios.

Recent studies have depicted that more waterfall projects have either failed or have not been able to achieve their effectiveness: Due to deviation from what is required; Time to market; Cost outweigh benefits due to unwanted features. Agile philosophy addresses most of these. Deviation is addressed by re-prioritizing backlog from feedback by already developed features instead of following a plan i.e., value supersedes plan. Time to market is addressed by keeping a prioritized backlog, which in event of an imminent release due to market dynamics could be easily released. (It is observed and found that 20% of top requirements address most of the business value). Cost overrun is addressed by differentiating features from scenarios. In event of cost overrun, functional product can be released with most of the features, without some scenarios covered. Essential factor for Agile to be effective is how we collect our requirement [Split features in to scenarios], prioritize and assign value. Should we fail to practice these then we essentially are following a waterfall methodology but in Sprints.

IT Essentials:
Effectiveness should supersede Efficiency [Lean Principle]; Frequent and small change;

One of reasons Agile is practiced is to improve probability of success and time to market of our products. From IT perspective, it should not be understood that delivering the features as efficiently (quickly) as possible increases the effectiveness of the product. This is a common IT mistake and it’s mostly inside to outward looking. Instead, IT should engage with customer during the implementation to effectively reprioritize the feature/product backlog based on the change in customer/market requirements and then try to deliver them as efficiently as possible. Effectiveness should supersede efficiency. Should this not be implemented, effectively we will be following a waterfall methodology but in Sprints.

A frequent and small change decreases the risk of major failure and improves system traceability. In case of system failure, this ensures quick and effective action. To achieve this, sound lean engineering practices like continuous integration, TDD, unit test case development, automated testing, regression testing need to be built around development.

Facilitators of Growth: All the Ceremonies, Artifacts and Roles in SCRUM are the facilitators of growth that enable great business value proposition, risk taking, experimentation, a self aligned and empowered team to achieve a large scale, and a self sustained and empowered organization just like our Mother Nature.

Finally, Agile is a discipline that requires a mindset change. Once achieved, even waterfall can become Agile.