Agile is an iterative approach to project management and software development that helps teams deliver value to their customers faster and with fewer headaches. Instead of betting everything on a “big bang” launch, an agile team delivers work in small, but consumable, increments. Requirements, plans, and results are evaluated continuously so teams have a natural mechanism for responding to change quickly.
Whereas the traditional “waterfall” approach has one discipline contribute to the project, then “throw it over the wall” to the next contributor, agile calls for collaborative cross-functional teams. Open communication, collaboration, adaptation, and trust amongst team members are at the heart of agile. Although the project lead or product owner typically prioritizes the work to be delivered, the team takes the lead on deciding how the work will get done, self-organizing around granular tasks and assignments.
Agile isn’t defined by a set of ceremonies or specific development techniques. Rather, agile is a group of methodologies that demonstrate a commitment to tight feedback cycles and continuous improvement.
The original Agile Manifesto didn’t prescribe two-week iterations or an ideal team size. It simply laid out a set of core values that put people first. The way you and your team live those values today – whether you do Scrum by the book, or blend elements of Kanban and XP – is entirely up to you.
Why choose agile?
Teams choose agile so they can respond to changes in the marketplace or feedback from customers quickly without derailing a year’s worth of plans. “Just enough” planning and shipping in small, frequent increments lets your team gather feedback on each change and integrate it into future plans at minimal cost.
But it’s not just a numbers game—first and foremost, it’s about people. As described by the Agile Manifesto, authentic human interactions are more important than rigid processes. Collaborating with customers and teammates is more important than predefined arrangements. And delivering a working solution to the customer’s problem is more important than hyper-detailed documentation.
An agile team unites under a shared vision, then brings it to life the way they know is best. Each team sets their own standards for quality, usability, and completeness. Their “definition of done” then informs how fast they’ll churn the work out. Although it can be scary at first, company leaders find that when they put their trust in an agile team, that team feels a greater sense of ownership and rises to meet (or exceed) management’s expectations.
Agile yesterday, today, and tomorrow
The publication of the Agile Manifesto in 2001 marks the birth of agile as a methodology. Since then, many agile frameworks have emerged such as Scrum, Kanban, Lean, and Extreme Programming (XP). Each embodies the core principles of frequent iteration, continuous learning, and high quality in its own way. Scrum and XP are favored by software development teams, while Kanban is a darling among service-oriented teams like IT or human resources.
Today, many agile teams combine practices from a few different frameworks, spiced up with practices unique to the team. Some call this heresy. We call it practical. It’s not about “Agile” – it’s about agility.
The agile teams of tomorrow will value their own effectiveness over adherence to doctrine. Openness, trust, and autonomy are emerging as the cultural currency for companies who want to attract the best people and get the most out of them. Such companies are already proving that practices can vary across teams, as long as they’re guided by the right principles.
Teams on agile
The way each team practices agile should be unique to their needs and culture. Indeed, no two teams inside Atlassian have identical agile practices.
Although many of our teams organize their work in sprints, estimate in story points, and prioritize their backlogs, we’re not die-hard practitioners of Scrum. Or Kanban. Or any other trademarked methodology. Instead, we give each team the autonomy to cherry-pick the practices that will make them most effective. And we encourage you to take a similar approach.
For example, if you’re on a queue-oriented team like IT, Kanban provides a solid foundation for your agile practice. But nothing should stop you from sprinkling in a few Scrum practices like demo sessions with stakeholders or regular retrospectives.
The key to doing agile right is embracing a mindset of continuous improvement. Experiment with different practices and have open, honest discussions about them with your team. Keep the ones that work, and throw out the ones that don’t.