Assisting requirements analysts to find latent concerns with REAssistant

Rago, A.; Marcos, C.; Diaz-Pace, J.A.

Automated Software Engineering 23(2): 219-252


ISSN/ISBN: 1573-7535
Accession: 081958563

Download citation:  

Article/Abstract emailed within 1 workday
Payments are secure & encrypted
Powered by Stripe
Powered by PayPal

Textual requirements are very common in software projects. However, this format of requirements often keeps relevant concerns (e. g., performance, synchronization, data access, etc.) from the analyst's view because their semantics are implicit in the text. Thus, analysts must carefully review requirements documents in order to identify key concerns and their effects. Concern mining tools based on Nlp techniques can help in this activity. Nonetheless, existing tools cannot always detect all the crosscutting effects of a given concern on different requirements sections, as this detection requires a semantic analysis of the text. In this work, we describe an automated tool called REAssistant that supports the extraction of semantic information from textual use cases in order to reveal latent crosscutting concerns. To enable the analysis of use cases, we apply a tandem of advanced Nlp techniques (e. g, dependency parsing, semantic role labeling, and domain actions) built on the Uima framework, which generates different annotations for the use cases. Then, REAssistant allows analysts to query these annotations via concern-specific rules in order to identify all the effects of a given concern. The REAssistant tool has been evaluated with several case-studies, showing good results when compared to a manual identification of concerns and a third-party tool. In particular, the tool achieved a remarkable recall regarding the detection of crosscutting concern effects.