BPA is how the Cardinals draft. And for the most part, I am a fan of this approach. Teams that draft for need often pass up better talent for lesser talent. And this often leads to more misses than hits when drafting. For example, take last year's draft for the Cardinals, had they drafted based on need instead of BPA, they would have passed on Ellington in the 6th round after taking Stepfan Taylor in the 5th round.
Of course there are always situations where need overrides talent, like when you have 2 or 3 highly ranked guys fall to you that are ranked nearly identical. Then you take the player that fills the need over the other guys. Using the BPA method also makes it easier for teams to trade back knowing they have a few guys who are BPA available to them if they choose to do so.
BPA with need as a factor. If the top 3 BPA's are QB, TE, and SS and your team has no need for those look at the 4th BPA. Eventually trading back has to be the option.