Preventing system module deletion

Hi there,

I was wondering if anyone could help me with preventing system modules from being seen and/ or deleted.

I've looked into using the User Authorization System to create users with select permissions to stop system modules being deleted exclusively but I can seem to find the correct as I still need the ability to load program modules.

I've also looked into using the NOVIEW/ READONLY parameter but this only seems to limit viewing and doesn't seem to stop deletion.

Can anyone suggest a potential work around for this? There's been multiple instances of operators deleting system files accidently while trying to delete program files. Any type of prevention method would be greatly appreciated