This document discusses agile estimating and planning techniques. It explains that agile planning aims to reduce risk and uncertainty, support better decision making, and establish trust. Traditional planning can be problematic because work is prioritized for the convenience of developers rather than customer value. Agile techniques separate size from duration and use story points and velocity to estimate work. Iteration planning prioritizes stories until the team's bandwidth is full, while release planning is either feature-driven or time-driven based on defining velocity and forecasting points or length.