text: Abstract Bad requirements quality can cause expensive consequences during the software development lifecycle, especially if iterations are long and feedback comes late. We aim at a light-weight static requirements analysis approach that allows for rapid checks immediately when requirements are written down. We transfer the concept of code smells to requirements engineering as Requirements Smells . To evaluate the benefits and limitations, we define Requirements Smells, realize our concepts for a smell detection in a prototype called Smella and apply Smella in a series of cases provided by three industrial and a university context. The automatic detection yields an average precision of 59 at an average recall of 82 with high variation. The evaluation in practical environments indicates benefits such as an increase of the awareness of quality defects. Yet, some smells were not clearly distinguishable. Lightweight smell detection can uncover many practically relevant requirements defects in a reasonably precise way. Although some smells need to be defined more clearly, smell detection provides a helpful means to support quality assurance in requirements engineering, for instance, as a supplement to reviews.
  @cite_45: We present a novel technique that automatically alerts authors of requirements to the presence of potentially dangerous ambiguities. We first establish the notion of nocuous ambiguities, which are those that are likely to lead to misunderstandings. We test our approach on coordination ambiguities, which occur when words such as and and or are used. Our starting point is a dataset of ambiguous phrases from a requirements corpus and associated human judgements about their interpretation. We then use heuristics, based largely on word distribution information, to automatically replicate these judgements. The heuristics eliminate ambiguities which people interpret easily, leaving the nocuous ones to be analysed and rewritten by hand. We report on a series of experiments that evaluate our heuristics' performance against the human judgements. Many of our heuristics achieve high precision, and recall is greatly increased when they are used in combination.
  @cite_32: In requirements engineering literature dealing with natural language specifications, we usually find writing rules like ‘avoid passive voice’ or ‘do not use weak words’. Adhering to such rules should result in understandable and unambiguous requirements. Passive voice, especially when used without an explicit actor, is considered to result in incomplete requirements. The usage of weak words is considered to result in imprecise requirements that are hardly testable. But is the inversion of the claim correct, i.e. does the violation of the writing rules result in problematic specifications? At least in our environment (the passenger car development of Mercedes-Benz) we observe that authors often use passive voice, and there are many requirements containing weak words. To answer this question, we conducted an empirical investigation whose results we report in this paper. The results of this investigation are quite surprising: The use of passive voice, even when the actor is missing, is almost never problematic, as the missing information (the actor) can in most cases easily derived from the context (i.e. surrounding requirements or the general project context). The usage of weak words may be considered problematic in approximately 12 of all occurrences. For an automatic analysis on weak words linguistic patterns can be defined to detect these problematic occurences.
summary: First, @cite_45 target the specific grammatical issue of coordination ambiguity (detecting problems of ambiguous references between parts of a sentence), mostly through statistical methods, such as occurrence and co-occurrence of words. In a case study, they report on a precision of their approach mostly between 54 , Krisch and Houdek @cite_32 , focus on the detection of passive voice and so-called weak words. They present their dictionary- and POS-based approach to practitioners and find many false positives, similar to our RQ 3. In average, a precision of 12 approaches focus on very related, but not identical quality violations or smells.