I believe that good design should be data driven and user centric. It is not created in a moment of inspiration or a bubble. It is instead an iterative process requiring collaboration between multiple teams.
My experience has taught me that the most successful projects are those that always keep the end-user in the forefront. It is easy to get attached to initial design solutions and forgo any additional research or testing but it rarely works. First solutions are often wrong because in the early stages it is hard to know enough about the problem you are attempting to solve. Conducting research, talking to users, collaborating with different teams and creating prototypes all help keep the project on track.