Abstract:
Identification and generation of Quality Attribute Scenarios (QASs) from Quality Attribute Requirements (QARs) is a critical software engineering technique for defining system specifications and in facilitating development of Software Architecture (SA). Addressing the problem of Quality Attributes comprehension in SA allows a computer to perform tasks that require semantic understanding without the assistance of a person. Detecting QAS components from QAs stated as scenarios is critical for understanding the architectural requirements of a system and producing an architectural design that meets expected qualities. To improve software quality, it is necessary to first determine what types of quality scenarios exist, then generate and value them. However, identifying the type of QASs and extracting its components at hand will be unstructured. Also, it is a challenging and complex task that consumes much time and energy as well as it requires a high budget to dig out the critical QASs components from quality requirements, especially for inexperienced users. To the best of our knowledge, there is no automated tool to generate QASs from QARs. As a result, in this study, we proposed a model for developing automatic QASs identification and generation from QARs. We used Natural Language Processing (NLP) for text processing, and Machine Learning (ML) approaches to classify the type QAS. To generate the QAS components(elements), we have built a Custom Named Entity Recognition (CNER) model. We evaluated the proposed model for identification using five algorithms. Thus, the proposed model with both SVM and SGD scored 97.7 % accuracy, while LR, KNN, and NB scored 96%, 91.6 %, and 88.8%, respectively. Our CNER model scored 92.3% Recall, 93.3% Precision, and 92.8% F1-measure for QAS components generation. As we have observed from our overall identification experimental result, SVM and SGD outperformed NB, LR and KNN classifier algorithms. In general, our proposed model was well identified and generated relevant QASs components under a variety of constraints.