Abstract :
Summary form only given. There has been relatively little research interest in software engineering as a creative process, in spite of the widespread anecdotal evidence that many software engineering problems necessitate creative thinking to be solved effectively. This keynote talk will present established creativity theories from disciplines outside of software engineering, then put forward arguments for re-interpreting important software engineering activities, such as requirements engineering and software design, as creative problem solving. Once the applicability of these theories has been established it will present different creativity techniques and software tools that can be applied in software engineering, with a focus on program comprehension tasks. The talk will draw on 10 years of experience applying creativity techniques and tools in major requirements engineering projects.