SLS has always been a make-work program to preserve legacy jobs at Space Shuttle contractors.
Perhaps in part but it also serves a few other purposes. Probably the most important one is that it gives NASA a path to getting heavy lift capabilities in the event that the private enterprises working on the problem fail. It's a hedge of a sort, albeit an expensive one. Let's say hypothetically that SpaceX cannot get their Falcon Heavy to work for some reason. If NASA put all their eggs in that basket they could reasonably end up with no heavy launch vehicle. With SLS in the works NASA won't find themselves without options no matter what the private sector does.
Remember that as recently as a few years ago it wasn't at all clear that private companies like SpaceX would be as successful as they have been so far. It was uncharted territory and when you go into uncharted territory it's sensible to have a backup plan in place just in case things go wrong. Things are looking better by the day for private launch companies but there is still time for things to go tits up before SLS is operational.
I have a running bet with some friends on how many times the SLS will fly (if ever). My money's on two flights before it gets the axe.
I think it will depend heavily on how successful companies like SpaceX and Blue Origin turn out to be. You may very well be right but I would regard that as a best possible scenario. If SLS ends up seeing a lot of use it means that SpaceX and the rest failed.