From what I understand pokemon have 3 modifiers along with their level value to determine the range of their stats.
IV: These values range from 0 to 31 in every stat and cannot be changed once the pokemon is obtained. They are random when caught in the wild, but can somewhat be influenced when breeding to get a better outcome. EV: This is stat EXP, depending on what pokemon you train on, your pokemon will obtain different stat exp assign to their stats to increase its value. They range from 0 to 252 in every stat, but have a max of 510 overall. Base stats: Values unique to every species of pokemon, are never changed.
The game puts these 3 values and your pokemon's level into an equation to give its stats. (Well something like that, don't quote me)
When people say 3 IV pokemon, they are refering to pokemon with 31 (max) values on atleast 3 of their IV stats.