Abstract
Goal models play a significant role in the early stages of the requirements engineering process. These models are subject to quality problems (a.k.a., bad smells) that may disseminate to the later stages of the requirements engineering process and even to the other stages in software development. To avoid this negative impact, it is important to detect and correct these problems as early as possible. However, the manual detection of these smells is generally tedious, cumbersome, and error-prone. In this paper, we report on an Eclipse plugin tool, called GSDetector (GRL Smells Detector), that automates the detection of Goal-oriented Requirements Language (GRL) bad smells. We first introduce and articulate four new GRL-based bad smells. To detect the instances of these smells, a set of metric-based rules is introduced. Factors that affect setting thresholds are also presented and explained to help modelers specify these rules by setting effective thresholds. GSDetector was evaluated using 5 case studies of different sizes that consider the different scenarios in building GRL models. The obtained results show that GSDetector was able to detect all the existing instances of bad smells with respect to the specified thresholds. The manual inspection of these instances revealed that the modelers were giving the system to be developed more attention than the strategic needs of the stakeholder leading to the appearance of these instances. In conclusion, the proposed bad smells and developed tool provide a useful approach to help identify and analyze quality improvement opportunities in GRL models.
Original language | English |
---|---|
Pages (from-to) | 889-910 |
Number of pages | 22 |
Journal | International Journal on Software Tools for Technology Transfer |
Volume | 24 |
Issue number | 6 |
DOIs | |
State | Published - Dec 2022 |
Bibliographical note
Publisher Copyright:© 2022, The Author(s), under exclusive licence to Springer-Verlag GmbH Germany, part of Springer Nature.
Keywords
- Bad smells
- GRL
- GSDetector
- Goal models
ASJC Scopus subject areas
- Software
- Information Systems