  The requirements elicited from stakeholders suffer from various afflictions,
including informality, incompleteness, ambiguity, vagueness, inconsistencies,
and more. It is the task of requirements engineering (RE) processes to derive
from these an eligible (formal, complete enough, unambiguous, consistent,
measurable, satisfiable, modifiable and traceable) requirements specification
that truly captures stakeholder needs.
  We propose Desiree, a refinement calculus for systematically transforming
stakeholder require-ments into an eligible specification. The core of the
calculus is a rich set of requirements operators that iteratively transform
stakeholder requirements by strengthening or weakening them, thereby reducing
incompleteness, removing ambiguities and vagueness, eliminating unattainability
and conflicts, turning them into an eligible specification. The framework also
includes an ontology for modeling and classifying requirements, a
description-based language for representing requirements, as well as a
systematic method for applying the concepts and operators. In addition, we
define the semantics of the requirements concepts and operators, and develop a
graphical modeling tool in support of the entire framework.
  To evaluate our proposal, we have conducted a series of empirical
evaluations, including an ontology evaluation by classifying a large public
requirements set, a language evaluation by rewriting the large set of
requirements using our description-based syntax, a method evaluation through a
realistic case study, and an evaluation of the entire framework through three
controlled experiments. The results of our evaluations show that our ontology,
language, and method are adequate in capturing requirements in practice, and
offer strong evidence that with sufficient training, our framework indeed helps
people conduct more effective requirements engineering.
