Abstract
We present the design of an empirical experiment to compare programmers’ performance in program design tasks. The experiment is targeted to empirically examine the benefits of CoExist, a set of extensions to programming environments. CoExist supports programmers in dealing with unexpected and undesired consequences of making changes to their code base. Changing source code involves the risk of making errors. For example, a promising idea to simplify the code can suddenly turn out inappropriate, a situation that, if not prepared, requires programmers to manually withdraw recent changes. Traditionally, programmers have to strictly follow a structured and disciplined approach to reduce the costs of making errors. However, this traditional approach requires planning for upcoming but still uncertain changes in advance, which is time-consuming and also error prone. In addition, it requires significant effort to not forget the regular execution of the required activities, in particular in situations full of uncertainty. In contrast to this, CoExist offers dedicated tool support to recover fast and easily from undesired consequences. We believe that the presence of such tools encourages programmers to make source code changes at the moment they think of them, independent of whether or not the implications of such changes are already apparent. The presented experiment design to compare performance in program design tasks will help to examine this hypothesis.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Allen D (2001) Getting things done: the art of stress-free productivity. Penguin, New York
Apache Software Foundation (2009) Subversion best practices
Beck K (1996) Smalltalk best practice patterns. Prentice Hall
Beck K, Andres C (2004) Extreme programming explained: embrace change. Addison-Wesley Longman
Blackwell AF (2002) What is programming. In: 14th workshop of the Psychology of Programming Interest Group. Citeseer, pp 204–218
Dorst K, Cross N (2001) Creativity in the design process: co-evolution of problem- solution. Des Stud 22(5)
Dow SP, Heddleston K, Klemmer SR (2009) The efficacy of prototyping under time constraints. In: Conference on creativity and cognition
Dow SP, Glassco A, Kass J, Schwarz M, Schwartz DL, Klemmer SR (2010) Parallel prototyping leads to better design results, more divergence, and increased self-efficacy. ACM Trans Comput-Hum Interact (TOCHI) 17(4):18
Fowler M (1999) Refactoring: improving the design of existing code. Addison-Wesley Professional, Reading
Goldschmidt G (1991) The dialectics of sketching. Creativity Res J 4(2)
Juristo N, Moreno AM (2010) Basics of software engineering experimentation. Springer
Kirsh D (2010) Thinking with external representations. Ai Soc 25(4):441–454
Lim Y-K, Stolterman E, Tenenberg J (2008) The anatomy of prototypes: prototypes as filters, prototypes as manifestations of design ideas. ACM Trans Comput-Hum Interact (TOCHI) 15(2)
Lindberg CA (2008) Oxford American writer’s thesaurus. Oxford University Press, New York
Parnas DL (1972) On the criteria to be used in decomposing systems into modules. Commun ACM 15(12):1053–1058
Steinert B, Cassou D, Hirschfeld R (2012) Coexist: overcoming aversion to change. In: Proceedings of the 8th symposium on dynamic languages, DLS’12, New York, ACM, pp 107–118
Suwa M, Tversky B (2002) External representations contribute to the dynamic construction of ideas. In: Diagrammatic representation and inference, vol 2317. Springer Berlin/Heidelberg
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Steinert, B., Hirschfeld, R. (2014). How to Compare Performance in Program Design Activities: Towards an Empirical Evaluation of CoExist. In: Leifer, L., Plattner, H., Meinel, C. (eds) Design Thinking Research. Understanding Innovation. Springer, Cham. https://doi.org/10.1007/978-3-319-01303-9_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-01303-9_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-01302-2
Online ISBN: 978-3-319-01303-9
eBook Packages: Business and EconomicsBusiness and Management (R0)