Often in enterprise scenarios, users have different roles regarding specific applications.
Consider the following example, John Hansen has a default Developer role which grants him, at least, 'List' permission in all environments to all applications.
He is a Release Manager of the Directory application, meaning that he needs to be able to stage this application from Development to Quality Assurance.
To grant John these permissions do the following:
Configure Security for an Infrastructure
Create a Role