Bien, Para los roles de usuarios para esta aplicación si mantenemos los siguientes: Administrador Cajero Almacenista
El administrador debería solo tener permisos de edición de datos de trabajo de la aplicación, y no para editar la aplicación misma. (si es que es el caso).
El cajero solo el modulo de ventas, cancelar ventas, ver graficas de ventas y tal vez unidades de medida. También Clientes.
El almacenista solo tener acceso a Productos, EntradaMaterial, MaterialDetalle, Proveedores, unidades de Medida.