After the old tile has been tear down, then new tiles are put up nicely on the wall and floor. The contractor going to install the basin, mirror and shower etc. My friend bought a big and nice basin, just like the one you saw in the hotel bathroom, and is very heavy.
The contractor complains that he doesn't know how to install the heavy and nice looking basin. The basin don't came with a stand, it is too heave to hook on the wall. It suppose to have a concrete cement stand to hold it, but it was not done earlier...
This always happen during system implementation time. When system architecture (or designer) is inexperience, lazy to check for the (hardware and software) specification, too proud of himself/herself to discuss with the software and hardware engineer.
I experience it when setup the hardware (and software) for a project many years ago. Everything just went wrong. The network cable already cramped, but some are just too short, have to order the network cable again. This is just a small issue, and is just a start.
They have ordered the HP servers, but didn't order the rack from HP, but order from third party which is cheaper. The third party rack is very difficult to mount those server on it. Yes, not all rack mount are compatible, they have slightly different in specification and dimension, which cost you 10 times the effort to mount the server on the rack.
They have ordered an expensive backup array, but didn't allocate budget for the backup software. If you are familiar, you should know how expensive an enterprise backup software will cost. The Linux OS that they planned to use, didn't support the backup array. There is no driver for the new hardware! Many more other issues happened.
At the end, all issues have been solved, with extra cost and effort. The system architecture just denied that he/she has done a lousy job on the project. That's life, sign. I learned a lot from that project.