Agile is a methodology focused on lightweight software development cycles, with fast releases, iterations, and continuous improvements; Scrum is an adaptation of Agile but for achieving business objectives through a set of rules and a team organized according to the Agile methodology principles. Therefore, Scrum is a business process built on top of Agile, a method originally built for software development.
Aspect | Scrum | Agile |
---|---|---|
Framework or Philosophy | Scrum is a specific framework within the Agile methodology. | Agile is a broader philosophy and set of principles for software development and project management. |
Roles and Responsibilities | – Scrum defines specific roles, including Scrum Master, Product Owner, and Development Team. – Each role has well-defined responsibilities. | – Agile does not prescribe specific roles but encourages self-organizing, cross-functional teams. – Teams determine roles and responsibilities based on their needs. |
Iterations | – Scrum operates in fixed-length iterations called “sprints,” usually 2-4 weeks long. – Each sprint has a defined goal and produces potentially shippable increments. | – Agile practices often involve iterative development but do not specify fixed timeframes like Scrum’s sprints. – Agile allows for flexibility in iteration length. |
Artifacts | – Scrum includes specific artifacts, such as the Product Backlog, Sprint Backlog, and Increment. – These artifacts support transparency and inspection. | – Agile practices can use various artifacts depending on the chosen methodology or approach. – Agile emphasizes working software over comprehensive documentation. |
Meetings | – Scrum defines specific ceremonies, including Sprint Planning, Daily Standup, Sprint Review, and Sprint Retrospective. – These meetings provide structure and opportunities for collaboration. | – Agile practices may involve meetings like stand-ups but are less prescriptive about which meetings to hold. – Agile values face-to-face communication and collaboration. |
Flexibility | – Scrum provides a structured framework with defined roles, events, and artifacts. – It is less flexible in terms of process adaptation. | – Agile values flexibility and adaptability. – Agile practices can be tailored to the specific needs of a project or team. |
Documentation | – Scrum encourages minimal documentation and focuses on working software. – Documentation is often in the form of user stories and acceptance criteria. | – Agile principles prioritize working software over comprehensive documentation. – Documentation is kept to a minimum but can be tailored to project requirements. |
Feedback and Adaptation | – Scrum promotes regular inspection and adaptation through Sprint Reviews and Retrospectives. – Teams use feedback to improve their processes. | – Agile principles emphasize frequent feedback loops, allowing teams to adapt to changing requirements and customer needs. |
Scaling | – Scrum can be scaled using frameworks like Large Scale Scrum (LeSS) or Scaled Agile Framework (SAFe) for larger organizations. | – Agile methodologies can be scaled by using various frameworks like SAFe, Disciplined Agile Delivery (DAD), or Large Scale Scrum (LeSS). |
Purpose | – Scrum is well-suited for projects with clear product development goals and where a structured framework is beneficial. | – Agile is a broader philosophy applicable to various projects, including those with evolving requirements and uncertain outcomes. |
Scrum
Agile Methodology
Read Next: Agile, DevOps, Scrum, Lean.
Agile vs. scrum examples
In this example, we will analyze the transportation company Dutch Railways.
Background
The Dutch railway network is one of the most patronized in Europe.
Before the start of the pandemic in 2019, state-owned company Dutch Railways moved 36.7 million customers in September alone.
This would not have been achievable, however, without the implementation of the Scrum methodology around a decade earlier.
In 2008, Dutch Railways attempted to build a new information system that displayed more accurate travel information for passengers and required less manual intervention.
The system, dubbed PUB, controlled the information displays and audio broadcast system for each train station.
But initial efforts to build the PUB using the Waterfall method failed.
Detailed requirements were sent to an IT vendor and the company expected a fully functional system to materialize with no further customer involvement.
After three years, the vendor was unable to deliver a working system and the project was canceled.
Scrum methodology
Dutch Railways then sought out another vendor that introduced Scrum to the company.
The vendor commenced with a project kick-off to prepare for the first sprint, but the selection of a suitable Product Owner was an immediate problem.
The vendor could not find anyone with the time, domain knowledge, and mandate to prioritize requirements.
In response, two business analysts were chosen to serve as Product Owners because of their experience and knowledge of stakeholders in the first attempt to build PUB.
The second problem was that these individuals did not know how to write user stories.
Whatโs more, the existing system documentation was unsuitable because it could not be broken down into smaller parts that could be built, tested, and demonstrated in a sprint.
Building the software
Building the PUBโs software was part of a larger ecosystem of multiple but related software systems and thus required a multi-disciplined effort.
Since meeting deadlines was important, โbest-effortโ estimates were made for the various functional areas after a few iterations.
At this point, Dutch Railways had also established accurate knowledge about its velocity and could thus communicate progress effectively using a burndown chart.
Scale-up to distributed teams
As part of a scale-up, two developers from India joined the project from the first sprint and worked on-site for 6 weeks to become familiar with the application domain, key stakeholders, and the development team itself.
A norming and chartering session was also held to determine how the Indian and Dutch teams would collaborate.
Early success was evident after the team built, tested, and demonstrated user stories that formed the heart of the PUB system.
Dutch Railways was pleased because progress was demonstrated quickly and it had more control over the projectโs direction.
Later, the vendor created two Scrum teams of five developers and then three teams with three developers.
To track and better manage the two cohorts working in different countries, the ScrumWorks Agile planning tool was utilized.
Documentation, requirements, and testing
Since the company required extensive documentation compliant with the MIL standard, a technical writer was hired to write the documentation in Dutch.
In the process, this freed up the developers and testers to spend more time on the software.
The vendor also noted that the one-line user stories accompanied by annotations from the Product Owner were sufficient for the Scrum team to build and test the software.
Automated unit and acceptance tests were conducted at the end of each Sprint and each was unhindered by bugs. As the system increased in size, this was maintained with only one tester per eight-person Scrum team.
Results
The end result was a 20-man-year, 100,000-plus line of code Scrum project which Dutch Railways was extremely content with.
While the nationwide deployment of PUB was hindered by problems in unrelated systems, an external audit reported that the quality of source code was very high and system maintainability was very good.
Key Highlights
- Agile Methodology and Scrum:
- Agile methodology is a paradigm shift in software development, focused on iterative and collaborative approaches.
- Scrum is a subset of agile methodology, co-created by Ken Schwaber and Jeff Sutherland, aimed at improving team collaboration and delivering software capability every 2-4 weeks.
- Scrum emphasizes flexibility, adaptability, and iterative progress.
- Agile Manifesto:
- The Agile Manifesto was established in 2001, outlining key principles for agile software development.
- It promotes customer collaboration, responding to change, and delivering functional software iteratively.
- Dutch Railways and Scrum Implementation:
- Dutch Railways utilized Scrum to address challenges in building a new information system named PUB for accurate travel information and automated displays at train stations.
- Previous attempts using the Waterfall method had failed due to lack of customer involvement and rigid requirements.
- Scrum Implementation Challenges:
- Finding a suitable Product Owner with domain knowledge and authority to prioritize requirements was challenging.
- Lack of experience in writing user stories and inability to break down existing system documentation into smaller parts were initial obstacles.
- Iterative Development and Progress Tracking:
- Scrum allowed for iterative development with a focus on building, testing, and demonstrating smaller components in each sprint.
- The concept of velocity and burndown charts helped Dutch Railways track progress effectively.
- Scaling to Distributed Teams:
- The project scaled up with developers from India joining the team on-site to collaborate and align with the main development team.
- Norming and chartering sessions facilitated collaboration between Indian and Dutch teams.
- Documentation and Testing:
- Extensive documentation requirements were met by hiring a technical writer, allowing developers and testers to focus on software development.
- Short user stories with annotations from the Product Owner sufficed for the Scrum team to build and test software.
- Automated unit and acceptance tests were conducted at the end of each sprint to maintain code quality.
- Results and Impact:
- The successful implementation of Scrum led to a 20-man-year project resulting in over 100,000 lines of code for the PUB system.
- Dutch Railways achieved higher project control, better progress visibility, and maintained code quality.
- The project was deemed successful, although deployment issues in unrelated systems impacted nationwide deployment.
Context | Scrum | Agile |
---|---|---|
Software Development | Scrum is a specific Agile framework for managing and delivering software products. It provides roles (Scrum Master, Product Owner, Development Team), events (Sprint Planning, Daily Standup), and artifacts (Product Backlog, Sprint Backlog). | Agile is a broader methodology or mindset for managing projects that emphasizes iterative development, collaboration, and adaptability. Scrum is one of the frameworks that fall under the Agile umbrella. |
Project Management | Scrum is often used as a project management approach, particularly in software development. It provides a structured way to plan, execute, and review work within defined time frames (Sprints). | Agile is a project management approach that can encompass various frameworks, including Scrum. Agile principles can be applied to manage projects across different industries and domains. |
Work Planning | Scrum involves planning work through Sprints, which are time-boxed iterations with specific goals. Work is divided into user stories or backlog items, and the team commits to completing them within a Sprint. | Agile teams plan work based on the Agile Manifesto and principles, which prioritize customer collaboration, responding to change, and delivering working solutions. The planning approach can vary. |
Iterations | Scrum emphasizes short, time-boxed iterations (Sprints), usually lasting two to four weeks. The team aims to deliver a potentially shippable product increment by the end of each Sprint. | Agile development may involve iterative and incremental progress, but the duration and structure of iterations can vary depending on the specific Agile framework or approach used. |
Roles and Responsibilities | Scrum defines specific roles, such as the Scrum Master, Product Owner, and Development Team, each with defined responsibilities. These roles work together to deliver the product incrementally. | Agile does not prescribe specific roles but encourages self-organizing, cross-functional teams. Team members collaborate and adapt their roles as needed to achieve project objectives. |
Time Management | Scrum enforces a fixed duration for each Sprint, ensuring that the team works within a defined time frame. Sprints are followed by Sprint Planning, Daily Standup, and Sprint Review events. | Agile does not prescribe fixed time frames but promotes adaptability. Agile teams decide on the duration of iterations based on the project’s needs and can change them as necessary. |
Planning and Review | Scrum involves structured events like Sprint Planning, Daily Standup, Sprint Review, and Sprint Retrospective. These events help teams plan, execute, review progress, and continuously improve. | Agile encourages frequent collaboration with stakeholders and customers throughout the project, focusing on delivering value, adapting to change, and responding to feedback. |
Change Management | Scrum acknowledges that changes may occur during a Sprint but aims to minimize disruptions to the Sprint goal. Changes are typically addressed in the next Sprint planning session. | Agile embraces change and encourages teams to respond quickly to shifting requirements or customer feedback, allowing for ongoing adaptations to meet evolving needs. |
Development Focus | Scrum provides a specific framework for developing software products and emphasizes the delivery of a potentially shippable product increment at the end of each Sprint. | Agile is a broader mindset or methodology that can be applied to various domains, including software development, project management, and product delivery in different industries. |
Continuous Improvement | Scrum promotes continuous improvement through the Sprint Retrospective, where the team reflects on their performance and identifies opportunities to enhance their processes. | Agile encourages organizations to foster a culture of continuous improvement and learning at all levels. Teams regularly assess their work and adapt to become more effective and efficient. |
What is difference between Scrum and Agile?
Agile has become a philosophy encompassing business processes, especially for startups that follow religious principles. Scrum is primarily a collaboration methodology to build complex products. Scrum can be a methodology used within Agile to build complex products while keeping a focus on these processes to be fast, iterative, and be able to kick in feedback loops, to improve these products quickly.
What comes first Agile or Scrum?
In an HBR article from 1986, titled “The New New Product Development Game,” Hirotaka Takeuchi and Ikujiro Nonaka highlighted the principles of Scrum. Thus, while the Scrum methodology did anticipate Agile, given the incredible popularity of Agile, which turned into a philosophy, Scrum has become a methodology within the broader Agile philosophy.
What are the core Agile frameworks?
The core agile frameworks comprise:
Connected Agile & Lean Frameworks
Read Also: Continuous Innovation, Agile Methodology, Lean Startup, Business Model Innovation, Project Management.
Read Next: Agile Methodology, Lean Methodology, Agile Project Management, Scrum, Kanban, Six Sigma.
Main Guides:
- Business Models
- Business Strategy
- Business Development
- Distribution Channels
- Marketing Strategy
- Platform Business Models
- Network Effects
Main Case Studies: