SEApr 12, 2016

Desiree - a Refinement Calculus for Requirements Engineering

arXiv:1604.03184v13 citations
Originality Incremental advance
AI Analysis

This addresses the challenge of improving requirements engineering processes for software development stakeholders, though it appears incremental as it builds on existing refinement calculus concepts.

The paper tackles the problem of transforming informal stakeholder requirements into formal specifications by proposing Desiree, a refinement calculus with operators that systematically strengthen or weaken requirements to reduce incompleteness, ambiguity, and conflicts. Evaluation through empirical studies, including controlled experiments, shows the framework helps people conduct more effective requirements engineering with adequate capture of practical requirements.

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.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes