Agile vs Scrum: What’s the Difference?
Anyone who is familiar with the day-to-day practices of software engineering will have most certainly come into contact with a variety of development project management methodologies such as Agile, Lean, and Waterfall. Over the course of a project, you’ll make many big decisions. And one of the first decisions you’ll make is choosing which methodology to follow. Today we’ll be looking at the relationship between Agile and Scrum. Perhaps the most famous methodologies, Scrum is actually an offshoot of Agile, or at least that’s the common conception. Let’s look a little more closely at Agile vs Scrum.
A closer look: Agile
Agile is based on an incremental, iterative approach. Instead of intensive planning at the start of the project, Agile (and its subset methodologies which we’ll refer to later) allows the changing of requirements over time and encourages constant feedback from the end-users. Cross-functional teams work on iterations of a product over a period of time, and this work is organised into a backlog that is prioritised based on business or customer value. The goal of each iteration is to produce a fully functional product. Established in 2001 by 11 software developers in Utah
The 12 Principles of Agile Methodology
The Manifesto for Agile Software Development lists 12 principles, which go as follows:
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with preference to the shorter timescale.
- Business people and developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity — the art of maximising the amount of work not done — is essential.
- The best architectures, requirements, and designs emerge from self-organising teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
A closer look: Scrum
Scrum is a subset of Agile and one of the most popular process frameworks for implementing Agile. So, it would appear they’re complementary methodologies rather than competing frameworks. Unlike some other frameworks, Scrum follows a more structured methodology. Like Agile, it is also iterative — and is used to manage complex software and product development.
It uses fixed-length, two-week periods known as sprints where stakeholders and engineers meet to share progress and offer incremental feedback. It’s a fast and effective subset of the agile framework that’s designed to deliver value to the customer throughout the development of a project.
Let’s look at how methodologies affect a project in real terms…
Read the full article at: https://thescalers.com/agile-vs-scrum-whats-the-difference/