Research toward an engineering discipline for software

Date of Original Version



Conference Proceeding

Rights Management

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. FoSER 2010, November 7–8, 2010, Santa Fe, New Mexico, USA. Copyright 2010 ACM 978-1-4503-0427-6/10/11...$10.00.

Abstract or Description

Software engineering should aspire to be a true engineering

discipline. We have made good progress in some areas, but a

number of aspects of practical engineering are under-represented

in our research portfolio. We have been slow to move beyond

well-delimited systems developed by professional programmers to

systems integrated from multiple public sources that evolve in the

hands of their users. We have focused on formal reasoning and

systematic testing to the detriment of qualitative and incremental

reasoning supporting cost-effective, rather than perfect solutions.

We have been slow to codify our results into unified theories and

practical reference material. To establish a true engineering

discipline for software, we need to broaden our view of what

constitutes a “software system” and we need to develop

techniques that help to provide cost-effective quality despite

associated uncertainties.