Get certified - Transform your world of work today

Close

How to Deal with Chaos in Agile

Producing quality results through self-organization

13 November 2015

Saad Ali Jan
SE-Consulting GmbH


The most important aspect of Agile software development is the result: Customers must have the high-value solution they need. In principle, this is the definition of quality. Unfortunately, in the chaotic domain there is no a priori definition of requirements; therefore, developing the right solutions based on a requirement catalog is unfeasible.

Each software development team must continuously and sustainably deliver a high-quality product. Because of this, they must continuously inspect to see how suitable their current approach is in delivering results.

Each new insight requires an adaption to the current state. To maximize product value, all waste must be eliminated from the process and organization. The only people in the entire organization who have up-to-date information on the product domain and the technical domain, and who know who is doing which work now, are the experts on the team. If managers want to modify the process, first they need details from the team, then they can reach a decision and inform the team. Anything else contributes to waste.

The team knows more than the manager and therefore can eliminate the communication overhead. Their decision to change the process with the goal of delivering higher value at lower cost does not need any outside organization. In short, the team must possess the flexibility to employ the optimal process as soon as it becomes known.
 

Measuring performance

The highest value for customers is the simplest solution that satisfies their purpose. Any functionality that does not fit the customer's purpose is a waste or causes waste. For example, if the customer only wants to cut cheese, a Swiss army knife with 27 functions is overly complex and not only costly but also causes confusion when used. A simple butter knife would have obtained the same goal with lower cost and a lower learning curve.

In the software world, in which each feature has associated costs for maintenance and support as well as for learning and using, the simplest design that meets all of the customer's needs is the highest-valued product.

The self-organizing team, in a dialogue with the customer, has the best understanding of the technical possibilities for minimizing the design and solution. Measuring the team's productivity in terms of output rewards them for producing unnecessary complexity. The only valid measure of team performance becomes the level of customer satisfaction.
 

Conclusion

The essence of Agile methods is to enable the entire team to consistently deliver high-quality workmanship and results through a rigorous yet flexible development process that occurs in an environment in which requirements are not fully known or are unreliable. Self-organization allows the team to produce accurate and precise solutions while the market constraints are subject to unpredictable change.

To visualize early results through customer feedback, the entire team pursues sustainable quality in frequent delivery cycles. The entire process is extremely rigid yet adaptable to the change. The team has a vision, and it's accountable to this vision; everybody knows how well the team is doing and what has been accomplished.
 

Opinions represent those of the author and not of Scrum Alliance. The sharing of member-contributed content on this site does not imply endorsement of specific Scrum methods or practices beyond those taught by Scrum Alliance Certified Trainers and Coaches.



Article Rating

Current rating: 4.6 (7 ratings)

Comments

Muhammad Zakir Khan, CSP,CSD,CSM,CSPO,REP, 11/13/2015 3:16:42 AM
Good one. Keep it up.
Tim Baffa, CSM, 11/13/2015 10:53:48 AM
Good article. I really like the quote - "the simplest design that meets all of the customer's needs is the highest-valued product."

I would suggest refraining from absolute statements, though. For example, there are other valid measures of team performance besides customer satisfaction.

Perhaps the customer is completely satisfied with the end product, but it was created by a team mostly working in isolation and not learning or cross-training. Efforts at knowledge transfer, collaboration, and making the team healthier are also valid measures of team performance.
Saad Ali Jan, CSP,CSD,CSM,CSPO, 11/13/2015 12:08:28 PM
Thanks for your feedback. Appreciated!
Apart from that i totally agree with your statement, perhaps i am also of the same opinion & there could be many valid measures and customer satisfaction is only one of them. Nuances were not that obvious (may be). I would like to reply about your statement which you just raised . It's pretty hard for me to digest that customer is completely satisfied with the end product but it was created by working isolation etc

If i am lucky my customer would be satisfied by chance. If my team produces product in isolation how would i expect communication within the team? How would they continuously improve the product if they are not learning from each other? As mentioned could be lucky that customer is still satisfied. Every product is different so approaches might vary, i agree upon it. If you have any concrete example i would appreciate to have that here, to improve my understanding about. Thanks
Michael Kuesters, CSP,CSD,CSM,CSPO, 11/13/2015 3:21:43 PM
@Tim:
I do agree that these are "valid measures of team performance". However, it does not enhance the value of the product. It enhances the value of the team creating the product.

From a customer perspective, that's a world of a difference -
unless you plan on selling them your team rather than a piece of software ;-)
Tim Baffa, CSM, 11/16/2015 8:34:10 AM
@ Michael:

I agree, the customer's focus is on the product, and the value provided. Not sure where in my post I said otherwise.

------------

It appears that an observation of mine has rubbed some the wrong way, and that was not my intent.

Below is the blog quote in question:

"The only valid measure of team performance becomes the level of customer satisfaction".

Now, I personally have an antenna that is raised when I see things like "and" and "or statements in acceptance criteria, or absolute statements like "only" and "always". They are red flags to me.

My reply was that team performance can be measured outside of customer satisfaction. For example, perhaps a customer is not very happy with a product because it is "buggy".

The team undergoes improvement experiments (grooming changes, automated testing, etc.) to improve the quality of the product. These efforts may not result in immediate changes to the customer satisfaction, but should the team continue to be maligned despite their efforts to improve? My argument is that such efforts should be recognized, but it may take time for the results to affect customer satisfaction.

The reverse may also occur, where the customer is pleased with the product, but the team is not operating effectively. Why shouldn't the team also be measured based on improvements around learning and collaboration?
Meghan Robinson, CSM,CSPO, 3/17/2016 4:11:39 PM
Would you be okay with us highlighting this article on our new AgileCareers Blog?

You can view the blog here: http://membership.scrumalliance.org/blogpost/1322603/AgileCareers-News

I look forward to hearing your response! Thanks.

You must Login or Signup to comment.

The community welcomes feedback that is constructive and supportive, in the spirit of better understanding and implementation of Scrum.

 

Newsletter Sign-Up

Subscribe