Knowledge Base / What is Scrum?
Scrum is iterative and incremental
Scrum is iterative. The product is developed in cycles or iterations that are repeated successively, with no gaps in between. Cycles have, in principle, a fixed length and exactly the same well-established format, composed of a defined sequence of events.
The following figure is a simplified representation of a Scrum cycle, indicating the succession of elements present in the cycle and also the succession of cycles.

Each cycle is like a small self-contained project, with all the activities necessary to implement a stable and working part of the product. Each increment of the product, implemented in each cycle, modifies, and adds to those parts of the product that have already been done. These are done, end-to-end features that facilitate the obtaining of feedback on what has been produced and therefore enable the result of this cycle to be delivered to its users, should that be decided. The feedback obtained on the finished parts of the product feeds the definition of what will be done in the subsequent cycles.
Definition: cake analogy
Imagine that two teams of pastry chefs are going to bake a cake, each using a different method. Both cakes have multiple layers (see the figure below).

The first team will produce the cake layer by layer. The team members mix the ingredients for the first layer of the cake and then bake it. Then they mix the ingredients for the second layer, bake, and place this layer on top of the first. And do the same with the third, fourth and fifth layers, placing each one on top of the previous layer. Finally, they cover the cake with icing, which is the visible part for those who will eat the cake. Only then can a slice of the cake be cut and eaten.
The second team has a bold goal. It wants the cake to be consumed as quickly as possible and not just at the end. To achieve this goal, the team uses a very different way of working: they produce the cake slice by slice, but in very thin slices. Each of these slices has only a little part of each of the layers, each little piece being just enough to hold another little piece above, and all of them then covered by the frosting. In this way, the cake can already be consumed from its first slice.
Of course, using the second method would be quite unusual to produce a cake. But it could be the most appropriate way to develop new products. Unlike working with traditional methods, with Scrum the product development team does not produce complete layers of the product, one after the other, from the architecture, database, etc. until the user interface (in the case of software). Rather, the team develops the product in increments. Each of these increments is a thin slice of product ready to go, with just enough of each layer of the product to work.
In other words, each slice includes a thin part of each layer up to the interface, which is the part visible to the user – the icing. This method of delivering working slices of the product generates value for the customers and users early on, and enables their feedback, thereby reducing risks in product development.