This is "Can linux work without a shell?" but focussing purely on the mechanics of removing shells without the distractions in that other question.
Consider the same system as there: Ubuntu Linux Server LTS version 16 with bespoke systems comprising compiled binaries running as systemd services, without any end user (or indeed administrator) login.
How does one remove shells? What would be the results of doing so? Of removing the Bourne Again shell? Of removing /bin/sh? How much could such a system still run?
Note that this question is not concerned with why one might want to do this, with terminals, with how to secure a system, or with commands that one can run from shells. The focus here is on shells, the mechanism of removal, and the consequences.