Currently, Self Service will consume VPP licenses as soon as the app is scoped to a computer, even if the app will never be installed there. This makes it impossible to manage a dynamic/restricted license pool on a self-service basis.
Ideally, VPP with Self Service would work like this:
The benefit is that users can themselves "check-out" a license in Self Service. An organisation with e.g. 1000 Macs can buy 50 licenses for an app which will rarely be used without needing to know who will use it effectively.
Once the licenses are used, it's still possible to purchase more if the user base is changing.