Introduction to the "Scrum" Software Development Process

"Scrum" is not an acronym, and instead the name comes from a type of rare, in-game meeting used by soccer team members to do medium-term planning. Instead of dividing a big project into separately-developed pieces (which must be integrated at the end), or splitting the project temporally into a series of stages done different groups (where there is a handoff of responsibility from design, to implementation, to testing, etc), the idea behind Scrum is to create a stable team that handles the entire project through a series of atomic steps called "sprints". The endpoint after each sprint should be a "Potentially Shippable Increment" (PSI), which is a working, stable, fully-documented piece of code that implements a subset of the features required in the complete project.

For example, suppose the overall project goal is to build a house.

I am not a Scrum expert, so there is no reason for me to create yet another overview of how Scrum works.  Here are two excellent (and free!) sources to help you get started:

Wikipedia article on Scrum

The Scrum Primer