--------------------------DE-TOUR--------------------------
The Scrum Guide directly introduces Scrum as a framework for developing and sustaining complex products. However, it is important to know the old ways of developing products in order to better understand the contrast that Scrum brings. In this chapter, the following are included for clarity and context. They are not part of The Scrum Guide:
Waterfall, Traditional project plan, Late feedback, Cone of uncertainty, Scientific approaches
--------------------------DE-TOUR--------------------------
How a Product is built using the traditional way – Waterfall
Organizations create strategies for business purposes. Some of these strategies aim at building product capabilities. For example, a software product building strategy may include a Customer Relationship Management System, Billing and Payments, Mobile Channel, New Product Introduction, etc.
Many organizations use a process methodology called waterfall in their projects to build products. Two types of people are needed to define the business and development aspects of project plans.
The business people: They define what the product should do. To define the product needs, they make long-term predictions about the future. Some examples of predictions include what the value of the product will be, how it will be received in the market, and more importantly what that market will be when the product is actually released. Predictions are based on many assumptions and projections built on what is known today, which may be years before the product is actually released.
The project managers or planners: They plan how to build the product. Based on the product needs deduced from the business predictions, they come up with a sequence of activities like Analyzing, Designing, and so on. They also predict (estimate) the future cost and time of these activities to find the total project cost and time. Such estimations are based on many assumptions and future projections of the product needs, people competency and behavior, project technology, etc.
Why the name waterfall?
The outcome from the waterfall-based project planning is a detailed plan.
Later, during the execution of this plan, future changes may invalidate the current plan. Such changes may require re-planning project activities, sometimes from the basic product definition, and re-doing all the activities. Such revisiting, re-planning, re-doing, is called Iterating. In waterfall, iteration is seen as the result of bad planning. So, when people in waterfall encounter a change, they reactively go through an elaborate change control process to resist the change in order to keep the original plan intact.
A waterfall-based project plan expects that the sequence of steps in the plan will go forward without requiring changes. They resist changes when they do occur. So, the plan is designed such that the activities only go forward without iterating back again, and hence the name waterfall. It is just a waterfall, the water falls only forward, not backward.
Fig. 1- Waterfall way of building products
-------------------Question- 1--------------------------
In the waterfall methodology, the duration of the activities, like development, testing, etc. are
a) Planned to be fixed irrespective of any calculation (time-boxed).
b) Predicted using some calculations based on “today’s weather.”
c) Never decided upfront.
-------Answer-------
The waterfall activities are estimated and calculated well in advance based on today’s knowledge and assumptions. Their duration will vary depending on the calculations. They are not time-boxed; they do not have fixed durations. Correct answer is ‘b.’
-------------------Question- 1--------------------------
Waterfall – The tale of late feedback
After executing the complete plan, usually after a long period of time, the product is delivered to the business/users in a big one-time release. These people see the outcome and provide feedback about the product. The business may choose to test the market and release the product. So, the market also may provide feedback.
If the feedback is positive and indicates the larger acceptance of the product, everyone is happy.
However, this is not always the case. The assumptions made by the business about user behavior may be invalid. The interpretation of the Project Managers/Planners about what the business people wanted may be incorrect. Also, the external factors, market receptiveness, and assumptions might have changed.
Sometimes, the feedback may be about a new insight that requires major modification to the product or the product itself is identified as obsolete. Such feedback is called Late Feedback since the waterfall project may already be closed or it may involve too large an effort to incorporate the feedback so late.
Fig. 2- Late Feedback in Waterfall
-------------------Question- 2--------------------------
In waterfall, the project team often gets early feedback from customers or markets about the product they are building, so they can act on this feedback on time.
a) True
b) False
-------Answer-------
Waterfall-based projects rarely offer any opportunity to get early feedback about the product. Correct answer is ‘b.’
-------------------Question- 2--------------------------
Complex problems
Product building is a complex problem. Most often it is not just an isolated product development but may involve integration of the product into the larger organizational system.
For example, in software development as technology evolves and markets change, organizations need to continuously adopt the newer software developments and enhancements into their existing complex web of technology infrastructure.
This complexity is further multiplied by the presence of many other factors such as different people, processes, technology components, and so on.
Complexity becomes more dynamic – Complex Adaptive Problems
Product building is not only complex. Multiple factors involved in building complex products also vary over time. For example, in a software project a software component that worked in a small-scale system, which has limited users today, may not work when the system becomes huge with large numbers of users tomorrow. Similarly, some of the developers that worked today may not be available for the project tomorrow, and the productivity may vary.
Such time-dependent complex problems are also called complex adaptive problems.
In these problems, the amount of unknown is really huge in the initial stages and will likely trend down over the course of product development. This trend is called the cone of uncertainty. Future change is certain in complex adaptive problems.
-------------------Question- 3--------------------------
What factors will increase complexity? Select all that apply.
a) Larger number of people on the project
b) Longer duration of the project
c) Batching of a large amount of features into one big release
-------Answer-------
All these factors – more people, longer duration, and only one big release – increase the complexity. Correct answers are ‘a,’ ‘b,’ and ‘c.’
Note about multiple correct choices: In the actual PSM 1 assessment, if you need to choose more than one correct choice, each choice is provided as a check box (not radio button). Additionally, the question will ask you to select two / three correct choices. In this book, we have used ‘Select all that apply’ to indicate there are multiple correct choices. This is intentional so that you can learn more by thinking through each choice.
-------------------Question- 3--------------------------
Is waterfall-based Project Planning a scientific approach?
At the initial stage of a project, planners use techniques such as Critical Path Method (CPM) to scientifically calculate the duration of the project. These calculations need some inputs such as product definition, people productivity, etc. The planners make assumptions to arrive at these inputs.
Since the project is at the initial stage, the cone of uncertainty is high and hence the assumptions have high probability of becoming incorrect.
So, if these assumptions are incorrect, output from the scientific calculation will also be incorrect. Therefore, project planning in the waterfall method is based on scientific calculation, but it does not mean that this planning is foolproof and risk-proof.
Are scientific approaches good for complex adaptive problems?
Scientific calculations and predictions are helpful when the problems are deterministic, stochastic, etc. In these types of problems, the future behavior or result can be modelled or predicted.
Complex adaptive problems are not deterministic. Deterministic requires the elements of the problem to be either constant or follow a definite mathematical model. The elements of complex adaptive problems are not predictable and do not follow a definite mathematical model.
Complex adaptive problems are also more complicated than being stochastic. While the elements of stochastic problems are random, the range or the boundaries of variation can be predicted. This boundary can be derived from data of the past. An example is the toss of a coin. Though the result of the coin toss is random, it is always within the boundary of either head or tail. The elements of complex adaptive problems are not only random, but their random behavior cannot be modeled based on the past.
In complex adaptive environments, what will happen is unknown and hard to predict. Predictions based on scientific approach may need extensive resources and recursive fine-tuning to arrive at an optimal plan. For planning one project, such a huge investment in scientific modeling is usually not justified.
-------------------Question- 4--------------------------
Building complex products like software is a complex adaptive problem. Complex adaptive problems are
a) Deterministic.
b) Stochastic.
c) Hard to predict even using past history.
-------Answer-------
Complex adaptive problems are hard to predict. Correct answer is ‘c.’
-------------------Question- 4--------------------------
The New Way - Empiricism – Observation rather than prediction
Empiricism theory is based on the concept that complex problems are hard to predict.
Empiricism helps people to navigate uncertain complex problems. It requires them to take one step at a time, such as performing a small amount of work to gather experience.
1. It divides complex problems into a small scope of short-term iterations. For each iteration, just enough work is planned that can be completed within that short iteration of a few weeks. There is no big scope of work spanning a long duration.
2. It uses a small team to perform these few weeks of work. It requires them to increase the visibility of work or product information as they travel this iteration.
3. The small team creates a product Increment which is a usable outcome, at the end of these few weeks. The Increment is shared with stakeholders for inspection and feedback is solicited. The team gathers experience from this work. Stakeholders are those who have specific interest and knowledge in the product built by the team.
4. From this feedback and experience, new clarity emerges and knowledge is obtained. The scope and plan for the next iteration is adjusted based on this new knowledge.
You can equate the traditional “trial and error” model to empiricism. Each iteration is a trial to solve a problem and gain more clarity. Based on the trial outcome and the newly found clarity, the next iteration is planned. Since each iteration is planned based on the newly found clarity from the previous iteration, the risk of unknowns is gradually reduced over time.
Reducing risk increases the probability of meeting the goal.
So, empiricism applies an iterative, incremental approach to optimize predictability and control risk.
Fig. 3- Empiricism through iterative incremental approach
-------------------Question- 5--------------------------
Select all that apply. Empiricism provides
a) Frequent feedback opportunities to obtain information that can be used to plan better and completely eliminate the uncertainty.
b) Frequent opportunities to discuss different possibilities.
c) Frequent opportunities to make informed decisions thus reducing risk.
-------Answer-------
Empiricism is an alternative to waterfall to manage complexity and uncertainty. In waterfall, the risk of uncertainty accumulates over long cycles. The risk is reduced by empiricism because it provides frequent feedback and course correction points. These points are where more information may be available to view different possibilities and make informed decisions. However, empiricism does not completely eliminate uncertainty. Correct answers are ‘b’ and ‘c.’
-------------------Question- 5--------------------------
Scrum – A new way to address complex problems
Scrum is a newer way or framework within which people can address complex adaptive problems. Scrum is founded on empiricism control theory. Scrum provides a new set of terminology to define the framework.
-------------------Question- 6--------------------------
Select the best answer. Scrum is a newer way of doing things to address complex problems. It is a newer way because
a) It offers new terminology for traditional practices.
b) It is easier to master (implement) than the traditional way.
c) It increases the opportunity to control risk and optimizes the predictability of progress.
d) It is closely associated with emerging technologies.
-------Answer-------
Scrum introduces new terminology but it is not the primary difference. Scrum is easy to learn, but difficult to master. There is incidental association of a lot of emerging technologies executed in Scrum, but that is not the reason for its identity as a newer way.
Scrum does not guarantee success, but it increases the likelihood of success by controlling the risks and optimizing predictability. Correct answer is ‘c.’
-------------------Question- 6--------------------------
Is Scrum a proven approach?
Ken and Jeff authored Scrum two decades ago. Several organizations and practitioners have applied it with profound results. Many case studies are documented. Today, Scrum is the most widely adopted framework among all the frameworks intended to bring agility into producing software. Agility indicates an ability to respond in time to the emerging product requirements, and the term 'Agile' is an associated philosophy of software development. It is described more in Chapter 3.
Scrum events that offer opportunity for early feedback
There are a total of five events within the Scrum framework. Other than the container event Sprint, each event implements the theory of empiricism by offering an opportunity to get early feedback and the opportunity to best utilize that feedback.
Five events of Scrum
1. Sprint: Sprint is the heart of Scrum. It is like a mini-project that contains the other four events.
2. Sprint Planning: This is the first event of the Sprint. A small amount of work is chosen and a plan of how to deliver that work is put together.
3. Daily Scrum: The short and quick daily recurring event within the Sprint where the team members synchronize their progress with each other and confirm the next 24-hour plan.
4. Sprint Review: This one-time event within the Sprint is where the team makes their progress visible to the stakeholders. Both the team and stakeholders collaborate to adjust their next steps.
5. Sprint Retrospective: This is the final event of the Sprint. This is an inspection and adaptation opportunity for the Scrum Team to inspect their way of working and identify potential improvements.
Fig. 4- Scrum events
-------------------Question- 7-a--------------------------
Scrum effectively limits the risk of unknowingly doing something wrong by
a) Having a detailed and extensive risk management plan.
b) Having multiple checkpoints and a thorough review by senior management at those checkpoints.
c) Using short iterations called Sprints.
-------Answer-------
Near the end of each Sprint, the team will get feedback on their product demonstration from the stakeholders and users to understand if their work was worthwhile. If the work outcome is identified as a waste, the cost spent is limited only to that of the weeks incurred in the Sprint. This feedback is a control and can be used to plan the next Sprint. In other words, the risk of pursuing a wrong direction is limited to the cost of one Sprint. Correct answer is ‘c.’
-------------------Question- 7-a--------------------------
Scrum is increasingly used beyond product development
Though Scrum is used for complex product development and maintenance, this simple framework also found its way into many other things. It is extensively used in technology industry to build and maintain software. Scrum is even applied as a framework for teaching in schools, improving the activities in home, planning events, etc.
In many organizations, Scrum has gone beyond the software development into other functions such as marketing. Some organizations apply Scrum for overall management. Following are some of the reasons for widespread adoption of Scrum:
a) Small Scrum Team that is self-organizing and highly adaptable unlike the traditional big teams that are externally managed.
b) Scrum Team has a sense of ownership towards its goal. The sense of ownership pushes the Scrum Teams to reach each other through informal networks and get things done.
c) Technology improvements such as collaboration platforms and distributed development and release environments, many of them enabled by cloud, accelerate the work though this network of teams so they can develop, release, operate and sustain the work and work products of thousands of people.
-------------------Question- 7-b--------------------------
Scrum has been used to
a) Develop products, product enhancements, and operational environments for products use.
b) Research viable markets and new product capabilities.
c) Manage the operation of organizations.
d) All of the above.
-------Answer-------
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. When the words "develop" and "development" are used in the Scrum, they refer to complex work, such as those types identified above. Correct answer is ‘d.’
-------------------Question- 7-b--------------------------
Summary
• The waterfall way of product building leads to a plan that tries to predict the future.
• The waterfall plan does not proactively look for early feedback. Feedback happens late.
• In complex adaptive problems, the future is uncertain and hard to predict. The waterfall way of predicting the future is risky.
• Empiricism advocates observation rather than prediction to navigate complex adaptive problems.
• It asserts that knowledge comes from experience and using that knowledge to make decisions based on what is known.
• Scrum is founded on empiricism that facilitates early feedback.
• Scrum has been used to manage complex product development since the 1990s.
• Scrum employs an iterative, incremental approach to optimize predictability and control risk.
• The Scrum framework consists of Scrum Teams and their associated roles, events, artifacts, and rules.
• Other than the Sprint itself, which is a container for all other events, each event in Scrum is a formal opportunity to inspect and adapt.
• Scrum was initially developed for managing and developing products. Scrum is now widely used for many other things including products, services, and the management of the parent organization.
Quiz
1. Scrum is
a) A framework to address complex adaptive problems.
b) A collection of the industry’s best practices in information technology.
c) A body of knowledge on software engineering to build products.
-------Answer-------
Scrum is a framework based on empiricism process control theory within which people can address complex adaptive problems. Correct answer is ‘a.’
2. To reduce the likelihood of not meeting big commitments, Scrum uses
a) Timeboxing so the planned events can happen on time.
b) Timeboxing so the commitments will have additional buffer of time.
c) Timeboxing so the events cannot exceed a predetermined amount of time.
-------Answer-------
Scrum controls the risks associated with long term planning and big commitments by constraining the product development into shorter iterations called Sprints. Each Sprint is strictly time-boxed so they expire on the predetermined date no matter what. By timeboxing, the risk of pursuing a wrong direction is limited to the cost of one Sprint. Correct answer is ‘c.’
3. Select all that apply. The formal opportunities for inspection and adaptation are
a) The Sprint.
b) The Scrum Team.
c) The Product Increment.
d) None of the above.
-------Answer-------
Four Scrum events are formal events for inspection and adaptation. They are Sprint Planning, Daily Scrum, Review, and Retrospective. Correct answer is ‘d.’
4. Select all that apply. The Scrum framework consists of
a) Scrum Standards.
b) Scrum Teams.
c) Product Development Processes.
d) Roles, events, artifacts, and rules associated with Scrum Teams.
-------Answer-------
The Scrum framework consists of Scrum Teams and their associated roles, events, artifacts, and rules. Though there are standards such as definition of “Done,” they are not formally called Scrum Standards. Correct answers are ‘b’ and ‘d.’
5. As per empiricism, knowledge is acquired by
a) Experience.
b) Analytical tools.
c) Formal teaching.
-------Answer-------
Empiricism asserts that knowledge comes from experience in the past and the practice of making decisions based on what is known. Correct answer is ‘a.’