The requirements for most software systems - the intended states-of-affairs these systems are supposed to bring about - concern their operational environment, often a socio-physical world. But software systems usually don't have any direct means to change that environment in order to bring about the intended states-of-affairs. In what sense then can we say that such systems fulfill their requirements? The main purpose of this paper is to account for this paradox. We do so by proposing a preliminary Ontology of Assumptions. This ontology aims to characterize and make explicit a number of notions that are used implicitly in software engineering practice to establish that a system specification S fulfills its requirements R given a set of assumptions A. Our proposal is illustrated with an example concerning a meeting scheduler.
How software changes the world: The role of assumptions
Guizzardi Giancarlo;Guarino Nicola
2016
Abstract
The requirements for most software systems - the intended states-of-affairs these systems are supposed to bring about - concern their operational environment, often a socio-physical world. But software systems usually don't have any direct means to change that environment in order to bring about the intended states-of-affairs. In what sense then can we say that such systems fulfill their requirements? The main purpose of this paper is to account for this paradox. We do so by proposing a preliminary Ontology of Assumptions. This ontology aims to characterize and make explicit a number of notions that are used implicitly in software engineering practice to establish that a system specification S fulfills its requirements R given a set of assumptions A. Our proposal is illustrated with an example concerning a meeting scheduler.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.