The Sensemaking-Coevolution-Implementation Theory of Software Design
It addresses the need for a theoretical framework in software engineering and information systems development, but it is incremental as it builds on existing literature without introducing new empirical results or methods.
The paper tackles the problem of understanding software design practice by formulating a new process theory called Sensemaking-Coevolution-Implementation Theory, which explains how collocated teams create complex software systems through alternating activities of organizing perceptions, refining understandings, and manifesting designs.
Understanding software design practice is critical to understanding modern information systems development. New developments in empirical software engineering, information systems design science and the interdisciplinary design literature combined with recent advances in process theory and testability have created a situation ripe for innovation. Consequently, this paper utilizes these breakthroughs to formulate a process theory of software design practice: Sensemaking-Coevolution-Implementation Theory explains how complex software systems are created by collocated software development teams in organizations. It posits that an independent agent (design team) creates a software system by alternating between three activities: organizing their perceptions about the context, mutually refining their understandings of the context and design space, and manifesting their understanding of the design space in a technological artifact. This theory development paper defines and illustrates Sensemaking-Coevolution-Implementation Theory, grounds its concepts and relationships in existing literature, conceptually evaluates the theory and situates it in the broader context of information systems development.