Abstract

Software requirements include description of the features for the target system and express the expectations of users. In the analysis phase, requirements are transformed into easy-to-understand conceptual models that facilitate communication between stakeholders. Although creating conceptual models using requirements is mostly implemented manually by analysts, the number of models that automate this process has increased recently. Most of the models and tools are developed to analyze requirements in English, and there is no study for agglutinative languages such as Turkish or Finnish. In this study, we propose an automatic concept identification model that transforms Turkish requirements into Unified Modeling Language class diagrams to ease the work of individuals on the software team and reduce the cost of software projects. The proposed work is based on natural language processing techniques and a new rule-set containing twenty-six rules is created to find object-oriented design elements from requirements. Since there is no publicly available dataset on the online repositories, we have created a well-defined dataset containing twenty software requirements in Turkish and have made it publicly available on GitHub to be used by other researchers. We also propose a novel evaluation model based on an analytical hierarchy process that considers the experts' views and calculate the performance of the overall system as 89 %. We can state that this result is promising for future works in this domain.

Highlights

  • The software development process has many activities starting from requirements analysis to deployment

  • Since the proposed method requires handling various evaluation criteria, we developed a new evaluation model by applying Analytical hierarchy process (AHP) that allows decision makers to prioritize criteria in order to deal with complex decision making problems [4]

  • Results of AHP regarding feedbacks of the experts indicate that the criteria used for the evaluation of conceptual models may have different weights

Read more

Summary

Introduction

The software development process has many activities starting from requirements analysis to deployment. Requirements analysis is considered as the most important phase in the software development life cycle (SDLC). If a requirements document includes vague statements, it may not be understood clearly by the software team and may cause expensive bugs to be fixed in the phases [2]. These bugs extend the delivery time of the software and increase the total cost of the project. It is important to write clear requirements and convert them to conceptual models that increase the understanding of the users’ needs. The aim of drawing a conceptual model is to map domain information from user’s side to software components on the developer’s side

Methods
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.