--scrum Agile Development

Source: Internet
Author: User

Objective

 First of all, why is it exposed to agile development, because of their job-hopping, into a new internet company, the company used the agile development of the development model for product development iteration. The company's products are an online platform, White is e-commerce, mainly to do intelligent office, which involves a number of things do not elaborate. Back to the point, in fact, they have always wanted to contact this model, one is that the development model is more and more enterprises to adopt, and secondly, they also want to learn something to improve their level of experience. Prior to working in a technology company, the time has been more boring. Think for a long while, or decide to change the environment, a different kind of thinking, then say the key.

Theme

————   Here are some of the information I collected ——————

  Benefits of Agile Development:

Meeting the changing needs of users is one of the long-standing problems of software development, and the classic waterfall patterns we use often perform well in an iterative cycle, but when demand changes, waterfall patterns seem powerless. For example, the user gave a demand, we follow its implementation, delivery to the customer, once the customer changes the requirements, and the changes in many places even with the original requirements completely inconsistent. Then we would not have wasted our energies. And the agile method satisfies the demand the way mainly through iteration. At the end of each iteration cycle (typically one to two weeks), the user is able to deliver a usable, deployable system that the user uses and experiences and feedback, which is implemented and integrated in the product along with other changes in the subsequent iteration cycle. Each iteration cycle should be as short as possible so that demand changes and user feedback can be handled in a timely manner.

Agile development consists of several lightweight software development methodologies, including extreme programming, Scrum, lean Development (Lean development), dynamic system development methodologies, feature-driven development (Feature Driver Development), Crystal development (Cristal Clear) and so on. All of these methods have the following common characteristics, which are also principles of agile development:

1. Iterative development. That is, the entire development process is divided into several iterations, and each iteration cycle typically lasts for a shorter period of time, usually 1-6 weeks.

2. Incremental delivery. Products are progressively delivered at the end of each iteration cycle, each delivered in a product that can be deployed to deliver immediate benefits and value to the user.

3. Development team and user feedback drive product development. The agile development approach advocates that users can participate throughout the entire development process. This enables changes in demand and user feedback to be dynamically managed and integrated into the product in a timely manner.

4. Continuous integration. New features or changes in demand are always integrated into the product as frequently as possible. Some are integrated at the end of each iteration cycle, while others do so every day.

5. Self-management by the development team. People are at the heart of agile development. Agile development is always a human-centred process and mechanism for building development, rather than imposing processes and mechanisms on people.

Agile Development methods can bring the following benefits to enterprises and users:1. Precise. Waterfall mode usually plans a line between the product start point and the final result, and then goes straight along the line. However, when the project arrives at the end, the user will often find that it is not where they want to go.  The agile approach uses small steps to run, and then adjusts for each step and then determines the direction for the next, until the real end. 2. Quality. Agile methodologies have stringent requirements for the quality of each iteration cycle. Some agile methods, such as extreme programming, even use test-driven development (Test-driven development), which is to develop the test code of the function before formally developing the functional code.  These provide a reliable quality assurance for the entire development cycle of an agile project. 3. Speed. Agile teams focus solely on developing the most valuable parts of the project that are currently in demand. This can be put into development quickly.  In addition, a shorter iteration cycle allows team members to quickly enter the development state. 4. Generous ROI.  In the agile development process, the most valuable features are always prioritized, which gives customers the greatest return on investment. 5. Efficient self-management team. Agile development requires team members to be proactive and self-managing. Working in such a team, each team member's technical skills, communication, social, presentation and leadership skills can also be improved. The main agile approach:Agile Development Method is a group of development methods collectively, including the following: Extreme programming Its main purpose is to reduce the cost of changes in demand. It introduces a series of excellent software development methods and brings them to the extreme, pair programming (pair-programming) is one of the more well-known methods. In addition, the core approach includes small-scale, frequent release, short iteration cycles, test-driven development, continuous integration, daily stand-up meetings, co-ownership of code, system metaphors, and more. Scrum scrum is an Agile development framework that consists of a development process, several roles, and a set of prescriptive implementation methods. In scrum, product requirements are defined as a backlog of product backlogs. The backlog of all product requirements starts with a simple idea and is progressively refined until it can be developed.  Scrum divides the development process into multiple sprint cycles, each of which represents a 2-4-week development cycle with a fixed length of time. The core idea of lean development is to identify and eliminate waste. Bugs, useless features, waiting, and any other things that do not benefit from the results of the software development process are wasted. Waste and its source must be analyzed and identified and then managed to be eliminated. Other principles of lean development include emphasizing learning, making decisions at the last minute, and delivering users with the fastest speed. Other agile methods include dynamic system development Methods (DSDM), feature-driven development (FDD), Crystal clear, and so on, the difference between agile methods is their different interpretations and different focus on agile. Understanding these approaches can help us understand agile development from multiple perspectives and learn more about the best applications. How to choose an agile approach:Choosing a suitable software development method depends on a variety of factors. Before making a decision, we need to fully consider the following: 1. The complexity of the method.  Make sure your team or organization is able to cope with this complexity. 2. Community and industry support.  There are more community and industry support that can benefit you. 3. Utility Tools.  A good software tool can help teams effectively handle their daily work, promote teamwork, and reduce management costs. 4. The level of understanding of agile methodologies.  Choosing an agile approach that is closer to your current development approach will help drive the implementation of this approach. 5. The size of your team.  A smaller team is best to start with a simple approach. 6. You don't need to follow only one method.    You can choose a major approach (such as scrum) for your team, and then draw on other methods. Because of the new contact, many details are unclear. This article is mainly excerpts of records, so that they can consult later. Original Address http://blog.sina.com.cn/s/blog_59450ffc0100k6q8.html

--scrum Agile Development

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.