Active coevolutionary learning of requirements specifications from examples.

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Authors

Research Organisations

View graph of relations

Details

Original languageEnglish
Title of host publicationGECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference
Pages1327-1334
Number of pages8
ISBN (electronic)9781450349208
Publication statusPublished - 2017

Publication series

NameProceedings of the Genetic and Evolutionary Computation Conference

Abstract

Within software engineering, requirements engineering starts from imprecise and vague user requirements descriptions and infers precise, formalized specifications. Techniques, such as interviewing by requirements engineers, are typically applied to identify the user's needs. We want to partially automate even this first step of requirements elicitation by methods of evolutionary computation. The idea is to enable users to specify their desired software by listing examples of behavioral descriptions. Users initially specify two lists of operation sequences, one with desired behaviors and one with forbidden behaviors. Then, we search for the appropriate formal software specification in the form of a deterministic finite automaton. We solve this problem known as grammatical inference with an active coevolutionary approach following Bongard and Lipson [2]. The coevolutionary process alternates between two phases: (A) additional training data is actively proposed by an evolutionary process and the user is interactively asked to label it; (B) appropriate automata are then evolved to solve this extended grammatical inference problem. Our approach leverages multi-objective evolution in both phases and outperforms the state-of-the-art technique [2] for input alphabet sizes of three and more, which are relevant to our problem domain of requirements specification.

Keywords

    Co-evolution, Interactive evolution, Multi-objective optimization, Software engineering

ASJC Scopus subject areas

Cite this

Active coevolutionary learning of requirements specifications from examples. / Wever, Marcel; Rooijen, Lorijn van; Hamann, Heiko.
GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference. 2017. p. 1327-1334 (Proceedings of the Genetic and Evolutionary Computation Conference).

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Wever, M, Rooijen, LV & Hamann, H 2017, Active coevolutionary learning of requirements specifications from examples. in GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference. Proceedings of the Genetic and Evolutionary Computation Conference, pp. 1327-1334. https://doi.org/10.1145/3071178.3071258
Wever, M., Rooijen, L. V., & Hamann, H. (2017). Active coevolutionary learning of requirements specifications from examples. In GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference (pp. 1327-1334). (Proceedings of the Genetic and Evolutionary Computation Conference). https://doi.org/10.1145/3071178.3071258
Wever M, Rooijen LV, Hamann H. Active coevolutionary learning of requirements specifications from examples. In GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference. 2017. p. 1327-1334. (Proceedings of the Genetic and Evolutionary Computation Conference). doi: 10.1145/3071178.3071258
Wever, Marcel ; Rooijen, Lorijn van ; Hamann, Heiko. / Active coevolutionary learning of requirements specifications from examples. GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference. 2017. pp. 1327-1334 (Proceedings of the Genetic and Evolutionary Computation Conference).
Download
@inproceedings{40ba6ed3ad0a4a1980b1368426b9aef0,
title = "Active coevolutionary learning of requirements specifications from examples.",
abstract = "Within software engineering, requirements engineering starts from imprecise and vague user requirements descriptions and infers precise, formalized specifications. Techniques, such as interviewing by requirements engineers, are typically applied to identify the user's needs. We want to partially automate even this first step of requirements elicitation by methods of evolutionary computation. The idea is to enable users to specify their desired software by listing examples of behavioral descriptions. Users initially specify two lists of operation sequences, one with desired behaviors and one with forbidden behaviors. Then, we search for the appropriate formal software specification in the form of a deterministic finite automaton. We solve this problem known as grammatical inference with an active coevolutionary approach following Bongard and Lipson [2]. The coevolutionary process alternates between two phases: (A) additional training data is actively proposed by an evolutionary process and the user is interactively asked to label it; (B) appropriate automata are then evolved to solve this extended grammatical inference problem. Our approach leverages multi-objective evolution in both phases and outperforms the state-of-the-art technique [2] for input alphabet sizes of three and more, which are relevant to our problem domain of requirements specification.",
keywords = "Co-evolution, Interactive evolution, Multi-objective optimization, Software engineering",
author = "Marcel Wever and Rooijen, {Lorijn van} and Heiko Hamann",
note = "Publisher Copyright: {\textcopyright} 2017 ACM.",
year = "2017",
doi = "10.1145/3071178.3071258",
language = "English",
series = "Proceedings of the Genetic and Evolutionary Computation Conference",
pages = "1327--1334",
booktitle = "GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference",

}

Download

TY - GEN

T1 - Active coevolutionary learning of requirements specifications from examples.

AU - Wever, Marcel

AU - Rooijen, Lorijn van

AU - Hamann, Heiko

N1 - Publisher Copyright: © 2017 ACM.

PY - 2017

Y1 - 2017

N2 - Within software engineering, requirements engineering starts from imprecise and vague user requirements descriptions and infers precise, formalized specifications. Techniques, such as interviewing by requirements engineers, are typically applied to identify the user's needs. We want to partially automate even this first step of requirements elicitation by methods of evolutionary computation. The idea is to enable users to specify their desired software by listing examples of behavioral descriptions. Users initially specify two lists of operation sequences, one with desired behaviors and one with forbidden behaviors. Then, we search for the appropriate formal software specification in the form of a deterministic finite automaton. We solve this problem known as grammatical inference with an active coevolutionary approach following Bongard and Lipson [2]. The coevolutionary process alternates between two phases: (A) additional training data is actively proposed by an evolutionary process and the user is interactively asked to label it; (B) appropriate automata are then evolved to solve this extended grammatical inference problem. Our approach leverages multi-objective evolution in both phases and outperforms the state-of-the-art technique [2] for input alphabet sizes of three and more, which are relevant to our problem domain of requirements specification.

AB - Within software engineering, requirements engineering starts from imprecise and vague user requirements descriptions and infers precise, formalized specifications. Techniques, such as interviewing by requirements engineers, are typically applied to identify the user's needs. We want to partially automate even this first step of requirements elicitation by methods of evolutionary computation. The idea is to enable users to specify their desired software by listing examples of behavioral descriptions. Users initially specify two lists of operation sequences, one with desired behaviors and one with forbidden behaviors. Then, we search for the appropriate formal software specification in the form of a deterministic finite automaton. We solve this problem known as grammatical inference with an active coevolutionary approach following Bongard and Lipson [2]. The coevolutionary process alternates between two phases: (A) additional training data is actively proposed by an evolutionary process and the user is interactively asked to label it; (B) appropriate automata are then evolved to solve this extended grammatical inference problem. Our approach leverages multi-objective evolution in both phases and outperforms the state-of-the-art technique [2] for input alphabet sizes of three and more, which are relevant to our problem domain of requirements specification.

KW - Co-evolution

KW - Interactive evolution

KW - Multi-objective optimization

KW - Software engineering

UR - http://www.scopus.com/inward/record.url?scp=85026422185&partnerID=8YFLogxK

U2 - 10.1145/3071178.3071258

DO - 10.1145/3071178.3071258

M3 - Conference contribution

T3 - Proceedings of the Genetic and Evolutionary Computation Conference

SP - 1327

EP - 1334

BT - GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference

ER -

By the same author(s)