Welcome to Tencent cloud + community, get more Tencent mass technology dry goods Oh ~
This article is published by Bo Yufu in the cloud + community column.
Are you agile today? Agile has evolved from trickle-down to industry trends in the Internet and software development arena, improving development methods to a lesser extent, and transforming waterfall lifestyles to a faster iterative, faster-running product development.
We use tapd to write features, move tasks around, track tasks, and talk about agility, but are we really on the right track? (Note: tapd is an agile project management system within Tencent).
1.Friend, have you heard of allergy?
2.How do we get rid of agile tools?
3.Design should also intervene in agile process?
4.Is agile opposed to documents?
5.I have tens of billions of big projects. How are they sensitive?
6.Better a book than a book.
Like the founding fathers, the seventeen named themselves the Agile Alliance after the conference, endowing them with not only new methods but also declarations and even programs.
Salt Lake City – Snowbird (Agile Alliance Established Snowbird ski resort)
The Chinese version of “Agile Manifesto”. In Manifesto for Agile Software Development, founded in March 2002, you can find “Agile Manifesto” in dozens of languages.
In addition, elders have formulated 12 principles as gospel communication.
Obviously, agility is absolutely result-oriented. It is the ultimate myth to document, process, communicate and cooperate efficiently.
It seems to be a good way to do it. Documents don’t matter. Processes don’t matter. Just get together and talk about it, right? That’s great. I feel relieved from heavy paperwork.
What is lost is lost. The convenience of one place must mean somewhere else to run the simplified parts.
Without documentation, agile managers need to maintain a more sophisticated pool of requirements; without processes, verbal communication becomes the norm, and team coupling becomes more demanding.
Fat friend, there is a doctrine here. Would you like to hear it?
When you first know agile, there are some concepts to understand. If you are an old driver, skip this part, Armin.
agile：Quick and agile. This is the concept and essence of Agility: quick response to needs and quick feedback results. The introduction of agile is like a living water hitting the old waterfall flow model and winning several streets at a speed.
sprint：Literally sprint sprint, a development phase is considered a sprint, one sprint after another linked to form a project.
Scrum:It refers to the tactics or actions of scrimmage in rugby.
scrum That is, in such a way, everyone rushes forward, the team is the player, the ball is the product goal, the people are interlinked, around the product goal to work. There is a shadow of “Co ordinating law” in this area, and personnel cooperate deeply to achieve optimal results.
backlog Demand pool. To-do list.
Backlog What is written inside:
1.To be developed.
Agile needs to maintain a detailed list of needs. This list often requires scrum holders (typically product managers) to have a thorough understanding of all the things to be developed and to be able to break down the things to be developed into more detailed tasks (or, along with Agile coaches, Agile teachings will be mentioned again later on).Practice)
Many domains have storyboard concepts. In interactive domains, storyboards are used to describe user scenarios, and in movie domains, storyboards are used to describe the split mirror more specifically. In the development domain, storyboards are visual windows for task flow, usually with areas of “to be developed”, “in development”, “to be tested”, “to be reworked” and “to be published”Block, where all tasks are transferred by the task operator to the next step, so that any project member can see the completion of the task.
A app using scenario story version
In development, storyboards display workflow for all requirements.
burn down chart：
In a sprint, person / time is a relatively fixed value. In this time frame, the development task is fully arranged, and time settlement is made everyday, and time burnout map is drawn. Members of the project are informed of time progress through the burn-out diagram, and if the burn-out time of the project matches the expected time, the demand time estimate and safety are achieved.If the arrangement is reasonable, it will need to be adjusted in the next sprint if it doesn’t fit.
The noun sounds very mysterious, which is very consistent with the style of Kai Zong faction. These concepts define the work of the various aspects of agility, and these processes and nodes are the foundation and guarantee of agile development.
One mistake: we use agile management tools to be agile.
With the continuous integration of agile in the industry, various tools and products emerge one after another. Foreign jira, redmine, Axosoft, domestic leangoo, Zen Tao, all three have their own research tools, Baidu’s icafe, Ali’s aone, I goose research tapD.
（Data source: “2016 China developer white paper”
We build iterations on tapd, build requirements, research and development, test and wait for emails to get requirements flowing, and then we start to work.. Tasks flow between testing and development, bugs are raised to research and development, and bug solutions are developed.. We declare: We’re agile!
We are accustomed to the convenience of agile software and solve everything in groups, but we have lost the original intention of agile, scrum.
JiraThe name comes from Godzilla.
Suppose we do not have any project to collaborate with software, how can agile be implemented?
Setting up an environment, there is no synergy tool available now, but everyone sits together. Someone stood up and said, in this case, let’s be agile.
The agile tool has disappeared.
There must be a project holder in the agile path to plan and grasp the direction of the project. This product Wang I look at your bones surprise, you take on this responsibility.
There is another key person, SM. SM is called scrum master. Chinese is called agile coach. Generally speaking, SM needs to be a technical manager who is clear about technology development and current projects.
Despite the lack of online tools, at least prepare some simple materials: a roll of double-sided glue + white paper or a stack of stickers; a pen, a flat wall or a blackboard.
If there’s still a computer available, Excel or word, or even a writing board, and if there’s no computer, it’s a good blank paper. Anyway, you have to find a place to write your backlog.
Example of requirement pool (task name, platform, detailed description, priority decreasing gradually according to P0-PX)
Determine a natural period of sprint cycle. We can use the concept of month / ten days / week as a cycle, and we choose a week (five working days) as a sprint cycle.
Prioritize and pull from the demand pool what you think should be added to your poor first sprint. Don’t be greedy. You’ll probably think about a week or so of development is enough. Pull SM sang to have a separate meeting.
Of course not to let you two stand silly, you two have a meeting.
When you look at the requirements together, SM mulberry breaks down the requirements according to experience. For example, a requirement needs to be decomposed into ABC three parts at the development level. These three parts form three development tasks.
After the decomposition is completed, you get a more detailed list of pending development.
Before a sprint is officially launched, a scrum meeting is needed to discuss the features of the sprint.
What will be discussed at the meeting?
1.Demand discussion or technical discussion;
2.Members estimate the time required for the development of the requirements.
3.Demand is match manpower time, demand is discharged into sprint;
The estimated time of each task is finally determined by the agile coach.
scrum Your work after the meeting:
1.Sort out the requirement list in this sprint.
2.Collate the expected development time for each requirement.
3.Write little notes on the storyboard.
4.Stick the little note to the story board.
5.Make a burn out chart.
An improved version of the note, which describes developers, task descriptions, estimated time and daily burnout time.
The layout of the story is as follows:
A standard story version: at the beginning, all the little notes were in the “development” column.
So far, you can start run with a sprint.
Think this is over? Naive.
Next you must attend the short meeting held every day. This link is very important in agile, and is the daily practice of agile. In order to cut down on meeting time, we usually stand up and drive — so it’s also called a “stand-up meeting,” which takes 10 to 15 minutes after work in the morning or before work in the evening.Finish it.
Who will attend the meeting?
1.You (project holder)
3.Other scrum members
What will the station do?
1.What did you do yesterday, what problems did you encounter, how to solve them or seek solutions?
2.Yesterday’s task completion status, how much time is left, whether it needs time correction (increase or decrease time), the completed task flow to the next link (the paper from one item, paste into the next item);
Examples of small notes in progress
3.Is there any rework after function test?
After your meeting, your work:
Draw burn chart.
An example of burnout map: the normal sprint mission time decreases with the sprint process.
After the completion of a sprint, you have held second scrum meetings. At that time, there was one more topic: a sprint on the second set.
The task failed to burn out; too many R & D work was done; the test demand was silted up.
Solve the problem according to the problem, according to the actual situation of the next sprint task arrangement.
Since then, we have started the agile journey without the help of any agile tools.
Agle development, by its very nature, rejects the way documents work, creating a rigorous and huge set of tools for a small, light-hearted approach that basically goes against the senators’original intentions, Koko.
Good. We have a designer.
Project owners divide the demand into two categories: “UI support” and “non UI support”. Let’s expand the little note.
A small slip out of the front part of the UI.
U IThe designer participates in the scrum meeting. For the need for UI support, the designer gives a time estimate for UI production. The project owner adds this part of the time to the expanded note. In a sprint, the designer’s work is done separately with the research and development work.
When a Designer completes a requirement, the UI portion of the note is torn off and fed into the “to be developed” section.
An example of a small paper that has completed the UI design.
An erroneous process
Such a merit in the contemporary era will certainly benefit. So –
Who will maintain the document and how to maintain it?
We select several important documents: product document, outline design, interface document.
Product documentation: I’m sorry, but a product manager will come down. Although you have to maintain the backlog, decompose the requirements with SM, open scrum meetings, write notes, open station meetings, draw burnout charts, and have any external communication, write PPT, rack your brains to plan.You must also carefully maintain this document.
It’s you again
The product documentation includes:
2.Date of accession;
4.Presentation and detailed solutions
In the non-agile development process, documents are refined and updated after the review meeting, forming a realization goal for R&D reference. In agile, the requirements themselves evolve throughout the sprint cycle, and you can complete the documentation after a sprint.
Summary design:Summary design is not a necessary document in agile conventional iteration. But new projects, refactoring and major new functions must output outline design documents. Research and development leader is duty bound. This is down on you.
Interface document:Necessary and important. It includes interface specification, field definition, field type, value definition, data report, error code and so on. Generally speaking, the document will be updated by the interface developer after the appointment. If you don’t have the ability to store in the cloud, at least let’s keep a copy of it in hand and update it regularly.
In the long run, documentation is a powerful tool to improve efficiency.
Although the Declaration explicitly lowers the status of documentation (“software at work is greater than detailed documentation”), agility emphasizes interaction and change, as well as timely response to change. It is true that documents can not be so flexible. But does agile really reject documents altogether?
The timeliness and flexibility of documents are much lower than that of oral communication, but they have real benefits.
1.In space, documents are more widely spread. Standardization and routinely formed documents can greatly reduce communication costs. Especially in the case of multiple systems collaboration, cross-scrum, cross-team, and even cross-departmental communication occurs from time to time, the importance and convenience of documentation is self-evident.
2.In time, document circulation is better. The team is not static. Some people leave and others join. In the new generation, new people quickly understand the system, veterans inherit the concept of research and development; in a larger time span, the team may become the ship of Theseus, the existence of documentation is a complete traceability of the product process, you will not need himPeople help to understand most of the products and even the whole picture.
A sprint that needs overtime work.
3.Enter the agile process, regular scrum meetings, standing meetings, burn out charts, storyboards. Unfinished tasks recalculate time at scrum meetings, roll into new sprints, and so on (completing tasks in sprints on time is the goal. Not really. We still have bleeding.Time?
4.Don’t forget the document.
Though highly praised, agile is not a perfect development method. The biggest advantage of agility is flexibility, and the root of agile problems is flexibility.
At the end of the paper, the key points of this article are summarized.
1.Agile is a process, method, idea and even belief.
2 Agile management software is not necessarily agile. The original idea of agile is that team members can work more closely together to complete the work, and if the online flow weakens this coordination, it is contrary to the original intention of agile. In fact, as long as you have whiteboard, paper and pen, your team can start agile.
4.We are agile, not without documents. The need for documentation is obvious when there are many external exchanges and long generations. Long term face-to-face communication will eventually lead to inefficiency, which is also the root cause of agility defects.
5.Designers can fully intervene in the agile process, and only need to make some careful arrangements.
6.Large project development can be agile, specific issues specific analysis, need to develop agile plans according to the characteristics of the project.
（All the illustrations of the article are hand drawn by the author, all rights reserved.
Question and answer
ScrumWhat is the difference between agile development and agile development?
Bullshit Tan Minjie
Agile development –scrum
Cracking agile code
【Daily course recommendation] machine learning actual combat! Quick start online advertising business and CTR related knowledge
This article has been authorized by Tencent authorizing cloud + community.
Search the public name “Yunjia Community” to get the first dry goods of technology, and reply 1024 to send you a big gift package of technology courses!
Massive technology practical experience, in the cloud plus community!