[Agile Development] Scrum Literacy of Agile Development

Now that agile development is getting more and more popular, everyone is talking about agile, everyone is learning Scrum and XP...

[The picture in this article is large and slow to load, it is expected to take 10 minutes to read]

In order not to lag behind others, I also started to learn Scrum. Today, I mainly used the relevant materials I read recently to describe the various aspects of Scrum in my own words according to my own understanding. The main purpose is two, one is to conduct knowledge To sum up, the other is that many learning materials on the Internet are not easy for beginners to understand; so I decided to write a literacy blog post, and also try to share and exchange with friends in the park, hoping to be for beginners helpful.

 

 What is agile development?

Agile Development is an iterative and gradual development method with people as the core.

How to understand it? First of all, we must understand that it is not a technology, it is a development method, that is, a software development process, which will guide us to complete the project development step by step with the prescribed links; and the main part of this development method The driving core is people; it uses iterative development;

 

Why is it that people are the core?

Most of us have learned the waterfall development model. It is document-driven. Why? Because in the entire development process of waterfall, a lot of documents have to be written. After the requirements documents are written, the developers develop according to the documents, and everything is based on the documents; while in agile development, it only writes the necessary documents, or Write as little documentation as possible. Agile development focuses on face-to-face communication between people, so it emphasizes people as the core.

 

What is iteration?

Iteration refers to the decomposition of a complex development task with a long development cycle into many tasks that can be completed in small cycles. Such a cycle is an iterative process; at the same time, each iteration can produce or develop a deliverable software product.

 

About Scrum and XP

As mentioned earlier, Agile is a guiding ideology or development method, but it does not clearly tell us what kind of process is used for development. Scrum and XP are the specific methods of agile development. You can use Scrum or XP. Method: The difference between Scrum and XP is that Scrum focuses on the process, and XP focuses on the practice, but in practice, the two are applied together. Here I mainly talk about Scrum.

 

What is Scrum?

The English meaning of Scrum is a professional term for rugby, which means the action of "scrambling the ball"; the name of a development process is called Scrum, I think you must be able to imagine that when your development team is developing a project, everyone is like Playing rugby is as fast and full of passion for fighting, and everyone is vying to complete it. You will definitely feel very excited.

And Scrum is such a development process, using this process, you can see the efficient work of your team.

 

[Three roles in the Scrum development process]

Product Owner

Mainly responsible for determining the functions of the product and meeting the required standards, specifying the release date and delivery content of the software, and having the power to accept or reject the work results of the development team.

 

Process Manager (Scrum Master)

Mainly responsible for the smooth implementation and progress of the entire Scrum process in the project, as well as removing the communication barriers between the customer and the development work, so that the customer can directly drive the development.

 

Development Team (Scrum Team)

Mainly responsible for the development of software products under the prescribed process of Scrum. The number of people is controlled at about 5~10. Each member may be responsible for different technical aspects, but each member must have strong self-management capabilities and a certain degree of self-management. Expressive ability; members can use any work style, as long as they can achieve the goals of the Sprint.

 

 

Scrum flowchart

 

//------------------------

Next, we start to talk about the specific implementation process, but before we talk about it, I will explain an English word.

What is Sprint?

Sprint means a short-distance race, which refers to an iteration, and the cycle of an iteration is 1 month (that is, 4 weeks), that is, we need to complete the development content of an iteration as quickly as possible , This process we call it Sprint.

 

How to develop Scrum?

1. We first need to determine a Product Backlog (a list of product requirements in order of priority), which is the responsibility of the Product Owner;

2. The Scrum Team estimates and arranges the workload based on the Product Backlog list;

3. With the Product Backlog list, we need to select a Story from the Sprint Planning Meeting (Sprint Planning Meeting) as the goal of this iteration. The time period of this goal is 1~4 weeks, and then carry out this Story Refine to form a Sprint Backlog;

4. The Sprint Backlog is completed by the Scrum Team, and each member is refined into smaller tasks according to the Sprint Backlog (the workload of each task can be completed within 2 days);

5. When the Scrum Team completes the Sprint Backlog selected in the planning meeting, a Daily Scrum Meeting (daily standing meeting) is required. Each meeting is controlled at about 15 minutes. Everyone must speak and face all members. Report what you accomplished yesterday, and promise all members what you want to accomplish today. At the same time, you can also raise questions that cannot be solved. After everyone has answered, they must go to the blackboard to update their Sprint burn down (Sprint burn down). Figure);

6. Achieve daily integration, that is, there must be a version that can be successfully compiled and demonstrated every day; many people may not have used automated daily integration. In fact, TFS has this function, which can support every time When a member performs a check-in operation, the latest version is automatically obtained on the server, and then compiled on the server. If it passes, the unit test code will be executed immediately. If all pass, the version will be released. At this time, a formal sign-off will be made. The import operation is only saved in TFS. Any failure in the process will be notified to the project manager by email;

7. When a Story is completed, that is, the Sprint Backlog is completed, it means that a Sprint is completed. At this time, we have to conduct a Srpint Review Meeting (demonstration meeting), which is also called a review meeting, and both the product owner and the customer must attend ( It is best that the boss of the company also participate), every member of the Scrum Team must demonstrate to them their completed software products (this meeting is very important and must not be cancelled);

8. The last is the Sprint Retrospective Meeting (retrospective meeting), also known as the summary meeting, which is conducted in turn. Everyone has to speak, summarize and discuss improvements, and put it into the next round of Sprint product requirements;

 

 

The following are some scene diagrams in the development process using Scrum:

The figure above is an example of Product Backlog.

 

The above picture is the daily standing meeting. Participants can stand in any posture. The task board must be seen by everyone. After everyone has finished speaking, they must go to the task board to update their burndown chart.



The task watch version contains the status of unfinished, in-process, and completed work. Assuming that you have completed an unfinished work today, then you have to paste the small card from the unfinished area to the completed area.


 

Everyone’s work progress and completion status are public. If a person’s work task is placed in a certain position for several days, everyone can find out what is wrong with his work progress (the number of members is preferably 5~7 One, so that everyone can use a special color of label paper, and you can see from the task board at a glance who is working fast and whose work is slow)

 

 

 The picture above is not a poker card. It is a planning card. Its function is to prevent the project from being led by someone during the development process.

How to use it? For example, it takes 5 hours for programmer A to develop a function, and programmer B thinks it takes only half an hour. Then they each take the corresponding cards, hide them in their hands, and finally showdown. If there is a big time gap, then A and B can discuss A Why does it take 5 hours...

 

4 Manifestos of Agile Development

Individuals and interactions are better than processes and tools

Software that works is better than a comprehensive document

Customer collaboration is better than contract negotiation

Responding to change is better than following a plan

 

 

Recommend an enterprise-level agile development tool-CODING: https://coding.net/  , with a simple operation interface, supporting one-stop DevOps full-process services, including code and requirements management, defect management, test management, continuous integration, and automatic deployment , Git-based version control ensures the security of company code assets. It not only satisfies the manager’s corporate view, but also accelerates the developer’s research and development speed, supports remote collaboration, and improves development efficiency.

  • Basic system architecture:

 

  • Enterprise-level project work integration:

 

 

 

Author: Cat Qi
Source: http://qixuejia.cnblogs.com/
This article belongs to the author and blog Park total, welcome to reprint, but without the author's consent declared by this section must be retained, and given the original connection in the apparent position of the article page, Otherwise, the right to pursue legal responsibility is reserved.

——————————————
** My mobile phone number has call attributes and WeChat add friends attributes
I look forward to communicating with you

I’m Mave Diao,
there is only one China Unicom between us
186-0161-9614**

Guess you like

Origin blog.csdn.net/MaveDiao/article/details/114919586