Most projects start with a simple idea. Someone thinks of a product or service that may be wanted or needed, and then they assemble a team to bring that idea to market. Not long after, tasks are allocated, timelines are set, meetings are held, and, finally, the project is completed and the consumer’s needs are met. If only it was that easy! All too often deadlines are pushed back, responsibilities are blurred, and team members are burnt out to the point where they’ve lost sight of the initial vision and goal. Solution? Agile methodologies can help reduce the complexity of a project by breaking down big tasks into small but actionable deliverables. Once an agile framework is properly implemented, teams can better collaborate to deliver value to customers faster and with fewer issues.
How an agile approach can help
The term agile refers to the methodology explored in the Agile Manifesto. Since then, it has inspired other complementary methodologies, including Extreme Programming (XP), Lean Development, Crystal, and the two most popular: Kanban and Scrum. These processes have been embraced by software development teams as well as manufacturing, customer support, marketing, sales, operations, and more. Simply put, an agile framework helps teams identify, prioritize, and complete work items one at a time to improve quality and speed to market.
What is Kanban?
The first Kanban system was developed in the 1940s by Taiichi Ohno, an engineer at Toyota. Inspired by displays of inventory in retail supermarkets, his goal was to improve the efficiency in auto manufacturing by creating a system that would minimize waste by producing products based primarily on customer demand. Using a workflow chart with visual cues, the process removed wasted motions and movements which in turn lowered production costs and increased profits. Today, this chart is commonly referred to as a Kanban board and has the same objective — to visualize work, limit work in progress, and maximize workflow efficiency.
What is a Kanban Board?
The word Kanban means signboard or billboard in Japanese. Essentially, work items are represented on a shared board where team members can quickly update the status of their tasks and see who’s working on what and when. By making the workflow visible in this way, teams can quickly see the length of time a task takes and how the project is progressing. It also makes it easy to identify any blockages that may be slowing down the process or preventing the team from working efficiently.
A kanban board is generally used to visualize a six-step workflow:
- Backlog: A backlog is a complete list of tasks that need to be completed to finish a project. A backlog exists as a separate column and contains tasks that a team will need to work on in the future.
- To do: The “To Do” column represents a prioritized set of tasks which have moved from the backlog and are ready to be worked on. At this point in the workflow, tasks are assigned and due dates are set.
- In progress or Work in Progress (WIP): Tasks that are currently in progress. Only a certain amount of tasks can be in progress. Setting limitations is an important aspect of the Kanban methodology as it prevents work from piling up and ensures the team finishes preceding work, before starting new work.
- Review: Tasks in this column are pending design review or critique.
- Ready for dev: Tasks that are approved for design handoff.
- Completed: The final product or service which is ready to be used and tested by consumers.
What is Scrum?
Unlike Kanban which is based on a continuous workflow, the scrum agile framework has fixed periods, referred to as sprints, in which a set of work must be completed and ready for review.
Scrum Roles
Scrum teams are self-regulated, demonstrate collective accountability, and are on an equal playing field, despite having different responsibilities. The team is united by the shared goal of completing the project and providing value to customers. Members of the Scrum team are expected to report their daily progress, along with successes and challenges to other team members during daily stand-up meetings. In general, Scrum has three clearly defined roles:
- Product Owner: Defines the work that needs to be completed, advocates for the customer, manages the product backlog, and helps prioritize work for the development team.
- Scrum Master: An expert on how Scrum works and helps the team apply Scrum principles. They also remove any obstacles, facilitate team communication, and mediate discussions. Scrum.org, The Project Management Institute (PMI), Scrum Inc., and Scrum Alliance are all prominent organizations that provide training and award certification in Scrum.
- Development Team: Responsible for delivery increments and developing and building the product.
Is The Agile Approach Right for you?
All agile methodologies offer a structured path that allows for a certain level of flexibility. However, determining which agile process is the right fit for you and your team isn’t always easy. If the types of clients or projects you usually work on have no determined limits or requirements or are of high complexity, then the flexibility of agile could be the way to go. On the other end of the spectrum, if the client knows what they want and are unlikely to have major changes in the scope of the project, then a traditional approach, such as waterfall, may be better suited for your needs.