摘要:The paper shows an experimental approach tothe selection of a set of software components based oncomputational experiments simulating the desired operatingconditions of the software system being developed. Amathematical model is constructed, aimed at an effectiveselection of components from the available alternative options.The model and process of components selection are introducedand applied to the case of selecting Node.js components for thedevelopment of the Digital Psychological Tools for Conductingthe Large-Scale Psychological Research. The aim of theplatform development is to facilitate the countrywidesimultaneous online psychological surveys in schools in theconditions of unstable Internet connection and the large varietyof desktop and mobile client devices, running differentoperating systems and browsers. The module, whichdevelopment is considered in the paper, should provide thefunctionality for archiving and checksum verification of thesurvey forms and graphical data. With the experimentalapproach proposed in the paper, the effective set of componentswas identified based on evaluations of 14 quality of operationindicators. To simulate the desired operating conditions and toguarantee the reproducibility of the experiments, the virtualinfrastructure was configured, and the genetic algorithm wasapplied to reduce the number of experiments with theunpromising sets of software components. The application ofthe genetic algorithm led to the reproducible results ofcomponents selection after 220 experiments instead of 1080experiments needed by the exhaustive search algorithm. Thesuggested approach can be widely used for effective selection ofsoftware components for distributed systems operating in thegiven conditions at the stage of their development.
关键词:quality of systems and programs; software systems development; frameworks; genetic algorithm; evolutionary computation; computational experiments