A decision model for programming language ecosystem selection: Seven industry case studies

Publication date

2021-11

Authors

Farshidi, SiamakISNI 0000000506313021
Jansen, SlingerORCID 0000-0003-3752-2868ISNI 000000039050399X
Deldar, Mahdi

Editors

Advisors

Supervisors

Document Type

Article
Open Access logo

License

cc_by

Abstract

Context: Software development is a continuous decision-making process that mainly relies on the software engineer's experience and intuition. One of the essential decisions in the early stages of the process is selecting the best fitting programming language ecosystem based on the project requirements. A significant number of criteria, such as developer availability and consistent documentation, in addition to the number of available options in the market, lead to a challenging decision-making process. As the selection of programming language ecosystems depends on the application to be developed and its environment, a decision model is required to analyze the selection problem using systematic identification and evaluation of potential alternatives for a development project. Method: Recently, we introduced a framework to build decision models for technology selection problems in software production. Furthermore, we designed and implemented a decision support system that uses such decision models to support software engineers with their decision-making problems. This study presents a decision model based on the framework for the programming language ecosystem selection problem. Results: The decision model has been evaluated through seven real-world case studies at seven software development companies. The case study participants declared that the approach provides significantly more insight into the programming language ecosystem selection process and decreases the decision-making process's time and cost. Conclusion: With the decision model, software engineers can more rapidly evaluate and select programming language ecosystems. Having the knowledge in the decision model readily available supports software engineers in making more efficient and effective decisions that meet their requirements and priorities. Furthermore, such reusable knowledge can be employed by other researchers to develop new concepts and solutions for future challenges.

Keywords

Decision model, Decision support system, Industry case study, Multi-criteria decision-making, Programming language ecosystem selection, Software production, Software, Information Systems, Computer Science Applications

Citation

Farshidi, S, Jansen, S & Deldar, M 2021, 'A decision model for programming language ecosystem selection : Seven industry case studies', Information and Software Technology, vol. 139, 106640, pp. 1-20. https://doi.org/10.1016/j.infsof.2021.106640