Understanding User-Centered Design Process and How to Do It Right