In ancient times, people sent messages through posts or beacon towers, and their messages were updated every few weeks or days. In modern times, people sent messages by letter or telegram, and their information was updated in hours or days; In modern times, people send messages on computers, on phones, updates in seconds or milliseconds. With the progress of society and the development of science and technology, the speed of information updating is getting faster and faster. So whoever gets the information first wins. In Internet products, the same is true, who launched a product first, who is the leader.
In order to quickly launch products in the market, then the corresponding need to quickly carry out planning, development, testing these processes, and in the development of a planned alarm clock to make changes at any time with some changes in the market. However, the traditional development model has a long process for this change, which is not suitable for this change, so the corresponding, agile development came into being.
Agile values:
Individuality and interaction over processes and tools
Working software trumps detailed documentation
Customer cooperation trumps contract negotiation
Change accordingly rather than follow the plan
The 12 principles of Agile:
Continuously deliver valuable software to customer satisfaction
Face changing requirements throughout the development process
Business and development must work together
Face-to-face communication is the most effective way to convey information, both inside and outside the group
Inspire individual morale and support team members’ trust
Working software is the primary measure of progress
The agile development process promotes sustainable development, where both the developer and the customer are on the same page
A relentless pursuit of technical excellence and good design
Keep it simple and minimize unnecessary work
The best architectures, requirements, and designs come from organizational teams
The team regularly reflects on how to improve its effectiveness and adjust itself
Agile teams are composed of scrummasters, product owners, and team members. The usual number is six to eight. The project is initiated by the product owner, who meets to gather user stories prior to release and sprint planning meetings.
Understand a few concepts here:
Release planning: Let the Scrum team determine all releases for the software product to be delivered, along with a reasonable delivery schedule.
Sprint planning: This is before the sprint begins and after the release of the plan. The content of the meeting is generally
1. The product owner combs through the user story and decides, based on team feedback, what should be done first and what should be done in which sprint phase
2. The time it takes to turn user stories in the current sprint into deliverables
Release planning and Sprints After the planning meeting is complete, the sprints begin. The sprints involve daily standing meetings, which are typically 15 to 30 minutes long. A sprint is usually 1 to 4 weeks. For the rest of the work, it is represented by an iterative burn out diagram, which can be updated with the Scrummaster. At the end of each sprint, the team meets for a sprint review meeting. A sprint review meeting is held to discuss what is done and what is not, to demonstrate the current product to the product owner, and to obtain product updates from the product owner.
After the sprint review, the team also holds a sprint review to determine what needs to be corrected and what can be learned from the sprint. Learn how to make the team work better together in the coming days. So, having said all this, what are the benefits of Agile project management? First of all, in traditional projects, risks are generally handled by avoiding, transferring, accepting and mitigating. In agile projects, embracing change and changing the content of the sprints as requirements change mitigates significant risk management costs.
In the development life cycle, the traditional project is a process of requirements, design, coding, testing, acceptance and deployment. If there are requirements to change in the middle, then we have to go through a long change process, which wastes a lot of time. So in an agile project, you just need to go through the initial requirements planning and initial discussion, and then you can start the sprint phase. Each sprint phase has requirements design, coding, and testing. These steps, small steps, for changing requirements, can be done in the next sprint. This greatly increases adaptability.
In terms of motivation and achievement, traditional projects let the project manager decide what the team members do, whereas agile projects let the team decide what they do.