Chapter

Design Thinking Research

Part of the series Understanding Innovation pp 161-182

Date:

Making Examples Tangible: Tool Building for Program Comprehension

  • Marcel TaeumelAffiliated withSoftware Architecture Group, Hasso Plattner Institute, University of Potsdam Email author 
  • , Robert HirschfeldAffiliated withSoftware Architecture Group, Hasso Plattner Institute, University of Potsdam

* Final gross prices may vary according to local VAT.

Get Access

Abstract

Best practices in design thinking suggest creating and working with tangible prototypes. In software engineering, programmers interact with source code more than with customers. Their intent is to understand the effects of abstract source code on programs in execution. Existing tools for program exploration, however, are tailored to general programming language concepts instead of domain-specific characteristics and programmer’s system knowledge. In this chapter, we establish the need for adapting programming tools in use when navigating, viewing, and collecting examples to increase tangibility, that is, clarity of a concept or idea based on what can be experienced on screen. We present our Vivide tool-building environment, which is a data-driven, scriptable approach to constructing graphical tools with low effort. By exploring common programming scenarios, we conclude that tool building does not have to be a detached, effortful activity but can be accomplished by the same programmers who detect deficiencies during their programming tasks. Then exemplary information about software systems can become tangible.