What goals is homomorphic encryption aiming to solve? As I understand from this article about homomorphic encryption, it
mainly aims to enhance the security of cloud computing. We should be able to encrypt data and send it to the cloud. After it is send, we should be able to make computation on the encrypted data and the result of this computation is an encrypted data too. If we decrypt the result of our computation, then we should get back the plain text version of the result.

The question is, why we assume it enhances the cloud computing? We could just encrypt data, send it to cloud. When we need to make computation, query these data to our computers and decrypt it, make computation, then send it back to the cloud if needed.
Homomorphic encryption in and of itself solves the problem of computation on encrypted data. For example, if I give you only the encryptions of $a$ and $b$ ($E(a),E(b)$) can you compute $E(ab)$ and $E(a+b)$. That is the problem that fully homomorphic encryption (FHE) solves. There are also partially homomorphic encryption methods that allow you to only compute one operation (e.g., Paillier and Elgamal).

Cloud computing is "the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet)." So, you push your data to the cloud then tell the cloud what computation to perform. The cloud computes the result and sends the answer back to you. The benefit of FHE when applied to the cloud is that all of this can take place without the cloud learning your data. You upload encrypted data, the cloud performs the comptuations on that data, returns the result. That said, it appears that FHE alone is not sufficient for privacy-preserving cloud computing.

Of related interest, I'd suggest you look at In what ways does Full or Partial Homomorphic Encryption benefit the cloud?