How Software Business Models Differ from Hardware