Details
Original language | English |
---|---|
Title of host publication | GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference |
Pages | 1327-1334 |
Number of pages | 8 |
ISBN (electronic) | 9781450349208 |
Publication status | Published - 2017 |
Publication series
Name | Proceedings 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
- Computer Science(all)
- Software
- Computer Science(all)
- Computer Science Applications
- Computer Science(all)
- Computational Theory and Mathematics
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
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 proceeding › Conference contribution › Research › peer review
}
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 -