The paper considers the software development process as an object of research, which is a poorly structured system. A description of such systems is given in the form of general characteristics, which include: difficulties in building an analytical model; incompleteness, inaccuracy, unreliability and uncertainty of information; benchmarks required for assessing weakly structured systems are often absent; uniqueness of the decision-making process; dynamic nature of models of poorly structured systems, etc. In this paper, the quality assessment of the software development process is considered based on maturity model standards, which can have continuous and discrete variants. The continuous version assesses the quality of the individual focus areas and processes of the maturity models. For this purpose, a discrete point scale of the first type is used, when the assessment is carried out according to an objective criterion. The quality assessment of individual focus areas and processes characterizes the local criteria for assessing the quality of the entire software development process. Therefore, the task is to form some kind of integral quality assessment on their basis. One of the options for solving this problem is a discrete maturity model, where the scale for assessing the entire software development process has five gradations called maturity levels. Starting from the second level, each gradation is characterized by a set of focus areas with corresponding levels of capability. The availability of such a scale allows not only assessing the quality of the entire software development process, but also solving the task of planning to improve its quality. But first, it is necessary to analyse such a scale from the point of view of its balance, namely, that the distances on the scale between the gradations are approximately equal. Therefore, the paper analyses the existing scales that can be proposed for expert assessment for the quality of the software development process. Their construction can be realized on the basis of a utility function using the local criteria of maturity models formalized in this paper. For this purpose, a fundamental property of systems is used. Namely, the dependence of the utility (efficiency) of a complex system on the invested resources over the life cycle interval, which usually takes the form of a logistic curve. Further research will be devoted to using this fact to build a balanced scale for assessing the entire software development process based on maturity models.
Read full abstract