Here is a “Full node” definition from Mastering Bitcoin: “A bitcoin network node with all four functions: wallet, miner, full blockchain database, and network routing”
Actually, any healthy crypto currency should contain all of four of these fundamental functions.
You may use them separately, part of them or combine them to make your product.
Mining pool: only use part of full blockchain database, network routing, wallet and miner.
Cryptocurrency trading platform: only uses wallet.
Block Explorer: uses full blockchain database.
Hardware wallet: only use part of the wallet.
The more components used, the more complexity is added.
Please do help us add the latest knowledge to this guide.