Model for Optimizing the Structure of a Multi-Version Software Under Resource Requirements and Timing Constraints
摘要
This article presents a mathematical optimization model for the structure of multi-version software, taking into account complex constraints on resources, execution time, and cost. Existing approaches to forming multi-version software often use simplified models of resource constraints and require known maintenance intervals for each task, which does not correspond to real operating conditions of software complexes. The work proposes a two-level structural model of the software complex, which allows simplifying the process of visual design and converting it into a single-level one for algorithmic processing. A detailed formalization of the problem has been developed, including matrices of task and module connectivity, vectors of sequence and sequence paths, as well as vectors of temporal deployment for modules and resources. The proposed resource usage model considers three types of resources: active (computational), passive (information storage), and transport (data transmission), which allows for more accurate modeling of real software operation conditions. An optimization criterion is formulated as maximizing the reliability of the software complex, taking into account time, resource, and cost constraints. The developed model provides a theoretical basis for building effective algorithms for optimizing the version composition of multi-version software.