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

被引:16
作者
Farshidi, Siamak [1 ]
Jansen, Slinger [2 ,3 ]
Deldar, Mahdi [4 ]
机构
[1] Univ Amsterdam, Informat Inst, Amsterdam, Netherlands
[2] Univ Utrecht, Dept Informat & Comp Sci, Utrecht, Netherlands
[3] Lappeenranta Univ Technol, Dept Comp Sci, Lappeenranta, Finland
[4] Data Kavosh Software, Tehran, Iran
关键词
Programming language ecosystem selection; Decision model; Industry case study; Software production; Multi-criteria decision-making; Decision support system; SUPPORT-SYSTEM; SOFTWARE; SCIENCE; SIMULATION;
D O I
10.1016/j.infsof.2021.106640
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
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.
引用
收藏
页数:20
相关论文
共 77 条
[1]  
[Anonymous], 1999, Encyclopedia of Electrical and Electronics Engineering
[2]  
[Anonymous], 2017, Decis. Sci. Lett, DOI DOI 10.5267/J.DSL.2016.11.002
[3]  
[Anonymous], 2014, P 1 INT WORKSHOP RAP, DOI [10.1145/2593812.2593813, DOI 10.1145/2593812.2593813]
[4]  
[Anonymous], 2019, INFORM SOFTWARE TECH, V139
[5]   A decision-making process-line for selection of software asset origins and components [J].
Badampudi, Deepika ;
Wnuk, Krzysztof ;
Wohlin, Claes ;
Franke, Ulrik ;
Smite, Darja ;
Cicchetti, Antonio .
JOURNAL OF SYSTEMS AND SOFTWARE, 2018, 135 :88-104
[6]  
Bhattacharya P, 2011, 2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), P171, DOI 10.1145/1985793.1985817
[7]   Popularity, Interoperability, and Impact of Programming Languages in 100,000 Open Source Projects [J].
Bissyande, Tegawende F. ;
Thung, Ferdian ;
Lo, David ;
Jiang, Lingxiao ;
Reveillere, Laurent .
2013 IEEE 37TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), 2013, :303-312
[8]  
Burge J.E., 2008, Rationale-Based Software Engineering
[9]  
Carvallo J.P., 2006, P INT WORKSHOP SOFTW, P9, DOI DOI 10.1145/1137702.1137706
[10]   Fuzzy multi-criteria selection of object-oriented simulation software for production system analysis [J].
Cochran, JK ;
Chen, HN .
COMPUTERS & OPERATIONS RESEARCH, 2005, 32 (01) :153-168