Ken Schwaber, father of Scrum: Agile is an evolution of survival of the fittest (Turing Interview)
(Source: Chinese Version)
I came across a interview of Ken Schwaber, (the father of Scrum) in China organized by Turing. I think it might be also applicable for most of the Asian people related to whether Scrum is suitable to be implemented in China (or Asia Countries). Here is a English translation as following:
Ken Schwaber is one of the leaders in the agile software development movement. He is also a developer, product manager, and industry consultant. Ken and Jeff Sutherland (Scrum Boston CEO) jointly established the initial version of the Scrum development methodology, and at the annual meeting of OOPSLA ’95, they submitted Scrum as a formal method for the first time. Schwaber and Sutherland were one of the original signers of the Agile Manifesto. They are the authors of the authoritative Scrum Guide. Now Schwaber is in charge of Scrum.org, which provides Scrum resources, training, evaluation, and certification to “Scrum Masters,” “Scrum Developers,” “Scrum Product Owners,” and organizations that use Scrum.
Turing Community: What was your initial motivation for building a Scrum?
Schwaber: Because Srum works. At the time my company was busy delivering a premium product, the market for this product was on fire and needed constant changes. If we adopt a long development cycle, my company will go bankrupt. So we designed Scrum, which makes us nirvana rebirth.
Turing Community: Do you think there is a cultural barrier to promoting Scrum in China?
Schwaber: No more difficult than other cultures. The key to whether a culture can accept and utilize Scrum is the degree of confidence in predictability.
Those who understand and accept predictability in culture will believe that they can predict the future. The purpose of their work is to make the future a real reality by using people and resources.
People who use Scrum have had this view, and the complexity and creativity of software development is unpredictable. The result is terrible: bad software, can’t keep up with the progress, wasted money, and discouraged workers. So they know that the most important thing is to predict what is the real demand, let the employees recognize this, and then do everything they can to help people achieve this goal. The core of the Scrum Road is “there is something to do”, taking advantage of opportunities, avoiding obstacles, and getting agile.
Turing Community: People often complain about the difficulty of abandoning the waterfall model. Do you think it is necessary to combine agile and waterfall models? why? How to do it if possible?
Schwaber: These two models are suitable for two extremely different situations.
For the waterfall model, we predict what we are going to build, how to make it, build a plan, and then follow the progress. The key to everything is to define what accuracy is desired and the accuracy of effective communication until the product is finally formed. If the communication link is perfect and there is no need to change, it is feasible to do so.
Scrum’s assumption is that communication is flawed, and change is never changed. In a short period of no more than 30 days, people build what they think they ultimately want. This will be checked at the end of the cycle. According to the degree of harmony between the results and the needs, we must make plans for the next cycle. This is a continuous feedback loop that has been changing, making changes based on inspection results and changes in demand.
Some people have tried to combine the two methods, and the results are disappointing and meaningless. It is better to be separated.
Turing Community: How does a company know if Scrum is right for their business and their products?
Schwaber: Scrum almost never fits in with the corporate culture of some software companies that have been under pressure because of inappropriate waterfall models, and they have been using uninspired technology for the past 30 years.
Scrum does fit into certain corporate cultures, mimics the sales cycle for annual forecasts, then turns the annual forecast into a monthly forecast, then checks the results and makes the appropriate changes.
Most companies are not satisfied with the departments that develop software for them, because waste, failure, and poor quality are not uncommon. Those who are extremely desperate or have insights will try to move to Scrum, which is a more appropriate way to reflect the way the rest of the company works.
Turing Community: In real-world development, some companies are obsessed with rigid methods and will not adapt these methods to their own environment. What do you think of these companies? Do you have any suggestions for them?
Schwaber: The rapid development of software has become the key to the company’s ability to survive, not only in terms of how the company works, but also in software that has been embedded in their products. Companies that don’t evolve, companies that don’t apply agile methods in software and product development, can’t compete and survive.
My advice is that agile is an evolution of the survival of the fittest.
Turing Community: Product owner has a lot of responsibility. Sometimes, they will become the bottleneck of the whole team. How to solve this problem?
Schwaber: This problem does exist. So we have to solve it. There are many ways to solve this problem, including adding more domain knowledge to the team. If the team does not have domain knowledge, the product owner does not exist, then I guess the whole development will slow down until the problem is solved. Otherwise, you have to wait until you release a bad product.
Turing Community: The Pomodoro Technique is a way to improve individual efficiency. Can you use the Pomodoro Technique in Scrum?
Schwaber: If you want, Scrum is a framework that can be embedded in the Pomodoro Technique. However, blindly applying any technique without adjustment is harmful.
Turing Community: How to control and manage technology liabilities?
Schwaber: As you write each feature, assume that you will maintain and enhance this feature for the rest of your life. Even if you want to get started with an old program that is rotten into your bones, do it. Otherwise, the development budget that is used to maintain and support older products will devour all the costs of new work.
Turing Community: Do you think that agile methods over-emphasize YAGNI (you won’t need it)? Will this cause neglect of long-term goals?
Schwaber: Agile methods do not include YAGNI. But agile does need to clean up unwanted things. For example, why communicate with others when there are recorded documents, rather than talking directly to them? In any case, the documentation needed to maintain a product should evolve every cycle. Do what is useful and necessary, and eliminate all others.
Turing Community: Some people think that agile methods are going downhill. Why do you think there is such a voice? What is your opinion?
Schwaber: I have heard people ask, is agility a trend? I think agile is a set of values and principles. While Scrum is built on agile, Scrum is built on focus, courage, openness, commitment, and respect for these values.
Values are not the trend. In my mind, people who work under these values and principles will become trends, and their methods far exceed other methods, or trends.
Turing Community: How do you see the agile faction? Do you think there are conflicts and contradictions between them? Where do their differences come from?
Schwaber: Agile and Scrum are very, very simple methods. Differences and conflicts come from institutions that want to make money by making tools, methods, and creating new methods based on agile ideas. Once money enters one end of the equation, a conflict will occur. These conflicts are not inevitable. Use your eyes to choose a method that is useful to you. Test and continue to improve.