10 big mistakes in agile development

Source: Internet
Author: User
Tags documentation

10 big mistakes in agile development


Original: Http://www.computerweekly.com/opinion/The-top-10-myths-about-agile-development

Author: Peter Measey

Translator: Zhang Sb er http://blog.csdn.net/xinxing__8185/article/


Absrtact: For the rapid development of agile software development field, this article will be the most common error understanding of the analysis.

In today's global market context, how to be flexible, for an enterprise, has become critical, therefore, it system flexibility is essential. The goal of agile development is to enable organizations to respond in a timely manner to the growing opportunities and challenges of today's business world, in which it has become a key contributor.

The term "agile" is defined in the Agile Manifesto as 4 values and 12 principles (see http://agilemanifesto.org/). The manifesto provides a definition of a collectively defined, with many other delivery and management frameworks, such as scrum and extreme programming.

the error cognition in agile development

For any framework or method, as time goes by, the wrong understanding and understanding of them may gain trust and recognition, and then become common sense.

false understanding of "agility" is a new concept

"Agile" is certainly not a new concept. Agile methods have existed for a long time. Now collectively referred to as "agile" frameworks, mainly developed in the late 80 and the 90 's, which means that agile development is already very mature, is a familiar method that many people have inherent. In essence, "agility" is the ability to test and adapt to the variability of dynamic environments. This is a fundamental principle in many theories, for example, evolution. It is also the way that humans interact with the world on a daily basis-in fact the only way that humans can effectively interact with this complex world.

Error Understanding 2--the implementation of agile development is easy

It's not always easy to turn a complex system's delivery cycle into something simple. Organizations (using Agile development) find that complicating things is often easier than simplifying them.

Unfortunately, in some organizations, they try to "copy books" to implement an agile operational model or a single agile framework without understanding the complexities of using agile development. As a result, these organizations either failed to achieve "agile", or achieved some success, more efficient response to change, but paid a higher cost and pain.

Error Understanding 3--Agile Development is a quick buck

Although the use of agile development can bring great benefits, but the reality is that most of the flexibility needs to go through the law of learning curve. When people and organizations are learning, the ability to deliver may also decline before the step changes, and the ability to deliver will only begin to improve when the transition is experienced.

Error Understanding 4--Agile Development means no development documentation

This misconception may stem from a misunderstanding of the Agile manifesto, which says, "We value writing software over comprehensive development documentation." The manifesto, however, is not to say that developing documentation is not needed, it simply emphasizes focusing on developing software rather than spending too much time on creating detailed upfront development documentation, which is important to understand.

All effective agile delivery should be considered and focused on targeted, value-driven, commercially beneficial documentation to enable the enterprise to effectively use the product and enable the technical team to continue to support and maintain the product. Failure to retain the appropriate documentation is a typical example of technical debt.

Error Understanding 5--Agile Development means "splicing" code, but with little architectural or design thought

"Hacking" in agile methods means piecing together an IT system, with little or no design or architectural thought at all. The Agile Manifesto states: "Constant attention to technical excellence and good design can improve agility", and many agile development frameworks provide tools and technologies that allow teams to write high-quality code. For example, in extreme programming, many of the practices are targeted to ensure the quality of delivered products that meet the intended needs.

Error Understanding 6--Agile Development is the most effective technology

Agile development is not a common solution for all IT problems. There is no single solution to it problems, and the key to solving the problem is how to integrate different frameworks, each of which provides a partial solution. Delivery and management implementation must be pragmatic, such as agile development. The implementation and use of the entire system must recognize the real-world environment in which it is located, while taking into account the best integration of agile and non-agile frameworks, as the integrated systems will operate in real-world environments. A single "Magnum" framework does not exist.

Error Understanding 7--Agile Development: Reading a book is enough.

By simply reading a book, it is not a good idea to understand the concept of agile development. Of course, it's a good idea to choose and read some of the books the experts have. But reading only books is not a substitute for actual combat experience, for want to really grasp the "agile" mode of thinking, and successfully turn an organization or team into an "agile" development model, combat experience is crucial.

Error Understanding 8--"Agility" involves the delivery of software only

The Agile Manifesto does describe the concept of "agile" in software delivery scenarios, but the concept of "agile" can be used not only in software-related areas, but also successfully in business environments. In essence, the "agile" mindset is applied in any dynamically changing business environment, such as marketing or business change.

Error Understanding 9--Agile Development should replace everything in the Big Bang

When agile development is applied to large projects, programs, or entire organizations, there is a significant risk that the benefits of an agile development model may not be perceived or understood. Organizations and their employees often continue to do what they have been doing, but think they have used a "agile" approach. Transformational ability is a long-term process of learning and changing. Companies are developing, and the best way to do business is also changing. Therefore, after a big-bang "agile" transformation, it is a mistake to assume that further improvements are no longer necessary.

Here is an interesting quote from Albert Einstein about the definition of Madness: "Madness is doing the same thing in the same way, expecting different results." ”

This is a good summary of the failed Agile development transformations, which are still doing what they were doing before, even though they didn't actually change anything, but looked forward to added value.

Wrong understanding 10--Agile development means no planning, just do it

The vast majority of agile frameworks involve regular, regular, and evolving planning. If a team is primarily doing maintenance work or bug fixes, or producing a product that does not require any further changes in customer requirements within a few weeks, they may only need to plan in a single iteration/sprints.

If the customer only needs to know roughly how long the product will be delivered in the time period and how much cost, the team can plan for the release of the product that contains the iteration/sprints.

If there is a release plan, a high-level agreement will replace what the product will be delivered to, and how much time and costs such issues are important. However, agreements and plans should be set to allow for change, as there will be ongoing planning.

If the customer needs to understand the product baseline definition at the minimum time and cost, this may be delivered in multiple releases or agile projects. If an agile project is launched, then the baseline definition and plan for the product will be required. However, these are purposefully retained at higher levels of development, because in this case, it is assumed that there will be more changes than the product understanding.

"Agility" is not "what you want to do" – it requires effective planning and re-planning.

As you can see, these 10 common misconceptions could be a barrier to people trying to implement agile development in the company. But as long as you are aware of the above misconceptions and in mind, chances of achieving better results in agile development will be greatly improved.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.