What you really need based on your situation is a small-scale Active Directory environment, along with Windows Deployment services, which would allow you to create custom Windows images that contain only the required software. You can also set up something like System Center, though that might be too large for only 50 users, which can then allow users to pick from the Software Center from a list of organization approved software; I have that set up like that at work. Other ways of doing this...you can set up software on the network via Group Policy and MSIs, which will then allow users to select the option to install a program from the network, so that you didn't have users with software they didn't need for their particular tasks.Hope this gives you a bit more background.