abstraction layer

A process of hiding the complexity of a system by providing an interface that eases its manipulation.