When you should or should not virtualize an application