22 September 2021

The Scrum Framework

The Scrum framework consists of Scrum Teams and their associated accountabilities, artifacts, events and rules as defined in the Scrum Guide.

Why Scrum ?

  • Scrum is initially developed for managing and developing Products.
    • Scrum is a lightweight framework that helps people, teams and organizations generate value through adaptive solutions for complex problems.
    • Scrum is defined as a framework within which people can address complex adaptive problems, while productively and creatively delivering Products of the highest possible value.
    • Scrum is a framework that strives to facilitate the development of complex products quickly and efficiently, the adaptation of changing requirements, the delivery of working products incrementally.
    • Scrum development includes three major phases : pre-game, game, and post-game.

Scrum for who ?

  • Scrum is a framework to support teams in complex product development, framework within which you can employ various process and techniques.

What is Scrum ?

How ?

  • Scrum is simple, try it as is and determine if its philosophy, theory, and structure help to achieve goals and create value.
    • Scrum wraps around existing practices or renders them unnecessary.
    • Scrum makes visible the relative efficacy of current management, environment, and work techniques, so that improvements can be made.
    • Rather than provide people with detailed instructions, the rules of Scrum guide their relationships and interactions.
    • Various processes, techniques and methods can be employed within the framework.
    • Scrum is built upon by the collective intelligence of the people using it.

Scrum characteristics

  • Scrum is lightweight
    • Scrum is simple to understand but Scrum is difficult to master.

Scrum Theory

Scrum is founded on empiricism and lean thinking :

  • Empiricism asserts that knowledge comes from experience and making decisions based on what is observed.
  • Lean thinking reduces waste and focuses on the essentials.

Scrum purpose

  • Scrum employs an iterative, incremental approach to optimize predictability and to control risk.
    • Scrum engages groups of people who collectively have all the skills and expertise to do the work and share or acquire such skills as needed.
    • Scrum combines four formal Events for inspection and adaptation within a containing event, the Sprint.
    • In scrum we implement a pull system by creating Sprint Backlogs and preparing the task board using it, so the pull system implementation in scrum is done using Sprint Backlog , task board and daily stand-up.

The Scrum Framework

Scrum Guide

The Scrum accountabilities

In a nutshell, Scrum requires a Scrum Master to foster an environment where :

  1. A Product Owner orders the work for a complex problem into a Product Backlog.
  2. The Scrum Team turns a selection of the work into an Increment of value during a Sprint.
  3. The Scrum Team and its Stakeholders inspect the results and adjust for the next Sprint.
  4. Repeat

The Scrum artifacts

The Scrum Events

Scrum Events purpose

  • Each Event in Scrum is a formal opportunity to Inspect and Adapt Scrum artifacts :
    • These Events are specifically designed to enable the transparency required
    • Failure to operate any Events as prescribed results in lost opportunities to Inspect and Adapt
  • Events are used in Scrum to create regularity and to minimize the need for meetings not defined in Scrum :
    • Optimally, all events are held at the same time and place to reduce complexity

Rules

  • According to the Scrum Guide, mandatory Rules and Principles of Scrum are Scrum Team Accountabilities, Scrum Events, Sprint Goal, Product Backlog, Sprint Backlog, Increment, Definition of Done, and Monitoring progress in Sprint and Project levels.
    • Other things are practices that could employ in the Scrum framework and are up to the team and project and are not mandatory.

Where use Scrum ?

  • Scrum is used for :
    1. Research and Identify viable market.
    2. Develop/Release products/enhancements.
    3. Develop & sustain Cloud/operational environments
    4. Sustain/Renew Products

Scrum Values

  • Successful use of Scrum depends on people becoming more proficient in living five Values:
    • Commitment (the Scrum Team commits to achieving its goals and to supporting each other)
    • Focus (their primary focus is on the work of the Sprint to make the best possible progress toward these goals)
    • Openness (the Scrum Team and its stakeholders are open about the work and the challenges)
    • Respect (Scrum Team members respect each other to be capable, independent people, and are respected as such by the people with whom they work)
    • Courage (the Scrum Team members have the courage to do the right thing, to work on tough problems)
  • These Values give direction to the Scrum Team with regard to their work, actions, and behavior :
    • The decisions that are made, the steps taken, and the way Scrum is used should reinforce these Values, not diminish or undermine them
    • The Scrum Team members learn and explore the Values as they work with the Scrum Events and Artifacts

Scrum and Empiricism

  • Knowledge comes from experience, decisions are based on what is known.
  • The process control type in which only the past is accepted as certain and in which decisions are based on observation, experience, and experimentation.
  • Empirical Process Control :
    • Iterative, incremental approach used by scrum to optimize predictability and control risk.
  • Scrum is founded on empirical process control theory, or empiricism.
    • Empiricism asserts that knowledge comes from experience and making decisions based on what is known.

Scrum pillars

Scrum Team

Stakeholder

  • Stakeholder is a person external to the Scrum Team with a specific interest in and knowledge of a Product that is required for incremental discovery.

Time-boxing

  • A time-box is a timeframe with a maximum duration.
    • It means you can work in a time-box and if you achieve its goal, you can terminate it earlier.
    • However, if you do not achieve its goal at the end of the timeframe, you cannot extend it.
  • A time-boxed Sprint means that this event has a maximum duration that is fixed and cannot be shortened or lengthened once the Sprint has begun.
    • Except for the Sprint, all other Scrum Events can be terminated before their time-box if the Team has achieved the event’s goal.

Progress

Scrum Board

  • Scrum Board or Tasks board is a physical board to visualize info for and by the Scrum Team, often used to manage Sprint Backlog.
    • Scrum boards are optional within Scrum and make information visible and increase transparency.

Burn-Down Chart

  • Burn-Down Chart is a chart showing the evolution of remaining effort against time.

Burn-Up Chart

  • Burn-Up Chart is a chart showing the evolution of remaining effort against time.
    • Burn-Up Chart is not mandatory but optional in the Scrum framework.

Velocity

Quality

  • All the Scrum Team members are responsible for the product’s quality.
    • In the Scrum as an adaptive approach, quality and test should be considered from the beginning of the development.
      • It leads to more transparency in the Increments, ensures to have releasable Increments, decreases the risk of reworks and as it helps to produce reliable Increments, customer feedback will be around business expectations not about bugs or wrong implementation so it improves customer feedback’s level.
    • All members are Developers and there is no title such as programmer, tester, QA member, etc.
    • These are skills that each member might have some of them and accountability of the product quality belongs to the whole Scrum Team, not a special member.

Forecast of functionality

Requirements

  • In order to prevent creating the wrong product or having reworks, it is valuable using some approach to make a better understanding of customer requirements.

Non Functional Requirements

  • Non‐functional requirements or cross‐cutting concerns are the features of the design that may apply across all layers and are related to the quality requirements.
    • There are many non‐functional requirements as following : Security, Reliability, Performance, Availability, Globalization, Scalability, Maintainability, Robustness, etc.
    • They can be managed by adding them to the Product Backlog or adding them to the Definition of Done (DoD).
  • Non-functional requirements describe qualities of the system being developed.
    • E.g. the system should be secure, extensible and have acceptable performance.
    • The way to meet such requirements is :

Specification by Example (SBE)

  • Specification by Example (SBE) calls for using realistic examples from past experience instead of untested or abstract statements in the description of the desired functional behavior.
    • Specification by example (SBE) is a collaborative approach made to define requirements and business-oriented functional tests for software products using realistic examples instead of abstract statements.

More informations for the Scrum PSD certification here.

Scrum for Developers : Scrum PSD flashcards

Scrum Theory and Principles

Scrum or Agile Scrum ?

What is Scrum ?

Scrum Values

Inspect and Adapt

Scrum Guide

Updated : 18/09/21

Leave a Reply

Your email address will not be published. Required fields are marked *