Objective
What is Bb-talk?
Bb-talk is a special launch of the online sharing activities, focusing on the Internet era more efficient workflow, across the TMT, e-commerce, lawyers, education and other industries, covering research and development, product, design, marketing, operations, HR, administration and other occupations.
Each issue invites a related field of Daniel Guest, through the group of Voice, text, pictures and other forms, share dry, free communication.
This article is a summary of the June 14 Bb-talk first-time guest sharing and interactive questions.
Current Guest
Xu Zi, chief scientist of Worktile, software Architect, 5 consecutive Microsoft MVP, with "real-combat windows Azure".
Content Summary
Scrum is one of many agile development methodologies that are both methodological and include a set of predefined roles, a series of processes, and a range of practical experiences. So should the practice of scrum adhere to the principle of theory, or from a practical point of view, to abandon and adjust? What are the main steps to a running Scrum process? What role should the tool play in this process? How did Worktile make the original scrum 50% more efficient? These, in Xu Zi's nearly one hours of sharing, have been highlighted to help you quickly comb out the key elements of scrum.
Share Content
I am Worktile's Xu Zi, Worktile is for the internet era of enterprises to create a collaborative office platform, support internal communication, conference call, task management, scheduling, enterprise network and Office applications, connecting all services inside and outside the enterprise. And as an efficiency platform, to bring convenience to users is the most basic property of Worktile, at the same time as a research and development enterprises, we have deep accumulation and experience in research and development. Recently, Worktile has found 30 research and development teams from more than 300,000 of our use companies, and has developed a one-stop solution from research and development process management to productivity assessment . It contains what I want to talk to you about today about "how to play Scrum."
Agile Development also has values?
For agile Development, it is said that the process, is the methodology is a tool, but for me it is more a spirit, it is not confined to the process, methods, tools. The goal of Agile software development is to address the changes in demand and the uncontrolled factors.
At that time, the person who proposed agile development or this group, proposed is the agile development Four values: first, the individual interaction is higher than the process and the tool; second, the working software is higher than the detailed documentation; Thirdly, the customer's cooperation is higher than the contract negotiation, and the response change is higher than the following plan. This four-point value is the most important thing to embody the core of agile development, the essence of which is to embrace change, not to control change.
There are many ways of agile development, and one of the main things we're talking about today is Scrum.
It's important to understand what scrum is
First we say what scrum is. It is both a methodology and a set of predefined roles, a series of processes, and a range of practical experiences, including the documentation needed. One of the ideas I put forward is that for me to do what's useful, it doesn't work for the product or the project, but scrum is actually not like that. You want to do scrum, there's something you have to do. So I also hope that after talking about scrum, you can be critical and flexible with it, rather than using it rigidly.
The main role of scrum
Scrum primarily defines three roles: Scrum Master,product owner,development Team.
Scrum Master is not project Manager, and his main job is to ensure that the team performs Scrum smoothly. Product owner is the person who is truly responsible for the products. If we are doing product development, Product Manager is products Owner. If we are doing project development, the customer is product Owner, which also shows that we have just mentioned that we do not negotiate with the customer, but really put the customer in our process and really cooperate with him. The third kind of development Team is to do the thing.
So there is no concept of manager in Scrum . In addition, all of the actual software that actually pays for the final output in Scrum is called development Team. This place also embodies a scrum view that it wants to build cross-functional team, where everyone in the team can do everything, and everyone is development team.
the development process of scrum
Step1. Need a Vision
What does the process of true scrum look like? First of all, we need to have a vision, the product or the project we are doing. This needs to be determined by all team members, including product Owner, and then everyone moves toward the same goal.
Step2. Maintenance Backlog
When Vision appears, Product Owner maintains the first document we mentioned in scrum, the Backlog. It can be understood as a requirement that we collect from every angle from the product, and the product Owner has to do is maintain the product backlog and prioritize the backlog by priority. Product owner is the only person who has the right to maintain this list.
In Worktile, in fact, the document is removed from this step, you can directly collect the requirements through the task, each requirement is a task, Product Owner can label the task to mark the priority level.
Step3. Splitting a sprint
We then split it into sprints for this scrum, which is the development cycle. Then add the items in the backlog to the sprint to become the sprint backlog. At the beginning of each sprint, a sprint Plan is required.
Step4. Running Sprint Plan
Sprint Plan is the whole team that starts with the backlog from the highest priority item and picks out the product
Owner's description of the backlog. The next step is to split the backlog into a single task, where each member leads a task in each day's work and completes the task.
This shows that in the perfect scrum, there is no task assigned to say. Each member will update the status of the task in a timely manner according to the task and completion level. To get a sense of the progress of the project, scrum introduces a whiteboard (a lot of small notes on the wall or on the board to make clear the project progress and task completion).
But now, because we have worktile, this work doesn't have to be done on the whiteboard, and can be done on the Worktile Kanban view, which is very much like a real whiteboard. In general, the list of whiteboards in Scrum is only three columns: to does, in PROGRESS, and down. This is very simple in worktile, you can tag, assign people, set deadlines, comment on tasks, and the task can be dragged directly between the list, thus promoting the progress of the process. And it's all real-time and everyone can see it.
STEP5. Daily Scrum
After scrum run, one more thing is daily scrum. In Daily Scrum, there are only three things for each member: What I did today, what I'm going to do tomorrow, what I can't handle. Daily Scrum is generally controlled within 15 minutes, and all members must be standing in a meeting.
In the Worktile, the workbench can be a centralized summary of their personal tasks, can clearly see their recently completed tasks and the next need to complete the work.
Step6. Sprint Rview
When scrum is over, we produce an output. This output, in scrum, can be either a running software or a feature that can be displayed. The reason for this is that there is a sprint Rview stage where we need to demonstrate what you do (not what you Do) by demo in front of product Owner and other stake holders.
STEP7. Retrospective
At the end of Sprint Review is retrospective. Our entire team is going to sit down and have a chat, our sprint is doing well, and there are places to change.
the role of tools
Above is an overview of the Scrum process, and we can look at some of them: the Backlog stage requirements collection and prioritization, the Sprint Plan phase task split, pick and progress tracking, Daily Scrum Statistics ... These links need some tools to assist, even to say, the entire scrum process can be through the tool's assistance to better run.
According to Worktile's own Kanban management features and task-driven approach, it is good to show some progress and summary information: Each requirement can create a task directly, the task label can be labeled priority, the list on the Kanban can directly show the progress and stage, can also be a good way to achieve overall progress and personal progress statistics. and on specific research and development issues such as server monitoring and code sharing, Worktile also has a one-stop solution through access to corresponding monitoring services and code-hosting platforms such as GitHub. By comparing the previous research progress and using worktile to do research and development management of the iterative speed, the overall development efficiency of 50% is easy to do.
After in-depth communication with some research and development companies and summarizing our own experience using Worktile for research and development management, we have compiled a solution that uses worktile for research and development management, covering requirements management, agile development, bug management, code sharing, deployment operations, research and Development weekly, and efficiency assessment. It runs through the idea of agile and some of the essence of scrum, and according to the actual situation in the development process, made a targeted adjustment, for the hope of combing the research and development management system or the implementation of Scrum team has a very good reference significance.
If you need a classmate, you can click to learn >>
Personal insights on scrum
Through the above introduction, you can see through scrum this way can be a really big software, split into small sections, each member of the work is very clear, all the data are fully discussed and reached consensus. And each task, is the member through the priority, self-lead. In the Cross-functional team, each person's ability to work, skills are the same, anyone lead any task, can achieve a consistent effect.
But there is always a gap between the ideal and the reality, and today we are talking about the way scrum looks in the theoretical state. After the actual execution, there will be a variety of problems. You will find that sometimes this thing is impossible to achieve. So what's the problem with your team, or is our research and development team trying to chase the principles of scrum? Or do we have the agility to take scrum and get it out of hand?
Agile is actually a concept, and then, based on this idea, provides some methods and practices that, in my eyes, mean continual improvement. Continuous improvement is the continuous improvement in product design, including the iteration that we try to be as fast as possible. Each of our scrum sprints is not too long, ensuring that each of our scrum offers a working version of the customer that can quickly get feedback from the customer. At the same time in the product area improvement, the architecture design will continue to improve. Our design is not the last to think about everything, but based on the continuous improvement of our products, continuous improvement in architecture. Agile is the process of continuous improvement, improving agile processes, and changing our own development processes with the spirit of agile development.
Finally, the essence of agile development that I personally understand is that we always do things that are useful to our products and projects .
Q&a
1. Have you ever done scrum before? @ Little U
Xu Dashen: It will be awkward to start, and after four to five sprints there will be a sense of rhythm and understanding. Scrum is important for the team to find the rhythm, and the good team will not work overtime.
(Small snail quotations: use of worktile do not work overtime OH)
2. How do I Review a task that cannot be demonstrated? @Nemo Pre-Lenovo PM
Xu Dashen: In addition to the task there are a lot of review things, such as documents, must review the results of things.
3. Products old feel that we do not want to do their demand, resist strong emotions, how to break? @Rex. M AZT PM
Xu Dashen: Good example, pull the product into team, because different department products, testing, development have different things and progress, do not want to be upset the plan. There is no division in scrum, and we are all in a Develop Team, more transparent way to communicate better.
(Small snail Quotations: collaboration with worktile, more transparent, seamless communication)
4. How to get team members to work more proactively, and how to implement agile development in your application projects? Sometimes it's hard and out of tune. @ Wang Xiao?? Zhongke Soft Programmer
Xu Dashen: Pre-set members are proactive and able to do a good job, which is the precondition, secondly to pay attention to the art of management, the protection and encouragement of members. Some projects are not suitable for agile development do not reluctantly. There may be projects that are better suited to waterfall processes, and finding the right way to do things is one of the essence of agility.
5. How to improve the quality of the product by increasing the level of collaboration across teams with different levels? @ Takasugi CBEC product operation and maintenance
Xu Dashen: It's really painful to start with, doing a few sprints will be much better, you see the benefits of this development model, in the uncomfortable place for the sprint improvement, and constantly evolve, so that people like this thing. Get team members to take the tasks they want and encourage them to take on the part of the job that interests them, want to do, and want to challenge, while making work more transparent.
6. Does the test case have someone responsible for writing it? @ I'm sleeping openrec.tv
Xu Dashen: One of the requirements in the previous project was not to allow manual testing, only automated testing, and testing to write automated test code. Everyone has a division of labor and expertise, in scrum there will be a certain division of labor.
7. What is the role of the tester in the Agile team? How can we be more integrated? @ Victoria Wang Open Eye development
Xu Dashen: As far as possible to allow testers to enter the development, into the scope of automated testing, if the test is willing to take part of the development of the work, which is possible.
8. At present, the team or the division of functions, so different departments of the contradictions and differences how to solve? @Rex. M AZT PM
Xu Dashen: The need for agile development is the support of management, the division between the need for management to effectively coordinate and assist, can choose to put the important person into the scrum Team, he felt that the time will also bear a part of the pressure, different departments of the Leader mutual understanding of each other in order to better cooperate.
How does the force of 9.Product item split into a Task control? How is it convenient to make use of worktile? @ Shi Xing TCM Big Data
Xu Dashen: The Task is done as much as possible within a day, and a Product item must be completed within a Sprint, otherwise it would be too big to lose the meaning of agile development.
10. Technical team management issues, how to deal with the task load in the team uneven and resulting contradictions and conflicts? @ van
Xu Dashen: This situation may occur when a task is forced to be assigned. If it's scrum, cross functional, at least one module can take two or three people. In the latter case, if someone is unable to do what they want to do, Scrum advocates that they take the task they want, generally without dissatisfaction.
11. Does the task require other people to review task completion after it is completed by the developer? @ I'm sleeping openrec.tv
Xu Dashen: In scrum there is no, after startup, the whole team determines the DOD, how to determine that a task is completed, is determined by the entire Dev team, the person doing this function meets the requirements, he can think that the completion of this part of the work. And finally can release out or in sprint Review by the product Owner to see the Demo to decide whether it can be release, if not, you need to open a new work item, re-modify the module.
How does scrum really play?