Trying to model different activities involved in the development of a story as distinct phases on a Kanban board introduces waste as work sits in different columns waiting to be moved around. If you have separated roles such as design, development and testing on your team this also reinforces communication boundaries and reduces collaboration.
Having a single Doing state focusses everyone on the common of goal of completing the story. Instead of creating separate columns for the different activities on a story, communicate directly with everyone on the team and use task lists to coordinate.