Agile scrum Training

Source: Internet
Author: User
Tags visual studio 2010

On the infoq website, we have two Chinese articles about agile practices of Visual Studio product teams. We recommend them to you!

Function Group Model in large-scale software development projects-agile practical experience of Visual Studio development team (I)

Process and Quality Control of functional group models-agile practical experience of Visual Studio development team (II)

 

 

Digress: The day before yesterday, I heard that the European Union also unconditionally approved Oracle's acquisition of sun. Although it still needs to be approved by Russia, China, and other countries, it is only a matter of time. A company that used to be extremely brilliant in the software industry, a company that once created many top-level software and hardware (Solaris, Java, MySQL), can't believe it. "Jiangshan generation has talents and leads the competition for hundreds of years." IT industry is available for hundreds of years, that is, decades. It should be changed to "market generation has talents, ". The market choice is relentless. When sun falls down, more people will stand up.

Today (2010/01/23) is Saturday. I attended the "agile scrum training camp in Beijing and Shanghai" Shanghai held by infoq at zizhu Microsoft's new campus all day. There are two main activities: in the morning, Dr. Wu Qiong of Jacob's company called "Agile Software Development scrum practice (upper/lower )", introduce the knowledge of agile development and scrum in Beijing and theory; in the afternoon, "agile in a large team-agile development practices of Microsoft's R & D team" and "developed based on Visual Studio 2010 large-scale agile projects" by Wang ran of Beijing Jinqiao company ", this section describes the scrum processes and experiences adopted by the Microsoft development tools team in Shanghai and how to use team Foundation server 2010 for Agile Project development. In general, it seems to be a good combination of theory + Practical Experience + tools.

My development team has been successfully using scrum for a while, but through this training, I have been clarified on some vague concepts and understood some new ideas and terms, some of my new ideas are still quite rewarding. The following are some specific gains and experiences. The following is a report:

 

Do not misunderstand the agile Declaration

The following four items are the content of Agile Manifesto, which is often misunderstood by agile "fans" or radicals or used to mislead leaders. They usually translate over into "no" or "no. Agility seems to be the "one man and nine swords" in "swordsman", but it depends on who uses it, not everyone can do it. Only the super senior predecessors like Feng Qingyang and the super smart elders like Ling huchong can truly use "No tricks, no tricks" to truly translate over into "no ". I can only translate it into "over", that is, for most (99.99999%) teams, in Agile development, methods, documents, tool contracts, and plans are all necessary. The difference is that they must be more reasonable and effective, and should not be simply a few hundred pages of unattended documents.

  • Individuals and interactions over methods and tools (individuals and interactions over processes and tools );
  • Working software over comprehensive documentation );
  • Collaboration with customers over contract negotiation (customer collaboration over contract negotiation );
  • Response to changes over strict compliance plan (responding to change over following a plan );

Be agile rather than do agile

The essence of agility is to identify and improve unreasonable and resource waste content in the development process. As long as the work can achieve this effect, I think it is a suitable agile method for you. It is not necessarily agile to follow the existing methods and steps of others. In addition, it is often different in the nature of the company, personnel, and projects. The agile applications that others successfully use are not suitable for you in most cases.

Agility starts from "Grassroots", and at last the upper layer and the boss

Most of the proposals for adopting agile methods are raised from the actual development team and terminated by the boss or the boss's boss. The reason is simple. Front-line technical staff (Technical fans, technical angry youth, and technical guru) are more sensitive and strongly interested in new development methods. They often propose suggestions for improving existing processes. However, many agile methods involve changes to existing processes and personnel organizational structures, such as scrum, which cannot be accomplished without support from the boss. Currently, many companies adopt the organizational model of "weak projects, strong functions" (not sure if this is the requirement of CMMS), while the feature team/feature crew of scrum is the opposite.

It is relatively easier to use TDD and XP, so that two or three developers can implement it without too much organizational adjustment.

 

Promoting agile methods is not a great leap forward

 

Do not take agile promotion as a sport. Instead of moving everything from the ground up, it will only lead to more people's resentment and greater resistance. There is always something that is reasonable. Promotion agility is a gradual change to something that is unreasonable. To achieve "sneak into the night with the wind, clean things and silent things" promotion. Of course, this is very difficult. It can only be a goal and direction of struggle. If it cannot reach 100%, it is always possible to reach 50-60%. Now, it's not difficult to find anything. If it's easy to do, you won't be looking for you, right!

 

What is atdd?

This is a new term I heard during this activity. The full name of atdd is acceptance test-driven development, that is, Acceptance Test-driven development, which is also one of the agile methods.

The typical scrum flowchart does not point out the difficulties of scrum.

 

 

The greatest difficulty of scrum is the process of selecting and decomposing the tasks from product backlog to sprint backlog, which requires the participation of the architect. Another difficulty is how to keep testing up with agility, especially when manual testing is still in place.

 

SCRUM will only make people who love to be lazy feel more tired.

Will the adoption of the scrum method make team members feel more tired? Specifically, it makes those who love to be lazy more tired. Scrum focuses on project management practices. It is different from XP and TDD. The management effect I want to achieve is summarized as follows in 16 words: clear division of labor, responsibility to people, transparent project, and controllable process. When the development cycle is relatively short (one iteration cycle is within 2-4 weeks), the time allocation and utilization of each person are clear, which makes it difficult to have a chance of laziness.

 

 

 

What is scrum?

The term scrum is intended to be a football competition. The English explanation is as follows: (rugby) the method of beginning play in which the forwards of each team crouch side by side with locked arms; play starts when the ball thrown in between them and the two sides compete for possession. Scrum matches the software development team as a football competition team, has a clear highest goal, is familiar with the best model and technology required in the development process, has a high degree of autonomy, close communication and cooperation, resolve various challenges with high elasticity and ensure that every day and every stage is clearly oriented towards the goal.

 

Any agile activity should be time-boxed-"student syndrome"

Activities with clear time constraints are more effective; otherwise, lengthy and fruitless discussions are often conducted for unnecessary topics. "Student syndrome" tells us that only the time before the exam is the most efficient learning time, and the same phenomenon also exists in project development. Only when the deadline is approaching, will we put aside unnecessary comments and reach an acceptable public announcement.

 

It is appropriate to compare the scrum master to the "dog" of the scrum team!

To ensure the smooth running of the scrum process, the responsibility of such a sheepdog is to make it clear that the "Herd" is not disturbed by the "Wolf group", and the "Herd" can be guaranteed to graze on time and on a pay-as-you-go basis.

 

What is agility?

Agility is an organizational quality that includes the quality of organizational members. It represents a set of systems and principles with the goal of making organizations more adaptive and responsive to business success.

 

 

 

"Queuing principle"-it is not a good thing to arrange the time for everyone to 100%

It is often found that a traffic jam on the road must be caused by an accident. The queuing principle explains the reasons for this congestion and its inspiration to the development team.

 

 

Mature agile teams are relatively stable organizations

The agile team is not a guerrilla group. People often share changes when they take a shot. The mature agile team is relatively stable, and everyone can experience multiple sprints together. The principle is simple. It takes time and cost to work with people and organizations.

 

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.