A Framework for Systematized Correction of Requirements Smells through Refactoring Techniques
Natural Language Specification, Requirements Smells, Quality Criteria, Refactoring Techniques
Natural Language Requirements Specification is a common type of documentation used in systems development to contain information about requirements. The quality of this information is important for the success of activities, systems development, and requirements management itself. However, Natural Language can lead to ambiguity and other defects that end up compromising Quality Criteria for information about requirements, such as understanding, clarity, completeness and others. A set of these structural defects were studied by Henning Femmer and named as Requirements Smells. Requirements Smells are anomalies related to problems in writing requirements using Natural Language. Furthermore, these anomalies can occur in any Natural Language Specification template. However, despite the literature containing an expressive amount of studies on the behavior and relationship of Requirements Smells with the quality of requirements, there are no studies on ways of systematized correction in Requirements Smells and how these corrections can help restore/achieve Quality Criteria for requirements specified in Natural Language. The objective of this work is to develop a set of systematized corrections, entitled Refactoring Techniques, to correct Requirements Smells and help to achieve the Quality Criteria. The Refactoring Techniques will be developed following the structure suggested by Martin Fowler, one of the pioneer authors in code refactoring. Experiments will be carried out with participants who will review requirements and identify Requirements Smells and correct these requirements using the proposed Refactoring Techniques. For this, a set of 33 User Stories infected by Requirements Smells will be made available to users. At the end, they will answer questionnaires whose information will be analyzed and understood. It is expected that the Refactoring Techniques developed can be effective in correcting and reaching the Quality Criteria and become another alternative solution for Requirements Smells correction.