2 research outputs found
The Dangerous Dogmas of Software Engineering
To legitimize itself as a scientific discipline, the software engineering
academic community must let go of its non-empirical dogmas. A dogma is belief
held regardless of evidence. This paper analyzes the nature and detrimental
effects of four software engineering dogmas - 1) the belief that software has
"requirements"; 2) the division of software engineering tasks into analysis,
design, coding and testing; 3) the belief that software engineering is
predominantly concerned with designing "software" systems; 4) the belief that
software engineering follows methods effectively. Deconstructing these dogmas
reveals that they each oversimplify and over-rationalize aspects of software
engineering practice, which obscures underlying phenomena and misleads
researchers and practitioners. Evidenced-based practice is analyzed as a means
to expose and repudiate non-empirical dogmas. This analysis results in several
novel recommendations for overcoming the practical challenges of evidence-based
practice.Comment: 12 page
The Sensemaking-Coevolution-Implementation Theory of Software Design
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.Comment: 7 tables, 7 Figures, 157 reference