Extreme programming, a software engineering methodology that advocates frequent releases in short development cycles.