A model for developing dependable system using component-based software development approach / Hasan Kahtan Khalaf Al-Ani - Kahtan Khalaf Al-Ani, Hasan (2014)
Component-based software development (CBSD) is an emerging technology that focuses on building systems by integrating existing software components. The software industry has adopted CBSD to rapidly build and deploy large and complex software systems with enormous savings despite minimal engineering effort, cost, and time. CBSD provides several benefits, such as improved ability to reuse existing codes, reduced development costs of high-quality systems, and shorter development time. However, CBSD encounter issues in terms of security trust mainly in dependability attributes. A system is considered dependable when it can be depended on to produce the consequences for which it was designed, with no adverse effect in its intended environment. Dependability comprises several attributes that imply availability, confidentiality, integrity, reliability, safety, and maintainability. Embedding dependability attributes in CBSD is essential for developing dependable component software. Thus, dependability attributes should be incorporated into the CBSD model. An evaluation method for detecting the vulnerabilities in the software system is vital due to the vulnerabilities presented by existing web application systems. Therefore, this study embarks on three objectives which are, to investigate CBSD and its influence based on dependability attributes, to design a model for developing a dependable system that mitigates the vulnerabilities in software components and to evaluate the proposed model. The model proposed in this study is referred as developing dependable component-based software (2DCBS). A systematic literature review was carried out to investigate related existing studies on CBSD and software security. For the 2DCBS model development, framing the CBSD architectural phases and processes, as well as embedding the six dependability attributes, was performed using the best practise method. Meanwhile, the expert opinion method was applied to evaluate the 2DCBS framing. In addition, an empirical study method was utilized to apply the 2DCBS model to the development of an information communication technology (ICT) portal. Vulnerability assessment tools (VATs) was employed in order to verify the dependability attributes of the developed ICT portal, whereas, semi-markov process (SMP) was considered as well to validate the dependable behaviour of the developed ICT portal. Results show that the 2DCBS model can be adopted to develop web application systems and mitigate the vulnerabilities in the developed systems. The results also show that the SMP can model the dependable behaviour of the developed system. This study contributes to CBSD, which allows the specification and evaluation of the dependability attributes throughout the model development. Furthermore, the reliability of the dependable model can increase the confidence of using CBSD in industries.