decentralized vs centralized software