Abstract:
When developing a high-quality software solution for industrial strength real-time systems, the critical software components
are indispensable. For such kinds of systems, compromising the testing time due to market competition, delivery due date and critical
time lines, will lead to hazardous impact to the cost and life of the end users. In particular, this overlooking of such crucial components
will usually happen due to non-identification of them during the analysis and design phases of the software. These critical components
are the ones that have high level of functionality and dependability when compared to other components. If these components are
left untested during testing, the recurrent effects will lead to catastrophic failure. Therefore, it is necessary to devise a mechanism for
discovering such critical components using information gathered early in the early phases of the development process. In this research
work, the application of artificial intelligence techniques and mathematical formal specifications during analysis and design phases of
the software development process are recommended. The identification of such critical components at the early phases of software
development helps in devising rigorous testing process to evaluate such components to avoid field failure. By applying knowledge
graphs that depict the software’s design embedded with design metrics calculated using Object Constraint Language (OCL) based formal
specification in order to classify the criticality level of the components is the major contribution of this proposed work. To achieve this,
a rigorous methodology of multi-level formalization to generate a more precise system specification along with graph embedding using
dependability and complexity metrics associated with each node in the knowledge graph is applied. Finally, a rigorous result analysis is
conducted to ensure that, the proposed work provides promising results for industrial strength applications.