Thursday, January 16, 2014

Can You Define Agility?


Most years, just after the first of January, I fly to Hawaii and while escaping the New England winter is a bonus, my real reason is to attend the Hawaii International Conference on Systems Sciences (HICSS.) The conference is pretty broad, but one of the tracks focuses on research into Agile practices. Most years I present a paper, this year I shared some of the latest research I’ve been doing on how teams that finish early accelerate faster. Conference attendees voted it the best paper in the Agile track and nominated it for best paper overall.

A paper that grabbed my attention with its title alone is: State-of-the-Art: A Systematic Literature Review on Agile Information Systems Development. (Sorry no link yet, I’ll post it when it is made available online.) In it, Markus Hummel of Goethe University in Frankfurt takes a broad look at the entire state of play in Agile research over the past year. He delves into how many papers were published, who authored them, what subjects were covered, what research methods were used, etc.  His conclusions were inconclusive, mainly because he points out a lack of academic rigor in many papers. Hummel calls the field “nascent” and concludes, “Findings of the literature are mostly based on experiences which lack empirical and theoretical support.”

But what really jumped out at me was this comment:

The definition of agility remains one of the most salient problems of agile [Information Systems Development]. A universal understanding of what constitutes ‘agility’ is not observable. Attempts of research-based taxonomies for pinpointing the concept of agility build the basis for a common definition, but most papers still rely on the Agile Manifesto that consists of unverified principles and practices of practitioners, which are not suitable as a solid theoretical grounding. The use of research-based definitions of agility should be extended in order to enable a better comparison of studies and to increase the value of research on agile ISD.
Basically, he’s saying it’s hard to assess the state of Agile development methods because what it means to be Agile has never been defined! Only 45% of the papers even referred to a definition of Agile, most often the Agile Manifesto.

(Scrum was developed totally by a data driven approach and benchmarked by productivity analysis tooling at Capers Jones company, Software Productivity Research in 1993. Only when it performed 10 times better than waterfall was it released. Then we were certain that even a reasonable implementation of Scrum would double performance. It looks like I need to write a paper on this so the academics will understand better why Scrum based experience influenced the writing of the Agile Manifesto.)
Agility by its very nature is best expressed in a series of values and principles. Anything too prescriptive would defeat the purpose of being Agile in the first place. That’s the genius of the Agile Manifesto. Scrum is a way of putting those values and principals into practice. It’s the most popular way and the best way I’ve come up with. In fact, the values are based primarily on an agreement of what Scrum and XP had in common with help from thought leaders and authors of books on software technologies.
But maybe a succinct definition of Agile could help communicate its value more clearly to the rest of the world.
I have a pretty good idea of how I would define it but I’m interested in hearing what you have to say. So here’s what I propose. Either tweet to @jeffsutherland or post below in the comments section your definition of Agile. In a twitter bound world, let’s limit it to around 100 characters (leaving some room for a # and re-tweeting) and incorporate as much of the spirit of the Agile Manifesto as necessary. It should also make sense to someone who is unfamiliar with Agile practices. The person who writes the best definition will receive three months of ScrumLab Premium for free ($150 value.)
Next week on this blog I will announce the winner and offer my definition. Tweet to @jeffsutherland and use the hashtag #IdefineAgility.
-- Jeff Sutherland 

20 comments:

Rosko360 said...

"Agile ISD is any evidence-based practice that promotes adaptive planning, time-boxed iterative work and responsiveness to change."

Khurshid Akbar said...

Ability to pivot with least amount of pain

Valentin Tudor Mocanu said...

Agility = a capability = capability to be responsive to business needs and changes on quick time, good quality, good costs and with steadiness, and considering rather a context where: business is changing often and work is rather knowledge work.
Values = derived from capability and context constraints and work type.
Principles = derived from context, capability required, values and work type

Matt Hart said...

Agility is a measure of responsiveness to the changing needs of an organization, product or process.

Ken Stasiak said...

Agile is a description of the capacity to continuously and rapidly inspect and adapt to changing conditions.

Brian Rivera said...

Agile: Commitment to set of values and principles that drives the unity of effort needed to flawlessly execute the delivery of a viable product to delight the customer. Agility characteristics include adaptable, flexible, incremental, responsive, aware (self-awareness), and Lean.

The above is my broad definition of Agile/Agility which borrows and merges ideas from James Murphy, Mario Moreira, Eric Ries, Jeff Bezos, and my experience in the military.

Commitment: Being Agile over “doing” Agile

Flawless Execution: Never attainable but always attempted. Requires continuous inspection and learning.

Delight the Customer: focused on satisfying the customer.

Unity of Effort: Harmonizing efforts

Mrs.MBGordon said...

Agile Software Development is:
Any of the flexible, feedback-driven processes which leverage cross-functional, self-organizing teams to develop and deliver working, value-added software (products) at regular intervals. When optimized, these processes are productive and scalable, easily understood in the business context, and always seeking sustainability and predictability in pace.

Jeff Sutherland said...

Mario Moreira reports his survey results. Most people who claim to be agile don't know the agile principles in the Agile Manifesto.

Jeff,
Hello, I hope you are well. Having a concern for such little focus on the Agile mindset or “being Agile” in Agile literature, I established a hypothesis stating that fewer people could name just 3 Agile principles, then could name 3 of the Scrum events. I conducted a study in this regard and found the results were stunning. So few could name just 3 of the 12 Agile principles yet call themselves Agile. Why is this?

See the results at: http://cmforagile.blogspot.com/2014/01/as-i-look-across-agile-landscape-i-am.html

Feel free to share with others. Cheers!

Mario

Scott Duncan said...

Jeff...
You asked about a definition of Agile.
As the article has "Agility" in the title, I see you received many responses for the latter and some for the former that sound like definitions of the latter.
For myself, Agile applies to any activity that is conducted according to the Values stated in the Agile Manifesto and in its associated Principles.
Before the Manifesto, I do not believe "agile" was capitalized or used broadly, though definitions of "agile" and "agility" certainly existed.
I am assuming from the content of the article that the source of the question which constitutes its title was Agile as applied to methods, frameworks, practices, etc. associated with the Manifesto's Values and Principles. Otherwise, there are perfectly fine dictionary definitions of the lower-case words.

Szymon Wyrwiak said...

Agile it`s a people's attitude towards their goal`s in context of work and cooperation with other`s. This attitude is based on honest communication with environment and will to improve with every step.

Brian Rivera said...

Agile: Commitment to delighting the customer and the endless pursuit to execute flawlessly driven by a shared set of values and principles that generate the highest level of esprit de corps.

koundinya said...

Agile: Having a mindset which is open to change and adapt with respect to individuals and their contributions

koundinya said...

Agile: A mindset which is open to change and ready to adapt in real time with giving respect to individuals and thier contributions.

Unknown said...

I recently gave my first lightning talk, "agile is an adjective" in which I attempted to put the view that "doing agile" is nonsense, and the key to agility is to keep your eye on the desired outcomes, both in the value stream and the improvement stream. For the purposes of reductionist analysis, you should analyse the parts of agile (iterations, courage, pairing...) but I expect many of the parts don't work alone, so this would result in some bad press as "scientists fail to find any truth in agile claims"

Pattern-chaser said...

Today's definition of Agile:

Agile development adds user-defined features in small and tested steps until the product is complete.

Tomorrow may be different!

Pattern-chaser

"Who cares, wins"

sebastiankuebeck said...

Tom Gilb defines Agile as follows: "Any set of tactics that enable a prioritized stream of useful results in spite of changing environment”

see http://www.infoq.com/presentations/advanced-agile-practices

Joe Auslander said...

Agility = the ability to deliver value quickly and regularly while relying on a collaborative environment.

Agile = a set of observations, when used, that are meant to improve productivity, quality and relationships through the use of focused and intentional collaboration.

Valentin Tudor Mocanu said...

Software development - a domain where the requirements are changing often, are diverse and hard to gather and solutions are not standardized. As a result the work is knowledge work and a proper process is rather fluid. In this context, to serve the customer business it is a complex problem. Agility is the capability to solve such kind of problems in quick time, good quality, good costs and with steadiness, especially in the context of often changes of the business. Values and principles from Agile manifesto are what we seems to be the right approach to achieve this capability.

paulr_reomahi said...

comments are insightful ... [ lets | why not ] package and post as free to share pdf ...

Mr.Now said...

It's the capacity of a group of people to rapidly identify, and rationally respond to change.

For groups that create software, it's a measure of their behavioral alignment with the 12 Agile Manifesto principles.

Most so-called Agile-aware people cannot name 2 of 12 Agile Manifesto principles. This is a very big problem.