Individual Values are values between 0-31. There is an IV value for all six stats. Each IV point adds another stat point to the stat it affects.
IVs are randomly determined the moment you catch/hatch a Pokemon and cannot be changed.
When breeding, three randomly chosen IV values from both parents (a total of three, not three from both) are passed down to the child. This makes it possible to pass down an IV value of 31 for a certain stat over time.
If you're not using NetBattle, getting an IV value of 31 for all six stats is very time-consuming.