- Scrum is a framework for developing, delivering, and sustaining complex products.
- Scrum (n): A framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.
- Define “complex adaptive problems”
- Define “value”
- Scrum is a process framework that has been used to manage work on complex products since the early 1990s. Scrum is not a process, technique, or definitive method.
- Define “process”
- Define “process framework”
- Scrum makes clear the relative efficacy of your product management and work techniques so that you can continuously improve the product, the team, and the working environment.
- Define “product management”
- Define “work techniques”
- Clarify and justify “the relative efficacy of your product management and work techniques”
- Describe “working environment”
- Each component within the framework serves a specific purpose and is essential to Scrum’s success and usage.
- Define the success criteria for “Scrum’s success”
- Define the requirements for declaring usage of Scrum
- Specific tactics for using the Scrum framework vary and are described elsewhere.
- Read The Professional Product Owner: Leveraging Scrum as a Competitive Advantage for tactics in terms of the Product Owner
- Scrum has been used to develop software, hardware, embedded software, networks of interacting function, autonomous vehicles, schools, government, marketing, managing the operation of organizations and almost everything we use in our daily lives, as individuals and societies.
- Describe or clarify “develop software, …, schools, government, …”
- As technology, market, and environmental complexities and their interactions have rapidly increased, Scrum’s utility in dealing with complexity is proven daily.
- Define “utility”
- Exemplify “Scrum’s utility”
- Scrum proved especially effective in iterative and incremental knowledge transfer. Scrum is now widely used for products, services, and the management of the parent organization.
- Exemplify “knowledge transfer”
- Clarify “parent organization”
- These strengths continue operating in single, several, many, and networks of teams that develop, release, operate and sustain the work and work products of thousands of people.
- Define “work products”
- Clarify “work products of thousands of people”
- They collaborate and interoperate through sophisticated development architectures and target release environments.
- Clarify “development architectures”
- Exemplify “target release environments”
- Significant aspects of the process must be visible to those responsible for the outcome. Transparency requires those aspects be defined by a common standard so observers share a common understanding of what is being seen.
- Exemplify “Significant aspects”
- Clarify “visible”
- Clarify “those responsible for the outcome”
- Exemplify and compare “those responsible for the outcome” with “observers”
- A common language referring to the process must be shared by all participants
- Define “participants”
- Scrum users must frequently inspect Scrum artifacts and progress toward a Sprint Goal to detect undesirable variances.
- Define “Scrum users”
- Compare “Scrum users” with “participants”
- When the values of commitment, courage, focus, openness and respect are embodied and lived by the Scrum Team, the Scrum pillars of transparency, inspection, and adaptation come to life and build trust for everyone.
- Define “Scrum pillars”
- Clarify the definition of the Scrum pillars between the Scrum Guide and the Professional Scrum Competency as follows:
To support the three pillars of Scrum – empirical process, empowered/self- organized teams, and continuous improvement – the Scrum framework describes 5 events.
- During Sprint Planning the Scrum Team also crafts a Sprint Goal. The Sprint Goal is an objective that will be met within the Sprint through the implementation of the Product Backlog, and it provides guidance to the Development Team on why it is building the Increment.
- Define and compare “goal” with “objective”
- At any point in time, the total work remaining to reach a goal can be summed. The Product Owner tracks this total work remaining at least every Sprint Review. The Product Owner compares this amount with work remaining at previous Sprint Reviews to assess progress toward completing projected work by the desired time for the goal.
- Clarify “work”
- Clarify “goal”, a Sprint Goal or Business Goal?
Agile is a mindset for a high-performance team with commitments to willingly respond or harness changes and continuously deliver valuable products for customer’s satisfaction and competitive advantages through collaboration with them.
A high-performance team is cross-functional and self-organizing. Continuous delivery suggests delivering products iteratively and incrementally; that is, to deliver products with added values in a short timescale frequently or in a sustainable pace.
- Lean Thinking
- Agile Mindset
- Methodology (Approaches or Methods)
- Scrum (Scrum Guide 2017)
User stories are usually written down with index cards for further conversation and confirmation. Odds are we feel quite comfortable with the typical user story format evolved over time at Connextra as the following:
As a [type of user]
I want to [do something]
So that I can [get some benefit]
With this simple template, we can start off conversation for details and define acceptance criteria for confirmation. It’s about time to write the acceptance criteria onto the flip side of your user story card.
When describing the acceptance criteria, using Gherkin syntax as follows is beneficial both to the user and developer.
Given [preconditions or context]
A user can develop the acceptance criteria in plain English using Gherkin syntax with quite limited keywords, while the developer can incorporate it into the testing framework, such as SpecFlow, Cucumber, Fit/FitNesse, and the like, to automate the testing and documentation work.