Spalling is a generic term describing when small pieces break off the surface of a piece of concrete. There are many reasons why concrete might spall, but the most common are freeze-thaw weathering and incorrect or inadequate mixing of the concrete. Other causes include the steel reinforcement rusting inside the concrete (which will often show up as a rusty brown discoloration on the surface) and chemical corrosion from substances such as de-icer.
Concrete is made by mixing ordinary portland cement and aggregate (a mix of sand and gravel) with water. Most people assume concrete "dries out" as it hardens, and may be tempted to add extra water to the mix. In fact, the water triggers a chemical reaction, causing the cement to set into a rigid matrix. If too much water is added, the cement and sand can settle out, leaving a weak point in the surface.
If the concrete was badly mixed or compacted when laid, pockets of water or small air voids can remain and create weak spots. If the temperature drops below freezing, the pocket of water may freeze. Because ice is less dense than liquid water, it expands as it freezes and then contracts again as it thaws. This constant expansion and contraction is known as freeze-thaw weathering and can cause the void or crack to get larger. Eventually, a piece of material may break off altogether, leaving a gap.
There are three ways to prevent spalling. First, ensure your concrete has the correct mix of materials and water and has been well mixed. Second, ensure it is properly laid -- remove air pockets by compacting it (either by hand or with a special power tool). Third, in areas where freeze-thaw is a potential problem, you can add air-entrainment admixture. This traps millions of microscopic air bubbles in the concrete to act as little buffers that absorb any expansion caused by freezing.