I have seen that the MOSFETs and current shunt resistors are connected to the negative terminals of the battery or the BMS. Is there any specific reason for this? Why aren't they connected to the positive terminal? If BMS can connect or disconnect the battery from the load then why not control the flow in the positive terminal?
Because the N-channel MOSFET can carry higher current and it is cheaper then its similar size counterpart P-channel MOSFET. N-ch MOSFET can be used also as high side switch, but it requires an additional charge pump.
The shunt is placed on lower side, because the common mode voltage would be too high for the operational amplifier. Again, it is possible to measure the current on high side, but you would require an isolated DC/DC converter and isolation operational amplifier or some specific opamp designed for high side sensing. You can find high side sensing and switching in expensive industrial equipment.
The price is the main reason.