Critical Success Factors of Component-Based Software Outsourcing Development From Vendors’ Perspective: A Systematic Literature Review

Component-Based Software Development (CBSD) is a very demanding approach for developing complex products or systems. In CBSD, software or product is creating from reusable pieces of components. With the help of CBSD, a complex system or software is developed with high quality, security, and within limited time and cost. However, this research will convince the outsourcing vendor organization to adopt the component software development using the CBSD approaches. A Systematic Literature Review (SLR) is used to extract all the possible success factors regarding CBSD that have positively impact software outsourcing vendor organization. The identified success factors comprise ‘Well Trained and Skilled Team’; ’ Proper Selection of Components’; ’ Using Standard for Designing’; ’ Well defined Architecture’; ’ Proper Testing and Analysis; ’ Efficient Integration’; ’ Quality Assurance’; ’ Proper Documentation’; ’well-organized security’; ’ Trusted and Certified.’ This research paper is also identifying the differences and similarities of success factors in various continents. This research paper is also convincing the software outsourcing vendor organization to adopt the concept of CBSD. The proposed method has analyzed the identified challenges continent-wise using the Chi-Square test to determine the significant difference.


I. INTRODUCTION
Software development organizations are increasing dependency on the third organization to develop more complex systems or software due to financial and time to market concerns. Components of the third organization will become integrated as per client requirements and such components are well-organized, independent, high quality, and well secure. This type of methodology is known as CBSD [1].
Many researchers have made efforts to create a software system within time and cost. Component-based software engineering is a popular and widely recognized approach due to these efforts and code reuse (software The associate editor coordinating the review of this manuscript and approving it for publication was Ricardo Colomo-Palacios. artifacts). CBSE is a paradigm shift from traditional software development [2].
Software organizations can achieve many perceived opportunities from CBSD or due to traditional software development limitations. That's why many software outsourcing vendor organizations have adopted the concept of CBSD. There are following some known benefits of CBSD [2]: • Cost-saving. • It reduced completion time.
• Hight Skill professional Access. • Replace of component, not an overall effective system. CBSD is based on the idea of components reusability. Reusability is the essential aspect that reduces the existing developed components by reusing cost, time, and software development risk. If a component has no reusability ability, then the whole concept of the CBSD fails. In the second definition, reusability is the quality of any component which further used again with slight or no modification [3]. Software reuse creates a software system from existing software components rather than building them from scratch. Reusability is the quality factor of the software that identifies to be used again in another application or partially modified [4].
CBSD is a new approach in software engineering in which complex software systems are built with reusable components. It is easy to improve and modify the software system by replacing/changing only that component and not affecting other systems [5]. CBSD is a popular technology for getting more robust, more complete software. CBSD removes a copy of hard work, minimizes development price, reduces development time, and gets more out of the amount produced [6]. The idea of CBSE is not new, but it was explored more than forty years ago by Mcllroy et al. [7], who addressed the picture in the form of marketable component assembly; the same also appears in other engineering fields.
CBSD is also known as component-based software engineering, wherein the application has developed systematically with the available components in a shorter time to market, increased quality, maintainability, and scalability. The component-based software development provides global access to high-quality component stores with coordination between buyers (i.e., application developers) and sellers by exchanging components.
Software Outsourcing is the export of software projects, small software modules, resources, or activity in a scattered environment. Outsourcing has become a standard business model after the international economy of the twenty-first century, and recently many large organizations have outsourced all or some of their software development (SD) works to abroad developers [8].
IT outsourcing is a popular pervasive trend nowadays. In one report, IS/IT outsourcing was approximately more than $260 billion in 2018, and over 94% of the 'Fortune 500' companies are outsourcing at least a significant business function [9].
The proposed method has formulated the following research questions which need to address in this study.
RQ1. What are the success factors that have a positive impact on software outsourcing vendor organizations in adapting the concept of a component-based approach in software development?
RQ2. Are the identified challenges varying from continent to continent?

II. BACKGROUND
Many Software Engineers face issues of time, cost, and complexity during traditional software development because all components were built within one organization, due to which it takes more time as well as high price. Complexity is another issue in traditional software development because it is difficult to manage all system components within the limited resources like experts, engineers, time, cost, etc. CBSE is a solution to eliminate the drawback of traditional software development by increasing productivity, maintainability and reducing the development time and cost [10].
The component has a different definition which states the varieties of properties of the software component. However, all the software engineering community agrees that a software component is a services provider, and it has two parts: one is an interface, and the second is a body. The component interface is visible for the CBSS developer and tester and contains the resources and elements, i.e., properties, procedures, and actions. The body of the component is those part that is not visible to developers [11].
The CBSD is used in software development and its roots in manufacturing, i.e., automotive, electronics, aircraft, and other manufacturing types of industries. The componentbased system has two parts: (1) components and (2) interface. (Ulrich and Eppinger 2000).
The CBSD has global access to extensive components and interrelates in trading components between buyers. For this reason, reuse-driven component-based software engineering becomes ineffective with the available components in markets. Many forecasts use this concept to unfold quickly and posthaste both in significance and size [2].
Component-based software engineering is the method of integration of components. Integration of components means merging two or more software components into one system or subsystem [12]. In this paper, the term components mean that only ''software components'' are used [13] as ''A software component is a unit of composition with contractually specified interfaces and context dependencies only.'' The practice of COTS(commercial of shelf) components has boosted the importance of software CBD (componentbased developments). The elevation of JavaBean/EJB, CORBA (28), and COM/COM+/DCOM/.NET (29) also enhanced the power of CBD.
In software development, the overall results of a software system have been dependent on the integration phase of software development. According to Lorson [14], the merging of components integration is used by developing a complex software system or subsystem. Integration is the first phase of software development that allows the organization to check the system's performance and functionality. Hence, integration is a crucial phase of the software development process.
CBSD is a collection of application and component engineering. However, one of the most curial problems for successful CBSD is its reliability estimation. The term reliability can be defined as the ''Probability of a system to perform its function correctly for a specified period.'' Traditional methods for estimating reliability cannot be applied to componentbased software (CBS) applications [1].
Bauer and Fritz have addressed that CBSD is based on the principle of ''Buy not builds''. They have identified that assembly of components to developed a software system is better than developing software. The developer may need some components, to develop at the location where they are VOLUME 10, 2022 required, but many of them are purchased from outsourcing organizations [15].
Tiwari and Partha have highlighted in their research that components which integrated to make a component bases software system must have the following few characteristics to deserve the qualities of the components: • Functionality: It can enact the requisites operation or function by the components [16].
• Maintainability: It is the ability to assist with modification, corrections, changeability, and improvements, etc., as or as per user needs [16].
• Usability: It is the power of components used in different types of software applications [16].
• Efficiency: The efficiency of the component is the utilization of all resources with limited time [16].
• Reliability: It can satisfy user needs and reward all the time constraints [17]. The proposed method has found the success factors of CBSD through Systematic literature review. The factors including less development time, less development cost, high secure component, etc. According to the literature review, none of the research uses the success factors of CBSD that have a positive impact on outsourcing vendor organizations in adopting the concept of Component Based Software Development (CBSD). In the first phase of this research study, the proposed method has identified the success factors through SLR that positively impact outsourcing vendor organizations in adopting the concept of CBSD. In the second phase, we have identified challenges varying from continent to continent.

III. RESEARCH METHOD
The proposed method has used SLR to find the success factors of CBSD [18]. The proposed method has taken a similar step as [19], [18]. SLR is a new way to recognize, calculate, and produce the available evidence regarding a particular technology to identify the recent direction and grade of research and to investigate research question(s)/hypotheses [19]. SLR follows a systematically evaluated procedure as different from an ordinary literature survey. It's used a pre-defined search string based on the research question to identify the relevant literature. The results achieved through SLR are precise, consistent, and unbiased than a regular literature review. SLR has three phases, i.e., the planning phase, conducting phase, and reporting phase.
The proposed method has already furnished the conducting and planning phase of SLR. The primary purpose of this paper is to present the result obtained through conducting phase of the SLR, which shows the success factors of CBSD in outsourcing vendor organizations. Twelve (12) success factors are identified using SLR, while ten (10) success factors.

A. SEARCH PROCESS AND PRACTICES
The proposed method has performed the planning phase, which is based on the following: • Based on population, intervention, and outcomes, first defined search term.
• Identify the substitute spelling and synonyms.
• Authenticate the keywords of a search term in the relevant literature.
• For specific searches, use the Boolean operators (OR, AND) to guide the search engine. The proposed method has conducted the initial search to search the relevant resources. The proposed method has primarily made a trial search string that is further used in different digital libraries. In this paper, the following digital libraries are used: The output of the trial, as mentioned earlier, term string, is not satisfactory. Therefore, it is needed to develop a search term for the research question according to the search term construction strategy, which is already mentioned in this paper. After the trial search, the final search string is developed to access the most relevant research papers. The preliminary list of databases and identical search terms are searched within similar studies. Each database has its syntax formats for the search terms; in the proposed paper, various databases, relevant journals, books, and conference proceedings to obtain a more accurate and wide range of articles.
All relevant material is searched based on the above final search string and the result is shown in Tab. 1. The initial search results are shown in Tab. 1 like Google Scholar (2839), IEEE Xplore (56), SpringerLink (9209), ACM (453), ScienceDirect (10), and Cite Seer (14). The primary selection selects the relevant papers to our research questions, based on the paper title, abstract, and conclusion, and as a result 411 papers are found. Consequently, the proposed method has studied the primary selection papers in more detail, because some papers are not included in the final selection due to low quality. Hence, the proposed method has found 91 papers in the final selection. The detailed list of sources searched and publications found has shown in Tab. 1. The inclusion criteria phase of this paper is to include those pieces of the literature directly related to our research questions. Our inclusion criteria are based on the following study: • Software Outsourcing vendor organization. • Requirement of software outsourcing vendor organization in CBSD perspective.
• Facilitation for SOVO in respect of CBSD.
• Papers are written in English only.

2) EXCLUSION CRITERIA
This paper's exclusion criteria phase ignores the literature that is not occurring in our research questions domain. The exclusion criteria of this paper are as follows: • Not related to CBSD.
• Not matched with the research questions.
• Not relevant to software outsourcing from a CBSD perspective.
• Those papers in which critical success factors or success factors of CBD are not mentioned.
• Those papers which title does not match with our research questions.
• Those papers whose abstract is not matching to our search questions.
• Those papers which keywords are not matching to our search questions.
• Those papers are not written in the English language.

C. ASSESSMENT OF PUBLICATION QUALITY
The paper's quality is measured after the final selection of the paper in parallel to the data extraction phase. It will be measured on the following questions.
• Does the author identify the success factors of the CBSD that positively impact the outsourcing vendor organization?
• Which practices of the CBSD are adopted by the author. The question mentioned above will be marked as ''Y'' means yes, and ''N'' means no for quality publication.

IV. DATA EXTRACTION
Data Extraction from literature is the responsibility of the primary reviewer. Suppose the primary reviewer faces any issue in the data extraction process and eliminates the researcher's bias. In that case, the secondary reviewer will give proper guidance, and the primary review will do accordingly. The responsibility of the secondary reviewer is to select literature randomly from the current literature assemble by the primary reviewer. If there is any mismatch in the primary reviewer's result regarding secondary reviewer results, the secondary reviewer should be properly guiding the primary reviewer.
The secondary reviewer has been selected ten papers randomly from the extracted papers. The result is compared with the result of the primary reviewer and found the same.
The proposed method has studied every paper that has been selected for primary study. The proposed method extracted the list of factors that positively impact software outsourcing vendor organizations by using CBSD from each paper.

V. DATA SYNTHESIS
Both the reviewer performed the data synthesis phase carefully. The proposed method studied 91 papers, and the data is extracted from those papers. The proposed method creates different groups of success factors based on the extracted data from 91 papers, and 13 total success factors are found. For validation and verification, the proposed method has consulate with the external reviewer who further suggested that the two groups, ''specific domain component and welldefined structure,'' form a single group, '' Well defined Architecture.'' Finally, a list of 12 success factors is identified, as shown in Table. 2.

A. CSFS OF CBSD FOR SOFTWARE OUTSOURCING VENDOR ORGANIZATION
For RQ1, the proposed method identified 12 success factors through systematic literature review (SLR) mentioned in Tab. 2. The aim is to identify all those success factors through SLR that play a significant role in convincing the software outsourcing vendor organization to adopt the concept of CBSD. The proposed method has declared ten success factors as Critical Success factors (CSFs) out of 12 identified through SLR, as discussed in section 3. The frequency of CSFs is more than 20 and marked as critical, and the same practices have also been found in other researchers [20].
Tab. 3 shows that the ''Well Trained and Skill team'' is the most significant success factor amongst the identified list of success factors. Training should be arranged for team members to follow the organization's processes, rewards for effective reuse performance, and reuse throughout the organization [21]. Business-oriented issues occur due to a lack of funding for education, training, access to vendor-supplied components. To improve our software vendor organization, the employees should be well trained and skilled [22]. One of the plus points is the latest technology and tools to be used for component integration. To use this latest technology and VOLUME 10, 2022 tools, the team members need to be properly trained to ease the components integration process in the long run [23].
Furthermore, ''proper selection of components'' is marked as the second CSFs with a percentage of 31 for CBSD. Component awareness is essential for the proper selection of components, and the CBSD also stresses that the developer must know the component to meet system requirements [24]. Trade of analysis performed to adjust the component with system architecture if the component does not fulfill the requirement altogether. So should be selected proper components which meet the system requirements [25]. System integration is important for establishing a google relationship between developer and vendor organization so that components should be selected from the certified repository [26].
''Using a standard for designing'' is also a critical success factor in our result with 29 %. Lack of standard design may create an issue in integration. The component should be standard designed for gaining a high level of reuse and increased coverage from design to presentation [21].
''Well defined architecture'' has also been marked as a CSF with 26 % frequency. The organization should design and structured the application, system, and components to certify that they fit to work together and fulfill the need of the family or domain. The architecture must be defined for distinct software development, maintenance processes, and component infrastructures [21]. Investigate and select those components that fit with the existing architecture. Any changes needed at the top level should be communicated to the expert team to analyze the architecture further, and the architecture should be explored amongst all the stakeholders [27].
''Proper testing and analysis'' is also a critical factor with 29 % frequency for CBSD. The components must be adequately tested before they can be fit into the final, whether the component is an in-house or COTS component. The integration phase of the CBSD faces many problems if the component has not been adequately tested and it may cause a delay in the overall process of CBSD [23]. To check components that whether fulfill the acceptable quality and reliability or not. So, the component should be checked and analyzed correctly to avoid any circumstances [28].
The factor '' Efficient integration'' is also a critical factor with 29 % of frequency. Integration is the process of development activity in which the separate components are combined and developed the desired system. If all the components did not integrate efficiently as the overall result system shall not work correctly. To minimize the integration issue, The proposed method has suggested that better planning and monitoring can help. To obtained better results, all the components can be combined efficiently [29], [30].
''Quality assurance'' is also considered a critical factor with 25 % of frequency for CBSD from the vendor's perspective. Quality is essential for the success and efficient design of CBSD. It is better than a Quality assessment of any component is analyzed before its deployment. Components with the best quality can further result from a better end product [31]. Components would be selected from the certified repository to gain quality components. The system's quality depends on the quality attributes of the constituent components, integration process and framework used [32].

B. COMPARISON OF CBSD SUCCESS FACTORS ACROSS VARIOUS CONTINENTS
In this paper, 91 papers are selected in primary selection. Due to space limitations, the proposed method has chosen only three continents wherein 35 papers belong to Asia Continent, 31 papers to Europe, and 20 papers to North America. In the proposed paper, the success factors are compared as identified in the three mentioned continents. The objective is to identify such success factors, which vary from continent to continent. The differentiation and similarity of the identified success factors can improve the body knowledge of Software outsourcing vendor organizations.
Linear-by-Linear Chi-Square test determines the most significant differences if the data is ordinal. Therefore, the proposed method used the Linear-by-Linear Chi-Square test to find the significant difference among success factors identified in three continents [33].
Our study identified that there is more similarity than difference among identified success factors. Our research identified only two significant differences among the three continents, as shown in Tab In this paper, the Linear-by-Linear Chi-Square test is used identify significant differences amongst the various continents and found that ''Improved Communication and Coordination'' is only one of the significant success factors amongst 12 success factors where p is less than 0.05.
The main objective of this research paper is to identify various success factors of CBSD that have a positive impact on software outsourcing vendor organizations. However, it is important to study why the vendor organization commonly cites these success factors in Asia, Europe, and North America.

C. ANOVA (ANALYSIS OF VARIANCE)
ANOVA is one of the updated versions of the T-test, also called the F-test developed by R.A Fisher in 1920. In this paper, the ANOVA method compares the means among the continent and determines whether any of those means show statistically and significant differences from each other.   For the result of the F value, the proposed method finds out the Degree of frequency (df), Standard derivation (SS), and means of the sum of square (MSS) based on the Tab. 4. If the obtained F value is greater than the Table value of P at 0.01 level of significance. The null hypothesis is rejected at both the level of significance.
In this paper, MS Excel is used to perform the ANOVA method and found the result. Hence, it can be interpreted that there is a higher significant difference among these three continents.
ANOVA is the simplest form of Analysis of Variance and it is a method of seclusion of the source of variability in a set of measurements. ANOVA has no limitation on the number of groups or conditions for comparison. Factorial ANOVA allows examination of the reinforcement of two or more independent variables or factors one a dependent variable. ANOVA is utmost probably used for measuring a quantitative scale, the statistical comparison is drawn and is categorical, even when the experimental conditions differ along a quantitative scale. Therefore, ANOVA is a particular type of regression analysis that employs quantitative predictors to act as categorical predictors.
Single ANOVA (One-Way Analysis of variance) is such type of technique that compares whether two or more groups are significantly different or not. That's why the proposed method used in this research is AVOVA (F-Test) methods instead of T-Test, which is used only for two groups comparison. The proposed method has twelve (12) success factors of CBSD to find out the significant difference amongst the continents.
In our case, the F value is 12.78210246 and P-value is 0.000078 and if the obtained F value is greater than the Tab. 5 value of P at 0.01 then this result shows that it can be interpreted that there is a higher significant difference among these three continents.

VII. LIMITATIONS
In the proposed research work, finally, 91 papers are selected. The proposed method may have missed some quality/relevant studies because of many papers, book chapters, etc. in CBSD, but it is not a systematic omission [34].
The proposed method identified 12 success factors based on the authors' opinion of the finally selected papers. Many of the authors are academicians, and some of these papers were published 15 years ago. So, the proposed method needs valid findings from the industry practitioners, and for the validation of the results, an empirical study is conducted.

VIII. CONCLUSION AND FUTURE WORK
The proposed method has identified 12 success factors of CBSD; out of 12, 10 success factors have been marked as critical success factors with a more than 20 % frequency. The vendor organization has to give special attention to critical success factors that positively impact software outsourcing vendor organization to avoid any failure of the client product. The outsourcing vendor organization will also maintain its countability and status quo. The proposed method has addressed RQ1 (what are the success factors of CBSD) and identified 12 success factors through SLR and RQ2 ( Are the identified challenges varying from continent to continent).
Moreover, the proposed method has analyzed our identified success factors across the various continent. It has shown that the identified success factors vary amongst the continent. The proposed method has identified differences in the list of success factors for Europe, North America, and Asia, as shown in Tab. 3. A reason may be that people with different cultured backgrounds have other priorities.
Our objective is to provide good knowledge of CBSD and its positive impact on Software outsourcing vendor organizations to adopt the concept of CBSD. Software outsourcing vendor organization focuses on the frequency cited success factors in Tab. 1 (RQ1). Software outsourcing vendor organizations should also check the importance of the CBSD concept in different continents in Tab. 2.
The proposed method identified the following goals from our research and will plan to follow them in the future.
• To validate the identified success factors, the proposed method will use empirical study with the practitioner working in the CBSD industry.
• The proposed method will identify more success factors through empirical study than the already placed success factors via SLR.
• Analysis of our identified success factors from the vendor's perspective. Finally, our objective is to develop a CBSD success Model (CBSDSM) to assist and facilitate the software outsourcing vendor's organization to adopt the concept of CBSD.
ABUDUL WAHID KHAN received the Ph.D. degree in computer science from the University of Malakand. He is currently working as an Assistant Professor at the University of Science and Technology (UST) Bannu, Pakistan. He is an Active Researcher in global software engineering. He is working on requirement engineering, cloud computing, software outsourcing, DevOps, and software testing.
FAHEEM KHAN received the Ph.D. degree from the University of Malakand, Pakistan. He served as an Assistant Professor for four years in Pakistan. He is currently working as an Assistant Professor at the Department of Computer Engineering, Gachon University, South Korea. His research interests include computer networking, wireless networks, MANET, VANET, the IoT, and artificial intelligence.
MUHAMMAD ADNAN KHAN received the B.S. and M.Phil. degrees from the International Islamic University, Islamabad, Pakistan, by obtaining the Scholarship Award from the Punjab Information and Technology Board, Government of Punjab, Pakistan, and the Ph.D. degree from ISRA University, Pakistan, by obtaining the Scholarship Award from the Higher Education Commission, Islamabad, in 2016. He is currently working as an Associate Professor at the Faculty of Computing, Riphah School of Computing and Innovation, Riphah International University, Lahore Campus, Lahore, Pakistan, and an Assistant Professor with the Pattern Recognition and Machine Learning Laboratory, Department of Software, Gachon University, South Korea. Before joining Gachon University and Riphah International University, he has worked in various academic and industrial roles in Pakistan. He has been teaching graduate and undergraduate students in computer science and engineering for the past 13 years. He is guiding five Ph.D. scholars and seven M.Phil. scholars. He has published more than 200 research articles with Cumulative JCR-IF 365+ in international journals as well as reputed international conferences. His research interests primarily include machine learning, MUD, image processing and medical diagnosis, and channel estimation in multi-carrier communication systems using soft computing.
TAEG KEUN WHANGBO (Member, IEEE) received the M.S. degree in computer science from The City University of New York, in 1988, and the Ph.D. degree in computer science from the Stevens Institute of Technology, in 1995. He is currently a Professor with the Department of Computer Science, Gachon University, South Korea. Before he joined Gachon University, he was the Software Developer at Q-Systems, which is located in NJ, USA, from 1988 to 1993. He was also the Researcher at Samsung Electronics, from 2005 to 2007. His research interests include artificial intelligence, computer vision, healthcare, and AR/VR.