At WordPress blog with bbPress installed users have 2 roles already: one from WordPress (e.g. Subscriber), one from bbPress (e.g. Participant). I did not invent anything, just exposed in User Role Editor the functionality WP has already, but doesn't not use itself.
That user's request was sent me by email. Yes, you may fill all needed caps into one role and use that role. But we may achieve the same purpose by different ways. Imagine, if you need periodically switch off 10 or 20 capabilities for some user? Or you need to add them on an hour and then remove? Second role may be useful in this case.