Philosophy and Technology 27 (3):423-439 (2014)

This paper takes part in the methodological debate concerning the nature and the justification of hypotheses about computational systems in software engineering by providing an epistemological analysis of Software Testing, the practice of observing the programs’ executions to examine whether they fulfil software requirements. Property specifications articulating such requirements are shown to involve falsifiable hypotheses about software systems that are evaluated by means of tests which are likely to falsify those hypotheses. Software Reliability metrics, used to measure the growth of probability that given failures will occur at specified times as new executions are observed, is shown to involve a Bayesian confirmation of falsifiable hypotheses on programs. Coverage criteria, used to select those input values with which the system under test is to be launched, are understood as theory-laden principles guiding software tests, here compared to scientific experiments. Redundant computations, fault seeding models and formal methods used in software engineering to evaluate test results are taken to be instantiations of some epistemological strategies used in scientific experiments to distinguish between valid and non-valid experimental outcomes. The final part of the paper explores the problem, advanced in the context of the philosophy of technology, of defining the epistemological status of software engineering by conceiving it as a scientifically attested technology
Keywords Philosophy of computer science  Software testing  Falsificationism  Bayesian epistemology  Scientific experiments
Categories (categorize this paper)
DOI 10.1007/s13347-014-0159-6
Edit this record
Mark as duplicate
Export citation
Find it on Scholar
Request removal from index
Revision history

Download options

PhilArchive copy

Upload a copy of this paper     Check publisher's policy     Papers currently archived: 69,160
External links

Setup an account with your affiliations in order to access resources via your University's proxy server
Configure custom proxy (use this if your affiliation does not provide a proxy)
Through your library

References found in this work BETA

Objective Knowledge: An Evolutionary Approach.Karl Raimund Popper - 1972 - Oxford, England: Oxford, Clarendon Press.
Theory and Evidence.Clark N. Glymour - 1980 - Princeton University Press.
A Confutation of Convergent Realism.Larry Laudan - 1981 - Philosophy of Science 48 (1):19-49.
Image and Logic: A Material Culture of Microphysics.Peter Galison (ed.) - 1997 - University of Chicago Press: Chicago.

View all 39 references / Add more references

Citations of this work BETA

The Philosophy of Computer Science.Raymond Turner - 2013 - Stanford Encyclopedia of Philosophy.

View all 6 citations / Add more citations

Similar books and articles

Problems for a Philosophy of Software Engineering.Stefan Gruner - 2011 - Minds and Machines 21 (2):275-299.
Software Intensive Science.John Symons & Jack Horner - 2014 - Philosophy and Technology 27 (3):461-477.
The Social Disutility of Software Ownership.David M. Douglas - 2011 - Science and Engineering Ethics 17 (3):485-502.
The Freedoms of Software and its Ethical Uses.Samir Chopra & Scott Dexter - 2009 - Ethics and Information Technology 11 (4):287-297.
What is Software?Peter Suber - 1988 - Journal of Speculative Philosophy 2 (2):89-119.


Added to PP index

Total views
41 ( #274,512 of 2,499,305 )

Recent downloads (6 months)
6 ( #118,136 of 2,499,305 )

How can I increase my downloads?


My notes