6 research outputs found
Why and How to Extract Conditional Statements From Natural Language Requirements
Functional requirements often describe system behavior by relating events to each other, e.g. "If the system detects an error (e_1), an error message shall be shown (e_2)". Such conditionals consist of two parts: the antecedent (see e_1) and the consequent (e_2), which convey strong, semantic information about the intended behavior of a system. Automatically extracting conditionals from texts enables several analytical disciplines and is already used for information retrieval and question answering. We found that automated conditional extraction can also provide added value to Requirements Engineering (RE) by facilitating the automatic derivation of acceptance tests from requirements. However, the potential of extracting conditionals has not yet been leveraged for RE. We are convinced that this has two principal reasons:
1) The extent, form, and complexity of conditional statements in RE artifacts is not well understood. We do not know how conditionals are formulated and logically interpreted by RE practitioners. This hinders the development of suitable approaches for extracting conditionals from RE artifacts.
2) Existing methods fail to extract conditionals from Unrestricted Natural Language (NL) in fine-grained form. That is, they do not consider the combinatorics between antecedents and consequents. They also do not allow to split them into more fine-granular text fragments (e.g., variable and condition), rendering the extracted conditionals unsuitable for RE downstream tasks such as test case derivation.
This thesis contributes to both areas. In Part I, we present empirical results on the prevalence and logical interpretation of conditionals in RE artifacts. Our case study corroborates that conditionals are widely used in both traditional and agile requirements such as acceptance criteria. We found that conditionals in requirements mainly occur in explicit, marked form and may include up to three antecedents and two consequents. Hence, the extraction approach needs to understand conjunctions, disjunctions, and negations to fully capture the relation between antecedents and consequents. We also found that conditionals are a source of ambiguity and there is not just one way to interpret them formally. This affects any automated analysis that builds upon formalized requirements (e.g., inconsistency checking) and may also influence guidelines for writing requirements.
Part II presents our tool-supported approach CiRA capable of detecting conditionals in NL requirements and extracting them in fine-grained form. For the detection, CiRA uses syntactically enriched BERT embeddings combined with a softmax classifier and outperforms existing methods (macro-F_1: 82%). Our experiments show that a sigmoid classifier built on RoBERTa embeddings is best suited to extract conditionals in fine-grained form (macro-F_1: 86%). We disclose our code, data sets, and trained models to facilitate replication. CiRA is available at http://www.cira.bth.se/demo/.
In Part III, we highlight how the extraction of conditionals from requirements can help to create acceptance tests automatically. First, we motivate this use case in an empirical study and demonstrate that the lack of adequate acceptance tests is one of the major problems in agile testing. Second, we show how extracted conditionals can be mapped to a Cause-Effect-Graph from which test cases can be derived automatically. We demonstrate the feasibility of our approach in a case study with three industry partners. In our study, out of 578 manually created test cases, 71.8% can be generated automatically. Furthermore, our approach discovered 80 relevant test cases that were missed in manual test case design. At the end of this thesis, the reader will have an understanding of (1) the notion of conditionals in RE artifacts, (2) how to extract them in fine-grained form, and (3) the added value that the extraction of conditionals can provide to RE
Shifting Interfaces: art research at the intersections of live performance and technology
Merged with duplicate record 10026.1/809 on 08.20.2017 by CS (TIS)This collection of published works is an outcome of my practice-led inter-disciplinary
collaborative artistic research into deepening understanding of creative process in
the field of contemporary dance. It comprises thirty written works published from
1999 to 2007 in various formats and platforms. This collection is framed by a
methodological discussion that provides insight into how this research has
intersected over time with diverse fields of practice including contemporary dance,
digital and new media arts and non-art domains such as cognitive and social
science. Fields are understood in the context of this research to be largely
constituted out of the expert practices of individual collaborators.
This research starts from an interest in the Impact of new media technologies on
dance making/ choreography. The collection of works show evidence, established in
the first two publications, of an evolving engagement with two concepts related to
this interest: (1) the 'algorithm' as a process-level connection or bridge between
dance composition and computation; (2) the empirical study of movement
embedded as a 'knowledge base' in the practices of both computer animation and
dance and thus forming a special correspondence between them.
This collection provides evidence of this research through a period of community-building
amongst artists using new media technologies in performance, and
culminates in the identification of an emerging 'community of practice' coming
together around the formation of a unique body of knowledge pertaining to dance.
The late 1990s New Media Art movement provided a supportive context for
Important peer-to-peer encounters with creators and users of software tools and
platforms in the context of inter-disciplinary art-making. A growing interest in
software programming as a creative practice opened up fresh perspectives on
possible connections with dance making. It became clear that software's utility
alone, including artistic uses of software, was a limited conception.
This was the background thinking that informed the first major shift in the research
towards the design of software that might augment the creative process of expert
choreographers and dancers. This shift from software use to its design, framed by a
focus on the development of tools to support dance creation, also provided strong
rationale to deepen the research into dance making processes. In the second major
phase of the research presented here, scientific study is brought collaboratively to
bear on questions related to choreographic practice. This lead to a better
understanding of ways in which dancers and choreographers, as 'thinking bodies',
interact with their design tools and each other in the context of creation work.
In addition to this collection, outcomes of this research are traceable to other
published papers and art works it has given rise to. Less easily measureable, but
just as valuable, are the sustained relations between individuals and groups behind
the 'community of practice' now recognised for its development of unique formats for
bringing choreographic ideas and processes into contact, now and in the future, with
both general audiences and other specialist practices