Before starting with the key terminology, let’s clarify what Agility is. This project management methodology was born in 2001, together with a manifesto formulated by software developers. Agile teams divide projects into small pieces, incrementally delivering value frequently, with a preference for a short timescale, in a constant pace and cadence (iterations, sprints, etc.) In this way, the final product is most likely to fulfill the customer expectations, and due to the regular product testing, the team can be sure that everything works properly.
The Agile manifesto has a clear values statement, which puts personalities and communication above the paperwork and blind procedure following. The Agile mindset promotes putting individuals and interactions over processes and tools, working products over comprehensive documentation, responding to change over following the plan, and customer collaboration over contract negotiation. Moreover, Agile engages employees to be more open in terms of communication and allows people of different statuses and roles to easier accept their mistakes and be able to share their successes and knowledge in a judgment-free environment.
The abbreviation SAFe is deciphered as Scaled Agile Framework. SAFe is usually applied in big organizations or projects, where the crossover between multiple teams and portfolios is required. By scaling Agile throughout the whole organization, businesses can achieve better alignment, communication, and faster product delivery. It allows them to get rid of silos, which Agile teams face when working in a traditional hierarchical company which follows linear processes and inflexible procedures.
The SAFe framework is based on four values: alignment, built-in quality, transparency, and program execution. The SAFe methodology very much shares the principles of Agile, which form the base of the whole framework. SAFe helps to implement the systems, taking into consideration all the product development aspects. The decision-making process should be decentralized and distributed amongst the teams. Continuous workflow is one of the main things to be maintained in an Agile environment. In order to do so, the amount of work teams are assigned to should be decreased, the work in progress should be limited, and teams should manage the queue length. The products should be created incrementally, with clearly set milestones, learning cycles, and incorporated feedback from customers.
The SAFe framework is based on four values: alignment, built-in quality, transparency, and program execution.
Scrum is a framework which creates value through adaptive solutions for complex problems. There are three accountabilities which form a Scrum team: Product Owner, Scrum Master, and Developers. The Product Owner represents the customer and other stakeholders, drives the product backlog, and prioritizes the work that needs to be done. The work is later done by a self-organized development team during a sprint, a period which can be from one week to one month long, depending on the preferences of the Scrum team. A Scrum Master makes sure that Scrum is understood and implemented effectively within the team. This person is a true leader of a Scrum team, helping to comprehend the theory, practices, and rules of the framework. The work in progress is frequently revised and adapted if needed, so that in the end, the delivered product is efficient and working.
The Scrum framework highlights five values to maintain in the team: courage, focus, commitment, respect, and openness. Courage means being brave enough to do the right thing and work on difficult problems. Focus requires the team to be concentrated on the work of a sprint and the goals of the team. Each of the team members is required to show a personal commitment to achieving the team goals. Everyone in the team has to respect their colleagues and see them as capable and independent individuals. Openness requires the team to be transparent with each other about the work they do and the challenges they experience along the way.
The Scrum framework is based on empiricism, which means that the knowledge is derived from the process of product creation, and the decision-making process is based on observations. There are three foundational pillars of Scrum: transparency, inspection, and adaption. Transparency in the company can be established if organization have artifacts such as the product backlog, sprint backlog, and product increment. In this way, teams can better imagine the project goals and plan collaboration with their coworkers. Transparency is crucial to be able to implement inspection in the organization. Inspection is needed in a Scrum team to see the progress in the product development process, understand the challenges appearing, see the successes, and view status of the goal accomplishment.
Inspection prescribes the regular events to attend and organize. These are the sprint, sprint planning, daily scrum (15-minute meeting to share progress), sprint review, and sprint retrospective. Without a proper inspection, adaptation will be senseless. Adaptation comes during the inspection phase, when the team finds things that require change. The team decides what actions have to be taken, after which they will implement them.
There are three foundational pillars of Scrum: transparency, inspection, and adaption.
Kanban means “visual board” in Japanese. It's a way to visualize and improve the flow of work on a particular project. By visualizing work, teams can more easily streamline work and maximize efficiency across multiple teams. Kanban is a tool that helps teams increase productivity while minimizing wasteful activities and creating more value for customers without increasing costs. The Kanban board has three basic columns: requested, in progress, and done, and during the project realization, the cards with the tasks should move from one column to another. Kanban has four foundational principles:
• Start with what you are doing now: Kanban emphasizes that the method should be applied to the current process and workflow, without making any changes in the initial setup. With time, if a team needs and is comfortable with implementing any novelties, this can be done.
• Agree to pursue incremental, evolutionary change: the methodology teaches to make small incremental changes rather than radical ones that might cause resistance in the team and organization.
• Initially, respect current roles, responsibilities, and job titles: Kanban is a method, not a framework, so it does not imply bringing any organizational changes. If the team collaboratively decides to adjust the team structure or processes, they can implement them.
• Encourage acts of leadership at all levels: the leadership acts should not originate only from the senior managers, as all levels can provide ideas on how to bring continuous improvement of the products or services into reality.
In conclusion, there are a few particularly important takeaways in this piece. SAFe is a framework which applies Agile to big enterprises or big projects which require cross-over between multiple teams. Scrum is a lightweight framework which can be part of the SAFe environment if teams find Scrum comfortable in the project management process. Kanban is a tool which can be a part of SAFe or Scrum, but it can also be used independently outside of the aforementioned frameworks. I hope that this information makes your Agile journey more clear and productive!