When should I do decoupling for a control system? I know that Decoupling Process converts MIMO problems to SISO problems and that is helpful to design the control algorithm. But I think that with the state-space control we can design control algorithm without needing to decoupling the system. So when should I use decoupling in control problem?
 A: 
we can design control algorithm without needing to decoupling the system

It's true mathematics-wise. But, not computation-wise.
If the system can be divided into subsystems with little influence on each other, it is much easier to solve multiple smaller question than a single large question. Please notice that the order of state space matrices increase with $O(N^2)$ and solving the control problem could be even worse. You wouldn't feel it unless you face with really challenging systems.
For complicated control problems such as Model Predictive Control (MPC) the system dimension is very critical and each variable can add multiple rows and columns to the matrix problem. This number can be in range of 100 additional rows and columns. In such cases, Distributed MPC (DMPC) have become very popular and there are active research on them.
For small and simple problems, this is not that bad in mathematical sense. However, still decoupling is attractive as it makes the problem easier for human being to understand.
A: This is a bit of a soft-question.
From a control systems engineer point of view, decoupling is interesting if in principle you wanted the plant to be built as a decoupled system to begin with. 
Say you control signal is actually a manual input, if there is a button to go up, and a button to go left, the user wants to press the "up" button and have the system go "up", not "up and a bit right", so that he now needs to press the "left" button for the system to be "centered, but not up enough". Hence you have the control systems perform all the needed compensation (i.e. decoupling) so that the operator does not need to do it himself. the principle also works if the inputs are actually given by an algorithm developed by a third party that might be oblivious to the plant dynamics (the kind of people usually referred to as "customer").
Also, some outputs may be simply undesirable, such that your goal is never to move them away from zero. Think about a flexible mechanical system, which you wanted to be rigid. Some decoupling could prevent vibration modes from getting excited (albeit this is hard in practice).
