Programming Perspectives for Software System Design - Agile Software Development in Virtual Collaboration Environments

PI: Prof. Dr. Robert Hirschfeld


Agile software development and Design Thinking share values and principles. This is a promising foundation for learning each other’s disciplines. So far, transfer of knowledge from the Design to IT industry has been focused on user interfaces and end-user interaction. While important, this is only one of several aspects of software development. Developers face many design problems during the entire development process – they also design software systems or subsystems to be used, maintained and enhanced by other developers. For this to be feasible, conceptual integrity and ease of understanding are critical design guidelines.

We will investigate the application of Design Thinking methods and techniques to the domain of software system design and corresponding development tasks in Agile Software Development projects. We will conduct observational studies to substantiate our observations, conceptualize and realize tool support to meet observed needs, and conduct controlled experiments in support of our theory that, with appropriate tool support, the application of Design Thinking techniques allows programmers to approach software system design tasks more explicitly and efficiently.