Details
Originalsprache | Englisch |
---|---|
Seiten (von - bis) | 165-193 |
Seitenumfang | 29 |
Fachzeitschrift | Evolutionary computation |
Jahrgang | 28 |
Ausgabenummer | 2 |
Publikationsstatus | Veröffentlicht - 2019 |
Extern publiziert | Ja |
Abstract
In software engineering, the imprecise requirements of a user are transformed to a formal requirements specification during the requirements elicitation process. This process is usually guided by requirements engineers interviewing the user. We want to partially automate this first step of the software engineering process in order to enable users to specify a desired software system on their own. With our approach, users are only asked to provide exemplary behavioral descriptions. The problem of synthesizing a requirements specification from examples can partially be reduced to the problem of grammatical inference, to which we apply an active coevolutionary learning approach. However, this approach would usually requiremany feedback queries to be sent to the user. In this work, we extend and generalize our active learning approach to receive knowledge from multiple oracles, also known as proactive learning. The “user oracle” represents input received from the user and the “knowledge oracle” represents available, formalized domain knowledge. We call our two-oracle approach the “first apply knowledge then query” (FAKT/Q) algorithm.We compare FAKT/Q to the active learning approach and provide an extensive benchmark evaluation. As result we find that the number of required user queries is reduced and the inference process is sped up significantly. Finally, with so-called On-The-Fly Markets, we present a motivation and an application of our approach where such knowledge is available.
ASJC Scopus Sachgebiete
- Mathematik (insg.)
- Computational Mathematics
Zitieren
- Standard
- Harvard
- Apa
- Vancouver
- BibTex
- RIS
in: Evolutionary computation, Jahrgang 28, Nr. 2, 2019, S. 165-193.
Publikation: Beitrag in Fachzeitschrift › Artikel › Forschung › Peer-Review
}
TY - JOUR
T1 - Multioracle coevolutionary learning of requirements specifications from examples in on-the-fly markets
AU - Wever, Marcel
AU - Van Rooijen, Lorijn
AU - Hamann, Heiko
N1 - Publisher Copyright: © 2019 Massachusetts Institute of Technology.
PY - 2019
Y1 - 2019
N2 - In software engineering, the imprecise requirements of a user are transformed to a formal requirements specification during the requirements elicitation process. This process is usually guided by requirements engineers interviewing the user. We want to partially automate this first step of the software engineering process in order to enable users to specify a desired software system on their own. With our approach, users are only asked to provide exemplary behavioral descriptions. The problem of synthesizing a requirements specification from examples can partially be reduced to the problem of grammatical inference, to which we apply an active coevolutionary learning approach. However, this approach would usually requiremany feedback queries to be sent to the user. In this work, we extend and generalize our active learning approach to receive knowledge from multiple oracles, also known as proactive learning. The “user oracle” represents input received from the user and the “knowledge oracle” represents available, formalized domain knowledge. We call our two-oracle approach the “first apply knowledge then query” (FAKT/Q) algorithm.We compare FAKT/Q to the active learning approach and provide an extensive benchmark evaluation. As result we find that the number of required user queries is reduced and the inference process is sped up significantly. Finally, with so-called On-The-Fly Markets, we present a motivation and an application of our approach where such knowledge is available.
AB - In software engineering, the imprecise requirements of a user are transformed to a formal requirements specification during the requirements elicitation process. This process is usually guided by requirements engineers interviewing the user. We want to partially automate this first step of the software engineering process in order to enable users to specify a desired software system on their own. With our approach, users are only asked to provide exemplary behavioral descriptions. The problem of synthesizing a requirements specification from examples can partially be reduced to the problem of grammatical inference, to which we apply an active coevolutionary learning approach. However, this approach would usually requiremany feedback queries to be sent to the user. In this work, we extend and generalize our active learning approach to receive knowledge from multiple oracles, also known as proactive learning. The “user oracle” represents input received from the user and the “knowledge oracle” represents available, formalized domain knowledge. We call our two-oracle approach the “first apply knowledge then query” (FAKT/Q) algorithm.We compare FAKT/Q to the active learning approach and provide an extensive benchmark evaluation. As result we find that the number of required user queries is reduced and the inference process is sped up significantly. Finally, with so-called On-The-Fly Markets, we present a motivation and an application of our approach where such knowledge is available.
KW - Coevolution
KW - Grammatical inference
KW - Multiobjective optimization
KW - Multioracle
KW - Proactive learning
KW - Requirements specification
KW - Search-based software engineering
UR - http://www.scopus.com/inward/record.url?scp=85085712610&partnerID=8YFLogxK
U2 - 10.1162/evco_a_00266
DO - 10.1162/evco_a_00266
M3 - Article
C2 - 31730371
AN - SCOPUS:85085712610
VL - 28
SP - 165
EP - 193
JO - Evolutionary computation
JF - Evolutionary computation
SN - 1063-6560
IS - 2
ER -