CodingEvents


Project maintained by HealthyGamer Hosted on GitHub Pages — Theme by mattgraham

Agile Project Management Basics

Resources

https://www.atlassian.com/agile

https://agilemanifesto.org/

What is Agile?

The Agile Manifesto was created in 2001 to attempt to rethink how the software development process works. There are very few processes in Agile itself, but techniques like Scrum and Kanban came along and gave us that.

What Agile Isn’t

Creating Tasks

One thing that most Agile techniques use is that they create a hierarchy of tasks, from overall goals down to something that people can finish within a couple of days. The names of these tiers vary, but the concepts are similar. How many layers you use will depend on the complexity of your project.

Scrum

Scrum is one way that we layer processes on top of agile principles. The full process could be its own topic, but we’ll review some main points.

Sprints

Sprints are short periods (traditionally two weeks) where a team plans to do a set amount of work. At the beginning of each sprint, the team gets together to determine their work for the rest of the sprint. At the end of each sprint, anything that wasn’t completed gets moved to the next sprint.

Backlogs

Scrum uses two backlogs, the project backlog, and the sprint backlog. The project backlog is all the “stuff” the team is planning on doing, and in each sprint, the team pulls tasks from the project backlog into the sprint backlog. They will usually also have a way to track the status of the task within the sprint as well.

Meetings

The team does three central meetings throughout the sprint to ensure that things continue progressing smoothly.

Kanban

Kanban has an interesting history in relation to software project management and agile. The tech industry didn’t make it. Toyota created it in the 1940s to help them build cars.

Instead of set sprints, kanban uses a single board with different status columns for each task. Team members can pick up a task from the backlog and move it into the various columns (these may be things like to-do, in progress, and done) so everyone can easily see the status of these tasks at any time.

Unlike Scrum, there are no set periods for when tasks will be completed. Instead, each team member picks up a new task when they complete the last one ensuring continuous delivery of results.