Experience in Agile Development

Source: Internet
Author: User

View on the Internet nowArticleIt seems that the system is outdated when it is not agile. When show off, the internal team also talked about how to move from waterfall to agility. It seems that medicine is eliminated as quickly as possible. Recently, I saw an old article "talking about agility and thoughtworks China consultant" on the coolshell blog, and I am very worried. Now let's take a look at my specific projects to discuss what kind of projects are suitable for agile development and how to do agile development well.

PS: Although I have a scrum master certificate, I am still opposed to putting everything on agile.

The company has chosen this project for scrum pilot for the following reasons:

    1. In the previous version, the results of the six months were originally set to one year, and nearly 1/3 of the company's development and testing resources hit the ground.
    2. The requirements change frequently, and product managers and developers are involved.
    3. The product was launched in a rush, and a large number of features were not fully tested.
    4. The new engineering director is an agile development enthusiast and is taking the initiative.

Scrum is now officially started, but here I want to ask what is the purpose of software development? Do you want to ask? Isn't it about making money after release! With this question in mind, when are we going to release our American project manager? Brother admitted that he was shock. The eldest brother replied:Now we are agile. One sprint is followed by one sprint, and the other is released.Well, thanks to the test of this project, you are not directly responsible for this project. (In fact, my brother is confident in his own brothers. If we really want to smash it, we can be the only bright spot .)

With the blessing of the comrades, the project began. Every sprint, regardless of 3721, is pushed into a pile of demands as long as the product manager's head is captured. The response to the requirement described in one sentence by developers is:Now it is agile development and requires more communication and less documentation.Ditch your sister! One in China and the other in the United States, email communication will disappear once a day. Phone number? Are you staying up late or am I starting at dawn? 3. One sprint on Monday, just remove the demand for one week, and then do it. There are still two days to finish the sprint, but suddenly you can see the task list, 50 completed only 30. What should I do? According to the principle of scrum, the sprint cannot be extended. If you can't finish it, you can kick it to the next sprint. If there is no release date, you can do it slowly. Well, that's good. We successfully completed 35 tasks in this sprint! After three months, the product manager looks at several major features as well. We have announced the release of a new version !!! (Start shooting and draw circles first. It's very good and powerful!)

Obviously, such agile development cannot satisfy the senior management. We sat down to sum up the lessons learned and launched version 2.0, which is updated as follows:

    1. The big boss hopes to see the results report faster. The Sprint cycle is shortened from three weeks to two weeks.
    2. China and the United States each set up a scrum team, local tests support local development, each sprint task is allocated proportionally.
    3. The product manager must provide more comprehensive design documents.
    4. Strengthen communication and hold regular meetings every week.
    5. In addition to the main product owner and scrum master in the United States, the local product owner and scrum Master are added in Shanghai. Some decisions can be made locally without requiring us to consult.
    6. Unit tests must be written for development.

All these changes are beneficial to the project as a whole. The problem with point 1st is that if the development work is delayed, the space for testing will be very limited. The 2nd point is mixed. The advantage is that the Shanghai team has greater autonomy, and the disadvantage is that the test development ratio is seriously insufficient. Because the test leader in Shanghai serves as the scrum master, testing and development is 2.5 to 7, while testing and development in the United States is 4 to 6. However, considering that the local test productivity is higher than that in the United States, and development is willing to squeeze out time to help test execution test cases, the Shanghai team has been doing well after two sprints, while the US team is still behind the schedule.

Although Scrum of Version 2.0 is much better than Scrum of version 1.0, the following problems still exist:

    1. The cycle is too short, and there is too little time left for testing after the development is completed.
    2. Tests in Shanghai have been overloaded for a long time.
    3. Because the cycle is too short, there is no time for automated testing. As a result, automated regression testing cannot be performed. You can only rely on manual testing to select several key test cases to ensure that the previous functions work properly.

Although there are still various problems, it is a good move forward. The cycle has been restored to three weeks, and there are not enough employees to start recruiting interns. If the automated test does not have time to do so, the system will focus on completing the course for a while after going online.

Through the scrum practice in the last six months, I have summarized some experiences and shared them with you:

    1. There must be a release goal, and the plan should be reversed based on this goal.
    2. Po and scrum master must have rich experience in traditional development models, otherwise the project will be easily out of control.
    3. After routine meetings every day, the scrum master should quickly follow up and solve major problems immediately. What is the balance between work and life? execution must be the first priority.
    4. Although scrum requires every employee to be proactive, it takes a lot of time for the development and testing leader to assign tasks and adjust their priorities. Development requires sufficient time for testing and fixing bugs.
    5. Automated Testing is very important. You must do it early and late.
    6. Knowledge sharing among employees is very important. Everyone has a headache. The project progress cannot be affected because one person leaves temporarily.
    7. Unit Testing is very helpful. First, it avoids many basic business logic errors, and second, it can make the development more clear about the business logic.

For more information, visit http://monstersay.cn/. thank you!

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.