Hasso-Plattner-Institut
 
    • de
Hasso-Plattner-Institut
  
 

Agile Software Development

in Virtual Collaboration Environments

Agile software development processes are increasingly applied to projects that deal with complex domains and require continuous interaction among developers and with customers. Approaches such as Extreme Programming or Scrum are people- and codecentric. Based on a high-quality code base throughout the entire project, developers can respond immediately to customer needs and requests. Teams can quickly make progress in providing the desired technical solution due to short development cycles and incremental explorations.

There is also the trend that project teams tend to disperse around the world. Distributed development is getting more common, requiring team members to resort to means other than face-to-face communication to organize themselves, to collaborate, and to keep in touch regardless of geographical location.

Design Thinking as a process has interesting aspects to offer - not only to designers, but also to software engineers. In our project, we will extend agile development processes with elements from the Design Thinking approach to make them even stronger. Our enhancements will explicitly support customers and developers to explore divergent alternatives and to converge on a decision or solution whenever necessary and possible.

Furthermore, we will provide tools assisting distributed development of software systems that are to be developed based on our Design Thinking enhanced agile development process. We will go beyond traditional approaches by extending virtual environments to support intensive interaction and collaboration - between the customers and the developers, and among the developers themselves.

Project Team:
Robert Hirschfeld, Bastian Steinert, Jens Lincke, Michael Haupt, Andreas Raab, Christine Strothotte, Carola Zwick
 
Watch the video on Tele-Task

Agile Software Development

in Virtual Collaboration Environments

Agile software development processes are increasingly applied to projects that deal with complex domains and require continuous interaction among developers and with customers. Approaches such as Extreme Programming or Scrum are people- and codecentric. Based on a high-quality code base throughout the entire project, developers can respond immediately to customer needs and requests. Teams can quickly make progress in providing the desired technical solution due to short development cycles and incremental explorations.

There is also the trend that project teams tend to disperse around the world. Distributed development is getting more common, requiring team members to resort to means other than face-to-face communication to organize themselves, to collaborate, and to keep in touch regardless of geographical location.

Design Thinking as a process has interesting aspects to offer - not only to designers, but also to software engineers. In our project, we will extend agile development processes with elements from the Design Thinking approach to make them even stronger. Our enhancements will explicitly support customers and developers to explore divergent alternatives and to converge on a decision or solution whenever necessary and possible.

Furthermore, we will provide tools assisting distributed development of software systems that are to be developed based on our Design Thinking enhanced agile development process. We will go beyond traditional approaches by extending virtual environments to support intensive interaction and collaboration - between the customers and the developers, and among the developers themselves.

Project Team:
Robert Hirschfeld, Bastian Steinert, Jens Lincke, Michael Haupt, Andreas Raab, Christine Strothotte, Carola Zwick
 
Watch the video on Tele-Task

What is the Value of Prototyping?

Prototyping is central to design thinking. As such, perhaps the most fundamental empirical question in design thinking is: (how) do prototyping practices affect design quality? This proposed research will make significant strides towards an answer, providing both academics and business leaders with a clearer understanding of the cultural, cognitive and environmental influences during prototyping. Our approach will be to catalog established views of prototyping and to perform empirical investigations in both real-world and lab settings.
First, we will catalog prominent views of design thinking and prototyping, synthesizing literature in cognitive science, social psychology, design, and engineering. This stage of our research will identify proven methods, such as techniques for capturing prototyping practices and measuring indicators of design quality. This work will also allow us to refine our questions into actionable empirical research.
Second, our empirical work will include both naturalistic observations and lab investigations of prototyping. The challenge of this work will be mapping observable design activities to theoretical notions of the design process. We will also conduct a series of controlled investigations—with experimental manipulations and concrete measures—to test specific theories about prototyping. The results of our empirical inquiries will guide the development of a conceptual framework for prototyping.

Project Team:
Scott R. Klemmer, Steven Dow
 
Watch the video on Tele-Task

What is the Value of Prototyping?

Prototyping is central to design thinking. As such, perhaps the most fundamental empirical question in design thinking is: (how) do prototyping practices affect design quality? This proposed research will make significant strides towards an answer, providing both academics and business leaders with a clearer understanding of the cultural, cognitive and environmental influences during prototyping. Our approach will be to catalog established views of prototyping and to perform empirical investigations in both real-world and lab settings.
First, we will catalog prominent views of design thinking and prototyping, synthesizing literature in cognitive science, social psychology, design, and engineering. This stage of our research will identify proven methods, such as techniques for capturing prototyping practices and measuring indicators of design quality. This work will also allow us to refine our questions into actionable empirical research.
Second, our empirical work will include both naturalistic observations and lab investigations of prototyping. The challenge of this work will be mapping observable design activities to theoretical notions of the design process. We will also conduct a series of controlled investigations—with experimental manipulations and concrete measures—to test specific theories about prototyping. The results of our empirical inquiries will guide the development of a conceptual framework for prototyping.

Project Team:
Scott R. Klemmer, Steven Dow
 
Watch the video on Tele-Task

Scenario-Based Prototyping

Towards next generation design thinking: Scenario-Based Prototyping for Designing Complex Software Systems with Multiple Users

Design thinking is at its best if tangible prototypes can be used to envision new products and services. However, for complex software systems with multiple users usually such tangible prototypes are not feasible. To overcome this problem, we propose a scenariobased prototyping approach for designing complex software systems that is based on models, both structural and behavioural models. The approach will support the stepwise and interactive enrichment of the prototype model, the traceability between the artefacts collected during earlier design phases and the scenarios. The models provide a more formal outcome of the design process for the downstream engineering activities, so that the gap between design and engineering can be narrowed.

Project Team:
Holger Giese, Mathias Weske, Alexander Großkopf, Gregor Gabrysiak, Thomas Vogel, Nico Rehwaldt 

Watch the video on Tele-Task 

Scenario-Based Prototyping

Towards next generation design thinking: Scenario-Based Prototyping for Designing Complex Software Systems with Multiple Users

Design thinking is at its best if tangible prototypes can be used to envision new products and services. However, for complex software systems with multiple users usually such tangible prototypes are not feasible. To overcome this problem, we propose a scenariobased prototyping approach for designing complex software systems that is based on models, both structural and behavioural models. The approach will support the stepwise and interactive enrichment of the prototype model, the traceability between the artefacts collected during earlier design phases and the scenarios. The models provide a more formal outcome of the design process for the downstream engineering activities, so that the gap between design and engineering can be narrowed.

Project Team:
Holger Giese, Mathias Weske, Alexander Großkopf, Gregor Gabrysiak, Thomas Vogel, Nico Rehwaldt 

Watch the video on Tele-Task