I just concentrate and get it all done as quickly as possible. I used to take long showers many years ago, but since I am eternally running late due to sleeping in I have ended up perfecting the superquick shower.
Generally go into bathroom first thing after waking up, turn on shower, then take a quick wiz (while the shower heats up) then quickly undress and jump in, get myself and hair wet enough, takes around 30-40 seconds, then whip out the shower gel, give generous dollop to hand and step out of the main shower flow for a moment while I quickly apply all over most of my body, then step back in the shower and rinse it all off. Whole thing should be about 4-5 minutes, though I can do it in about 3 minutes if I'm in a real rush and go super quick. This is the basic everyday morning shower for me.
Then every second or third day I will wash my hair (I have short hair and use wax so need to clean it out regularly) this will blow out the time to around 7 minutes or maybe a tad longer.
On the weekend or sometimes after a long day I will have a shower after work that isn't rushed and I can spend a bit longer having a thorough clean.
The main problem that you have as far as I can see, is that you are day dreaming, which is easily done and kills time like crazy. The best method that I use to combat this is to get up and have a shower as soon as I get out of bed, this way I am still half asleep and my brain hasn't had time to kick in yet, though there is the risk of falling asleep, so if I'm still really tired I will jump in while it's still cold, that wakes me up enough.
Another thing that's important is the routine, try and keep to the same routine each day, wake up same time, do everything more or less the same so then you know how long everything takes. When I first went to change from long to short showers, I used an alarm clock to time me, then later I hit on the idea of using music, I know put on songs that I know how long they last and then I can time how long I have been. Now I dont need anything, I just know how long it's been, in fact it's often been less time than I thought.