Peopleware (2nd ed.): productive projects and teams
Peopleware (2nd ed.): productive projects and teams
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Letters to the editor: go to statement considered harmful
Communications of the ACM
Karl popper's critical rationalism in agile software development
ICCS'06 Proceedings of the 14th international conference on Conceptual Structures: inspiration and Application
Assessment of a framework to compare software development methodologies
Proceedings of the 2007 annual research conference of the South African institute of computer scientists and information technologists on IT research in developing countries
Problems for a Philosophy of Software Engineering
Minds and Machines
Hi-index | 0.00 |
This paper critically evaluates the use of revolutionary and evolutionary theories of scientific method, respectively those of two prominent 20th century philosophers, Thomas Kuhn and Karl Popper, to account for change in software engineering methodologies. The paper will predominantly assess the extent to which the Agile software community's use of Kuhn's theory of revolutionary scientific change, particularly in Kent Beck's Extreme Programming (XP), is justified. It will be argued that whereas Kuhn's concepts of "scientific revolutions" and "paradigm shift" can partially explain the large-scale, radical change from "traditional" software methodologies to Agile ones, Popper's critical rationalism seems better suited to the small-scale, piecemeal methodological approach of Agile methodologies. The ethical implications to software engineering of Kuhn's and Popper's theories, as well as the work of the Peopleware authors and the architect, Christopher Alexander, will be discussed. Finally, the ideas of the Frankfurt School will be used to broaden the Popper versus Kuhn debate. A critical reflection on the soundness of applying theories of scientific methodology to the practice of software engineering concludes this paper.