Applied Sciences (May 2023)
On Fuzzy and Case-Based Dynamic Software Development Process Modeling and Simulation Approach
Abstract
The software development process (SDP) is complex because it uses specific knowledge, skills, tools, and techniques to deliver value to people, and the user’s needs are always growing and becoming more complex. Practitioners and academics have proposed different approaches for improving the successful implementation of the SDP. This remains a non-trivial task, and the number of successful software development projects increases only slightly each year. This paper proposes a new approach for adapting the classical SDP to a dynamic, knowledge-intensive, and context-dependent model by applying the case-handling and fuzzy inference approaches for SDP modeling and simulation. The advantages and novelties of this approach consist in: SDP dynamicity modeling using the case-handling approach; the inclusion of human factor uncertainty into the execution of SDP activities through fuzzification; and agent-based simulation, which allows for the inclusion of human actors in SDP simulations. Modeling and simulation of Agile SDPs were carried out using this prototype. Experiments show the correspondence of the proposed approach to the needs of dynamically changing and human-factor-dependent SDPs, as well as the possibilities for modeling and simulating the SDP, predicting SDP execution, and observing possible risks.
Keywords