QA Interview Handbook
  • 🏠Home Page
  • About Testing
    • 💖Qualities of A Great Tester
  • Manual Testing
    • 💡Overview
      • ✋Demand for Software Testing
      • 😄Tester's Role in Manual Testing
      • 7️Testing Principles
      • 🚨V & V
      • ❔Interview Questions
    • ♻️SDLC
      • 📒Phase 1: Planning
      • 🔍Phase 2: Requirement Analysis
      • 👔Phase 3: Design
      • ⛑️Phase 4: Development
      • 🧪Phase 5: Testing
      • 🚚Phase 6: Deployment
      • 🖱️Phase 7: Maintenance
      • ⚔️Common Challenges
      • ❔Interview Questions
    • 🌀STLC
    • 🌊Waterfall
    • ✳️Agile
      • 😁Tester's Role in Scrum
    • 🔢Types
      • ⬜White Box Testing
      • ⬛Black Box Testing
        • 🔰Techniques Used in Black Box Testing
        • 🚘Functional Testing
          • 1️⃣Unit Testing
          • 2️⃣Integration Testing
            • 🔰Techniques Used in Integration Testing
          • 3️⃣System Testing
            • 📼Types of System Testing
            • 🌊Phases of System Testing
            • 🌀Regression Testing
            • 🌫️Smoke Testing
          • 4️⃣Acceptance Testing
            • ⚙️User Acceptance Testing
            • 🅰️Alpha Testing
            • 🅱️Beta Testing
        • 🕳️Non Functional Testing
      • 📑Grey Box Testing
    • 🪄User Story
      • ⏺️Sample User Stories
    • 📓Test Cases
      • ⏺️Sample Test Cases
      • ❔Interview Questions
    • ✖️Defect Life Cycle
      • ☣️Priority + Severity
      • ⏺️Sample Defect Reports
      • ❔Interview Questions
      • 🐛Buggy Questions
    • 🌐Atlassian JIRA
      • 🐞JIRA Issues
      • ❔Interview Questions
    • ❔Interview Questions
  • Accessibility Testing
    • 💡Overview
    • 🤓Tester's Role in Accessibility Testing
    • 📚WCAG Principles
      • 👁️Perceivable
      • 🏹Operable
      • 🧠Understandable
      • 🤖Robust
    • 🔧Axe DevTools
      • ❔Interview Questions
    • 📓Test Cases
    • ❔Interview Questions
  • API Testing
    • 💡Overview
    • 😀Tester's Role in API Testing
    • 🍊HTTP Methods & CRUD
      • 🍂HTTP Status Codes
    • 🍍API Tools
      • 🟠Postman
        • ☄️Sending your first API request
        • 🔬HTTP Requests with Java
        • 🎲GitHub Sample
        • ❔Interview Questions
      • ⛑️REST Assured
        • 🎇Dependency
        • ❔Interview Questions
    • 📓Test Cases
    • 🦧API Cheatsheet
    • ❔Interview Questions
  • Database Testing
    • 💡Overview
    • 😆Tester's Role in Database Testing
    • 🔵SQL
      • ⛓️Constraints
      • 🛢️Referencing a Column
      • 🔼DDL Commands
      • 🔼DML Commands
        • 🖌️Operators
        • 🛠️Functions
          • ⏯️Aggregate Functions
        • 🎅Clauses
          • ⏫Join Clauses
          • 🔵Filter Clauses
          • ⏬Set Operations
      • 🃏Wildcard Character
      • ❔Interview Questions
    • 📓Test Cases
    • 🧤SQL Practice Sites
    • 🫐SQL Cheatsheet
    • ❔Interview Questions
  • Java
    • ⛩️Introduction
    • 😄Tester's Reason to Learn Java
    • Ⓜ️Main Method
      • ❔Interview Questions
    • 📐Variables & Types
      • 🪢Special Types
    • 🥁Modifiers
    • 🅾️Operators
    • 🪡String
      • 🩺String Methods
        • String Method Problems
      • 🚨Delimiter
      • ❔Interview Questions
    • 🖇️Conditionals
      • 💎Common If Statements
      • 💎Common Ternary Operator Statements
    • Ⓜ️Math Class
    • 🌊Loops
      • 💎Common Loop Examples
      • 🔃Nested For Loops
    • 🍼OOPS
      • 🏛️Classes and Objects
        • ❔Interview Questions
      • 🎃Constructor
        • ⚡Static
          • ❔Interview Questions
        • 📍This() & Super()
          • ❔Interview Questions
        • 🍀Finalization
      • 🔓Encapsulation
      • 🐥Inheritance
      • 🦋Polymorphism
      • 🕸️Abstraction
    • 🏮Java Practice Sites
    • ☑️Data Structures + Algorithms
      • 🅾️Big O
      • ☑️Data Structures
        • 🔸Array
        • 🔳Array Problems
        • Page
      • 🪟Sliding Window Technique
        • 🪟Sliding Window Problems
        • 🥐LeetCode #53
        • 🥐LeetCode #209
    • ❔Interview Questions
  • Automation Testing
    • 🚰Flow
      • 💡Overview
      • 🤩Tester's Role in Automation Testing
      • 🍀Selenium
        • 🕸️Selenium WebDriver
          • 🕷️WebDriver Commands
            • 🌐WebElement
              • 🔆HTML Tags
              • 🔬Find Element(s)
              • 🦎Locators
                • ❌Xpath
                • 🏰CSS Selector
                • 📀DOM
                • 🏠Quick Reference for XPath + CSS
            • ✋Waits
            • Browser Management
            • 🏎️Navigation
            • Alerts
          • 🏷️Advanced User Interactions
            • 🗯️Action vs. Actions
            • 💧Drop Down
            • ✅Check Box
            • 🖇️Forms
          • ⚠️Exceptions
        • 🍏OOPS + Selenium
        • 🚢Frameworks
          • ⚓Module Based Framework
          • 🎹Keyword Driven Framework
          • 🎋Data Driven Framework
          • 🌺Hybrid Framework
          • 🌴Log4j
          • 📄Page Object Model
        • 🧪Testing Frameworks
          • 💡TestNG
          • 🉑JUnit
          • 🥒BDD
            • 🥒Cucumber
        • 🌉Selenium Grid
          • ✖️Desired Capabilities
        • ❔Interview Questions
      • 🔄API Testing with Selenium
      • ⏪Database Testing with Selenium
      • Ⓜ️Maven
      • 🐙Git
        • ❔Interview Questions
      • 🕵️‍♂️Jenkins
        • ❔Interview Questions
      • 🐳Docker
        • ❔Interview Questions
      • 📙AWS
        • ❔Interview Questions
  • Behavioral
    • 📣Mixed Interview Questions
    • ⭐STAR Method
      • 🌟Sample Responses
Powered by GitBook
On this page
  • Agile vs Scrum
  • Scrum
  • Scrum Practices
  • The flow of Scrum
  • Artifacts of Scrum
  • 📝 User stories
  • 🗒️ Product Backlog
  • 📅 Release Backlog
  • 🏃 Sprints
  • 📋 Sprint Backlog
  • 🚫 Block List
  • 📉 Burndown Chart
  • Ceremonies
  • 🚀 Sprint Planning 📅
  • 🌄 Daily Standup
  • 📣 Sprint Review
  • 🔄 Retrospective
  • Agile vs Waterfall

Was this helpful?

  1. Manual Testing

Agile

a software development methodology

PreviousWaterfallNextTester's Role in Scrum

Last updated 1 year ago

Was this helpful?

The Agile software development methodology is one of the simplest and most effective processes to turn a vision for a business need into software solutions. Agile is a term used to describe software development approaches that employ continual planning, learning, improvement, team collaboration, evolutionary development, and early delivery. It encourages flexible responses to change.

Agile vs Scrum

Agile
Scrum

Philosophy

Flexible, iterative approach to development. Focuses on individuals and interactions over processes.

Structured project management framework that implements the Agile philosophy.

Practices

Practices like continuous integration, test-driven development, pair programming, user stories. No mandated practices.

Specific prescribed development practices including sprints, daily scrums, sprint planning, sprint reviews, retrospectives.

Roles

No defined roles. Encourages collaborative teams and shared leadership.

Well-defined roles - Scrum Master, Product Owner, and Development Team (3-9 engineers).

Management Style

Servant leadership style. Empowering teams to self-organize and make decisions.

Lightly controlled process with fixed sprint lengths. Scrum Master oversees the process.

Requirements

Welcomes changing requirements at any stage.

Requirements are locked down at the start of each 2-4 week sprint.

Estimation

Story points, ideal days, t-shirt sizing. Focus on velocity trends.

Time-based estimation in hours for each user story to complete sprint goals.

Tracking Progress

Burndown charts, team velocity, flowcharts.

Sprint burndown charts to track daily progress within a sprint.

Guidance Level

High-level principles and values.

Prescriptive framework with specific rules and practices for implementation.

Scrum

Scrum is an agile development method that concentrates specifically on how to manage tasks within a team-based development environment.

One of the most popular frameworks for implementing Agile development is Scrum. Scrum is a framework that provides a structured approach to Agile development, with defined roles, events, and artifacts.

Some of the key roles in Scrum include:

  • Product Owner: The Product Owner is responsible for defining and prioritizing the product backlog, and ensuring that the development team is working on the most valuable features.

  • Scrum Master: The Scrum Master is responsible for ensuring that the Scrum framework is followed and that the development team has everything they need to be successful.

  • Scrum Team: The team manages its own work and organizes the work to complete the sprint or cycle.

Scrum Practices

The flow of Scrum

  • Scrum testing is divided into iterations called Sprints.

  • The Product Backlog is a list of requirements for the end product.

  • During each Sprint, the top user stories from the Product Backlog are selected and turned into a Sprint Backlog.

  • The team works on the Sprint Backlog to deliver the functionality for that Sprint.

  • The team checks their progress daily in a Daily Scrum meeting.

  • At the end of the Sprint, the team delivers product functionality. ✅

Artifacts of Scrum

📝 User stories

These are short explanations of the functionalities of the system under test. For example, for an Insurance Provider, a user story could be "🔒 Policyholders can update their payment details using the online system."

🗒️ Product Backlog

This is a collection of user stories captured for a Scrum product. The Product Owner is responsible for preparing and maintaining the product backlog, which is prioritized by the Product Owner. Anyone can add to it with approval from the Product Owner. 📈 The Product Backlog is a living document that evolves throughout the development process.

📅 Release Backlog

A release is a time frame in which a set number of iterations or Sprints are completed. The Product Owner coordinates with the Scrum Master to decide which stories should be targeted for a release. Stories in the release backlog are targeted to be completed in a release. 🚀

🏃 Sprints

A Sprint is a set period of time during which a defined set of user stories are completed. 📆 The length of a Sprint is usually 2-4 weeks, and is decided by the Product Owner and development team.

📋 Sprint Backlog

This is a set of user stories to be completed in a Sprint. During the Sprint Backlog, work is never assigned, and the team signs up for work on their own. It is owned and managed by the team, while the estimated work remaining is updated daily. It is the list of tasks that have to be performed in the Sprint. 📝

🚫 Block List

This is a list of blocks and unmade decisions owned by the Scrum Master and updated daily. It is used to track any obstacles or issues that may be preventing the team from completing their work.

📉 Burndown Chart

This chart represents the overall progress of the work in progress and the work completed throughout the process. It represents in a graph format the stories and features not completed. 📊 The burndown chart is used to track progress and identify any issues or delays that need to be addressed.

Ceremonies

🚀 Sprint Planning 📅

🗓️ Teams plan ✍ work for the next 📆sprint:

👥 Scrum Team + Product Owner

📋 Select tasks from the backlog

👀 Identify the scope

🚀 Start sprint!

🌄 Daily Standup

✅ What they did yesterday

⏲ What they'll do today

😤 Blockers

👥 Project Team

Brief (stand up!👣)

📣 Sprint Review

📣 Teams demo 🎬 work completed:

👥 Scrum Team + Product Owner + Stakeholders

📋 Discuss what's done

📆 End of sprint

🔄 Retrospective

🔄 Teams reflect:

👥 Entire Scrum Team

💡What went well

😕 What to improve next sprint

📆 End of the sprint before planning

Why are ceremonies important?

They create ⌛rhythm and 💡insights at key points:

✅ Plans are made

✅ Progress is tracked

✅ Outcomes inspected 🕵️‍♀️

✅ Improvements identified


Agile vs Waterfall

Aspect
Waterfall Model
Agile Model

Development process

Sequential process that follows a linear approach to software development. Each phase of the process is completed before moving on to the next one.

Iterative process that focuses on delivering working software in small increments. The process is divided into sprints or iterations, with each iteration delivering a working product increment.

Requirements

Requirements are gathered at the beginning of the process and documented heavily.

Requirements are gathered throughout the process and documented in a lightweight manner. The focus is on flexibility and adaptability to changing requirements.

Documentation

Heavy documentation is required at each stage of the process, including requirements, design, testing, and maintenance.

Minimal documentation is required, with a focus on delivering working software. Documentation is done in an iterative manner and is kept up-to-date throughout the process.

Flexibility

The Waterfall model is rigid and inflexible, with limited scope for changes or modifications once the development process is initiated.

The Agile model is flexible and adaptable, with a focus on responding to change quickly and efficiently. The development team can respond to changing requirements and adapt the process to changing business needs.

Deliverables

A complete product is delivered at the end of the process, with little opportunity for feedback or changes.

Incremental deliverables are delivered throughout the process, with a focus on getting early feedback and incorporating changes quickly.

Testing

Testing is done after the development process is completed, resulting in a longer feedback loop and less opportunity for changes.

Testing is done in parallel with development, resulting in a shorter feedback loop and more opportunity for changes. The focus is on delivering a quality product incrementally.

Customer involvement

Customers are involved at the beginning of the process to provide requirements, but their involvement is limited during the development process.

Customers are involved throughout the development process, providing feedback and guidance to the development team. The focus is on delivering a product that meets the needs of the customer.

Team structure

The Waterfall model has a hierarchical team structure, with a clear division of responsibilities and little opportunity for collaboration.

The Agile model has a collaborative and self-organizing team structure, with a focus on collaboration, communication, and teamwork. The team is responsible for delivering a quality product incrementally.

The Waterfall model is a sequential and inflexible approach to software development.

The Agile model is an iterative and flexible approach that focuses on delivering working software incrementally and responding to changes quickly and efficiently.

A scrummage, commonly known simply as a scrum, is a method of restarting play in rugby football that involves players packing closely together with their heads down and attempting to gain possession of the ball.
Overview of Scrum Practices
✳️