Abstract
The
most profound conflict in software engineering is not between
positivist and interpretivist research approaches or Agile and
Heavyweight software development methods, but between the Rational and Empirical Design Paradigms.
The Rational and Empirical Paradigms are disparate constellations of
beliefs about how software is and should be created. The Rational
Paradigm remains dominant in software engineering research, standards
and curricula despite being contradicted by decades of empirical
research. The Rational Paradigm views analysis, design and programming
as separate activities despite empirical research showing that they are
simultaneous and inextricably interconnected. The Rational Paradigm
views developers as executing plans despite empirical research showing
that plans are a weak resource for informing situated action. The
Rational Paradigm views success in terms of the Project Triangle (scope,
time, cost and quality) despite empirical researching showing that the
Project Triangle omits critical dimensions of success. The Rational
Paradigm assumes that analysts elicit requirements despite empirical
research showing that analysts and stakeholders co-construct
preferences. The Rational Paradigm views professionals as using software
development methods despite empirical research showing that methods are
rarely used, very rarely used as intended, and typically weak resources
for informing situated action. This article therefore elucidates the
Empirical Design Paradigm, an alternative view of software development
more consistent with empirical evidence. Embracing the Empirical
Paradigm is crucial for retaining scientific legitimacy, solving
numerous practical problems and improving software engineering
education.
Highlights
- •
- Software development research is divided into two incommensurable paradigms.
- •
- The Rational Paradigm emphasizes problem solving, planning and methods.
- •
- The Empirical Paradigm emphasizes problem framing, improvisation and practices.
- •
- The Empirical Paradigm is based on data and science; the Rational Paradigm is based on assumptions and opinions.
- •
- The Rational Paradigm undermines the credibility of the software engineering research community.
No comments:
Post a Comment