In fact, agile principles are not complex agile development. Four sentences of agile declaration 12 agile principles of agile development are difficult to practice. As a mainstream agile method, scrum has a simple process, but it is really complicated to practice it well.
What is scrum?
(Source: scrum Alliance)
Scrum is an iterative and incremental process, applicable to any product development and work management. After each iteration, scrum generates a set of functional products that can be delivered. Scrum features:
- Scrum is an agile process that can be used to manage and control R & D work.
- Scrum is a summary of the existing design process.
- Based on teams, scrum is a way to develop systems and products iteratively and incrementally when requirements change rapidly.
- Scrum is a process that controls chaos caused by conflicts of interests and needs.
- Scrum is a way to improve communication and optimize cooperation.
- Scrum is a way to detect and remove barriers in product development and production.
- Scrum is a way to maximize productivity.
- Scrum applies to a single project to the entire organization. Scrum can control and organize multiple related product development and project implementation processes with more than 1 thousand developers and executors.
- Scrum can make every participant satisfied with their work and contributions, and make them feel that their work has reached the best level.
Any human process cannot be separated from humans. Therefore, before explaining the scrum process, it is necessary to explain the role in scrum.
One day, a pig and a chicken walked on the road. The chicken looked at the pig and said, "Hi, how are we going to open a restaurant together ?", The pig looked back and said, "Good idea. What name are you going to give to the restaurant ?", After thinking about the chicken, I want to say, "How is the restaurant named ham and eggs ?", "I don't think so," said pig. "I am fully engaged, but you are only involved"
It is a person who invests in the project and scrum process. There are three roles: product owner, scrummaster, and team ). The product owner is responsible for business concepts and ideas (such as backlog), while the scrum master is responsible for leading the implementation and quality of the team, focusing on completing the sprint in a timely manner.
Role |
Responsibilities |
productowner |
- determine product features
- determines the release date and content
- responsible for the product's profitability of the product (ROI)
- determining the function priority based on market value
- adjust functions and adjust function priorities within 30 days
- accept or reject the development team's work results
|
scrummaster |
the scrum official website defines scrummaster: scrummaster is responsible for implementing the scrum process correctly and completely in the team. Although some trade-offs must be made at the beginning of implementation, and some practices have to be abandoned due to restrictions on the implementation environment, but scrummaster should always remember the benefits and value of implementing complete scrum, and gradually promote the perfection of teams and organizations. scrummaster is particularly responsible for the following tasks:
- remove obstacles between the customer and the development work, so that the customer can directly drive development.
- teaches customers how to maximize ROI and achieve their goals through scrum.
- improve development team members by stimulating creativity and promoting authorization
- improve the development efficiency of the development team in any way possible
- improved engineering practices and tools to deliver each functional improvement
|
Scrum team |
- The number of team members with different specialties is limited to about 7
- Determine the sprint objectives and detailed work results
- Within the scope of the project wizard, you have the right to do anything and ensure that you have reached the sprint goal.
- High self-management capability
- Demonstrate product functions to the product owner
|
The roles and responsibilities of decomposing agile are also described as follows:
Product owner |
|
Set vision |
Define a high level vision of the goal of the product and how it will be met. |
Define product roadmap |
Articulate the big blocks of features and customer value that will be delivered to achieve the product vision. |
Define Requirements |
Generate a description of the features and stories that will be fulfilled to execute on the product roadmap. |
Maintain backlog |
Order the features and stories. Elaborate on enough stories to meet the near term needs of the team. |
Achieve customer acceptance |
Get the customer to look at the product And provide feedback. Sometimes this feedback is acceptance and Sometimes it is more input for the backlog. |
Engage stakeholders |
Keep everyone involved in the product fulfilling their obligation to the team and informed about expectations and status. |
Planning |
Decide on a delivery date. Keep track of the burn down charts. Provide information to management for decisions. |
Coordinate external resources |
Get anything the team needs from outside. |
Financial Management |
Produce any financial reporting that is needed to responsibly manage the product. |
Manage suppliers |
Make sure any third party suppliers are clear on their goals and are providing what is needed by the team. |
Scrum master |
|
Ensure process adherence |
Facilitate agreement on how work will be performed med. Then make sure the team does what it agreed. |
Identify & remove impediments |
Identify any impediments to the team's productivity and remove them. |
Ensure internal communication |
Make sure the team is having the right conversations to ensure productivity |
Maintain Work Environment |
Keep the team free from external Interruptions. Protect the teams from disruptions in work. Address Conflicts. Make sure the team doesn' t work excessive overtime. |
Develop team |
Make sure the right people are on the team. Promote cross training and skill development among team members. |
Team |
|
Coordinate Work |
Work together to coordinate who will do What work. swarm on work to ensure everything is completed according The teams agreed up cadence. |
Maintain Architecture |
Agree on how the product will be structured. |
Understand requirements |
This is where the requirements/stories are Explained to the team. The team has responsibility to understand what The customer is asking. |
Maintain code Quality |
Through patterns, code standards, continuous integration, valid tive branching, and configuration management. |
Design and engineer Solution |
Actually deciding how to write the code and writing the Code. This includes des unit tests/automated testing. |
Production and support |
Moving the code into production. |
Everybody |
|
Learn from outside sources |
Understand how other people are solving The problems you face. Learn from multiple bodies of knowledge. Bring In knowledge from the outside to apply to your team. |
Commit to agility |
I don't know if this is a capability. There is some action that results in intentionally deciding to be Agile. As the multiple decisions are made in the course of discovery The effort, your team might need to remember to recommit to agile. |
Manage Risks |
Agile in and of itself is an approach Risk management. through small bets, constant feedback, early learning, And shared insight the team stays focused on threats to the delivery Value. There are numerous other risks and it is important to everyone To scan the environment and help manage the risks. |
Train for job |
This is similar to learn from outside Sources but it involves developing personal mastery of different skills Required by Team. |
It is not part of the actual scrum process, but they must be considered. An important aspect of agile methods is to involve users and stakeholders in the process. Participating in every review and plan and providing feedback is very important for these people, and managers are chicken.
After learning about the main role of scrum, let's look at the process diagram: It starts with the product backlog. After the sprint meeting, we select some of the stories with the highest priority from the prdouct backlog (story) forming an iterative sprint backlog (a sprint is generally one month ). The Sprint will have a daily session, and the presentation and review meetings will be conducted at the end of the iteration.
The first time you hear the above terms, you may not be able to understand backlog, spring, and so on. You don't have to worry about it. In the future, we will explain every process carefully.
The following provides a brief introduction to some terms so that you can gradually learn about scrum.
[Backlog]
Product backlog
At the beginning of the project,Product ownerPrepare a list of customer requirements sorted by business value. This list isProdct backlog, A list of product features that will eventually be delivered to the customer. They are prioritized based on business value.Scrum teamBased on thisEstimate the workload. Product backlogIt should cover all product features used to build products that meet customer needs, including technicalRequirement. Some product features with high priorities need to be refined enough to facilitate workload estimation and testing.For those to be implemented in the futureIs not detailed enough.
In the next article, I will focus on how to develop the product backlog, how to write the story, how to split and merge the story, and how to determine the priority and estimate.
Sprint backlog
Sprint backlog is a work achievement produced at the sprint planning meeting.Short-distance sprint refers to short-distance sprint, that is, a set of energy to complete some value in a short period of time (an iteration.When the scrum team selects and commits some high-priority product feature points to be submitted in the product backlog, these feature points will be refined into sprint backlog: A list of tasks required to complete the product backlog function. these points will be subdivided into smaller tasks with less than 2 days of work. After the sprint backlog is complete, the scrum team re-estimates the workload based on it. If the workload differs significantly from the original estimated workload, the scrum team negotiates with the product owner, adjust the workload to the sprint to ensure the successful implementation of the sprint.
[Meeting]
Sprint Planning Meeting (sprint planning meeting)
Prepare for the start of the sprint based on the product or project plan developed by the product owner. Product
The owner can be a customer or customer representative or agent. For product companies, the customer is the market, and the product owner plays the role of market agent. One Product
The owner needs a vision to determine the final goal of the product, plan the roadmap for product development in the future, and determine the product characteristics based on the contribution to the return on investment. He wants to prepare a list of customer needs sorted by business value. This list is the prodct backlog, a list of product features that will finally be delivered to the customer. They are prioritized based on business value.
When you define enough products for a sprint
After the backlog and the priorities are arranged, scrum can start. The Sprint plan is used to refine the development plan of the current iteration. Product
The owner will review the version, roadmap, release plan, and product backlog together with the scrum team. The SCRUM Team reviews the product.
Estimate the time of Function Points in the backlog and confirm that these estimates are as accurate as possible. Scrum
The team will check how many feature values can be placed in the current sprint based on the resource situation. It is important for the scrum team to determine the development sequence based on the priority.
After the sprint backlog is determined, scrummaster leads the scrum team to break down these functional points and refine them into tasks of the sprint. these tasks are refined to implement the activities of these functional points. this phase of sprint planning takes four hours.
Daily scrum meeting (daily meeting)
Once the planning phase ends, the 30-day sprint begins. Scrummaster needs to organize team members to open a website every day.
This meeting took 15 minutes to let everyone pass through the state of scrum. At the meeting, each team member asked three questions: what I did yesterday, what I did today, and what obstacles I encountered. Anyone can
Only members of the scrum team have the right to speak. The goal of this meeting is to get a project perspective, which is used to discover any new dependencies, locate the requirements of project members, and make real-time adjustments on the day of the day.
Release plan.
Sprint Review Meeting (sprint Review)
The Sprint review will be held at the end of the sprint. This meeting cannot exceed 4 hours at most. The first half of the Meeting is used to demonstrate the product features developed in this sprint
Product owner. produc
The owner will organize meetings at this stage and invite relevant stakeholders. Business, market, and technology should be reviewed. The product owner determines the product.
Which functions of backlog have been developed. The lower part of the meeting is the review of the current sprint by the scrum master and the scrum team. The team evaluates the way everyone works together, finds a good way to continue development, finds a better place to do, and finds a way to improve. After the sprint review is over, a new round of iteration continues (it is best to finish it for half a day or every weekend), and the iteration continues until enough features are developed to deliver a product.
More information: Agile scrum.pdf
Welcome to reprint, reprint Please note: Reprinted from Zhou jingen [http://zhoujg.cnblogs.com/]