Programming for Design: From Theory to Practice by Edith CherryProfessor Cherry identifies the central issues involved and describes the skills needed to work with clients to identify problems to be solved by a design effort. Emphasizing designing for people, she offers proven strategies and techniques for goal setting, information gathering and analysis, concept development, program synthesis, and communicating with clients.