[u] Refactor on validation feature to be more isolated.
[u] Add more exception handle for each layer.
[u] Add more failure scenarios in the Functional Tests.