Component-Based Software Engineering (CBSE) is gaining popularity in software development due to time and cost limitations. As software applications have become integral to people's lives, developing high-quality and user-friendly applications within a reasonable timeframe and budget has become increasingly challenging. Software development firms frequently use Commercial-Off-The-Shelf (COTS) components to address this challenge and reduce development costs and time. However, selecting appropriate components that meet customer requirements and integrate seamlessly with the target system is a complex task requiring considering the entire software system's quality. This study investigates the critical factors that software industry practitioners and experts must consider when selecting software components. First, the author asked practitioners to identify the most important quality criteria for an online bookstore from a list using subjective judgment and evaluation grades. Then, the study employed the Evidential Reasoning (ER) approach to tackle the multi-level evaluations and information uncertainty associated with software component selection issues. The ER approach's primary features, such as weight normalization, probability assessment, uncertainty management, and utility intervals, offer several benefits for COTS selection problems, including cost and time reduction, improved software reliability, effectiveness, and efficiency. This study assessed the quality criteria for an online bookstore using the ER approach and provided analysis results based on the approach's computational steps. Finally, the study ranked the four components according to their weights, evaluation grades, and belief degrees for selection
Read full abstract