Prioritizing solutions for overcoming knowledge transfer barriers in software development using the fuzzy analytic hierarchy process

: An effective knowledge transfer (KT) process is a key factor in achieving the competitive advantage that is critical for software development companies seeking to maintain their existence and improve their performance. However, there do exist obstacles to the achievement of effective knowledge transfer. Companies often face difficulties in identifying those barriers that have the great impact on KT as well as the best solutions with which to address them. Through a systematic literature review and interviews conducted with 15 experts, we identified 21 KT barriers and 12 KT solutions. The barriers were classified into three categories: team, project, and technology. Then, using the fuzzy analytic hierarchy process, the identified KT barriers and solutions were ranked. The result of this research is a list of ranked KT barriers and solutions relevant to software development. Poor communication and interpersonal skills, lack of management direction, and challenges to transactive memory systems topped the list of team-, project-, and technology-related barriers, respectively. It was further found that an additional weekly meeting is the best solution with which to overcome the barriers to KT.


Introduction
Having recognized the significance of technology in relation to maintaining a competitive advantage and expanding business opportunities, today's organizations focus their investment on technology (Carmel & Abbott, 2007). Coupled with the rapid development of technology, this increased level of investment has propelled the growth of the software industry. Indeed, Gartner, Inc stated that the worldwide software market increased by 4.8% in 2013. This has led to a growing number of start-ups. Among the many emerging software start-ups, numerous enterprises have experienced failure prior to achieving success. Forbes stated that nine out of ten start-ups failed to survive in the business world (Patel, 2015). In Indonesia alone, only approximately 10-20% of start-ups survive for at least two years. This means that about 80-90% of start-ups are unable to remain in business. The principal reasons for this failure are a lack of market demand for their products, lack of funds, and poor competitive advantage (Cheng, Yeh, & Tu, 2008).
Furthermore, it has been stated that the rapid development of technology and pressure due to global competition have caused knowledge to become the key factor in business success (Cheng, Yeh, & Tu, 2008). Zou, Kumaraswamy, Chung, and Wong (2014) as well as Argote, Beckman, & Epple (1990) reported that one of the critical success factors (CSF) in terms of the management of a company is the effective exchange of information or knowledge (i.e., knowledge transfer), so that information can flow properly, and a coherent understanding can be developed within the company. In particular, knowledge transfer (KT) in the field of software development is vital because software development is an activity that is both collaborative and knowledge-intensive, with the creation of ideas, know-hows, and the exchange of information being critical during the process of designing and building software (Ghobadi, 2015).
To facilitate effective KT, it is necessary to choose the right strategy for overcoming the barriers that result in ineffective KT (Vizcaíno et al., 2013). In order to establish effective KT, companies must first identify the barriers that exist within the KT process. Hence, previous research studies have attempted to identify the barriers to creating an effective KT process (Kukko, 2013;Nidhra, Yanamadala, Afzal, & Torkar, 2013;Patil & Kant, 2014;Riege, 2005). After identifying the barriers, it is necessary to also identify the best solutions for overcoming them. Zhao, Zuo, and Deng (2015) and Osterloh and Frey (2000) identified solutions for overcoming barriers to KT in general, while other solutions can be found in the work of Lacity and Rottman (2009) and Patil and Kant (2014). However, relatively few studies have been able to identify a solution based on the actual problems faced by an organization, especially organizations specializing in software development, since the challenges obviously vary from one organization to another, both in terms of internal issues such as social and cultural issues (Chau & Maurer, 2004;Ghobadi, 2011), technical issues (Baleghi-Zadeh, Ayub, Mahmud, & Daud, 2017;Budiardjo et al., 2017;Fitriani et al., 2016;Hidayanto, Limupa, Junus, & Budi, 2015;Shihab, Anggoro, & Hidayanto, 2016), distributed locations (Chua & Pan, 2008), and issues related to communications with external stakeholders (Conboy, Coyle, Wang, & Pikkarainen, 2010;Pook, Chong, & Yuen, 2017).
Due to the critical impact of knowledge transfer barriers on the success of software development, this research study aimed to identify the barriers faced during software development and find solutions to overcome those barriers by using the fuzzy analytic hierarchy process (fuzzy AHP). The AHP is a well-known method for selecting alternatives based on certain criteria. Decision makers are asked to rate pairwise comparisons of criteria/alternatives using the Saaty scale (range: 1-9) (Saaty, 1977). However, their answers contain uncertainty, since in reality they might have a value somewhere in-between the scale boundaries. Therefore, a more advance technique is required that accommodates the fuzziness of decision-makers' answers using a technique known as fuzzy AHP. This study is intended to contribute to helping companies effectively manage knowledge transfer, which can in turn help them in improving their competitive advantage. In many prior studies, the fuzzy AHP method has proved to a very useful method, and it is widely used in decision making. For example, Patil and Kant (2014) used fuzzy AHP to rank solutions for overcoming the obstacles that arise during the implementation of knowledge management in a supply chain. In another study, Chen, Hsieh, and Do (2015) used fuzzy AHP as a method for assessing the performance of teaching in order to improve the quality of education. The fuzzy AHP method has also been used for risk assessment (Shafiee, 2015;Wang, Chan, Yee, & Diaz-Rainey, 2012).

Knowledge transfer
Knowledge Management (KM) can be defined as the process of creating, capturing, codifying, and transferring knowledge between the people in an organization in order to achieve a competitive advantage (Becerra-Fernandez & Sabherwal, 2014). Becerra-Fernandez and Sabherwal (2014) stated that KM focuses on managing existing knowledge so that such knowledge is well organized and available when needed. Processes that are important in relation to KM include knowledge discovery, knowledge organization, knowledge transfer, knowledge reuse, knowledge creation, and knowledge acquisition (Lin & Lee, 2005). The most important process related to KM is knowledge transfer (Nidhra et al., 2013).
Knowledge transfer, which is sometimes referred to as knowledge sharing, is not only concerned with the exchange of knowledge between the parties, but also with ensuring that the transferred knowledge is only used if it is relevant and necessary. According to Duan, Nie, and Coakes (2010), KT can be defined as the exchange or transfer of knowledge within and between individuals, teams, group, or organizations. Meanwhile, according to Szulanski (1996), KT is a process that consists of two subprocesses namely sending and receiving knowledge. Other definitions of KT have been provided in the studies by Zhao et al. (2015) and Argote and Ingram (2000).
The KT process can be classified into a structured process and unstructured process. The structured process is the transfer or exchange of knowledge with a certain pattern that has been planned and standardized, for example, work progress meetings held on a monthly basis. Meanwhile, the unstructured process is the transfer or exchange of knowledge that is performed spontaneously and without any prior planning, for example, during unofficial daily conversations (Chen, Sun, & McQueen, 2010).
Within organizations, KT has a positive impact on team's performance (Argote & Ingram, 2000;Choi, Lee, & Yoo, 2010) whereas an individual's ability to absorb and apply knowledge acts as an important catalyst (Kanawattanachai & Yoo, 2007). Additionally, Nonaka and Takeuchi (1995) found that an organization's capacity to create, identify, transfer, and implement knowledge can directly affect its competitive advantage. Therefore, the success of KT can be measured through the changes in performance that occurs following the application of KT.

Knowledge transfer barriers and solutions in relation to software development
In the field of software development, knowledge and collaboration among members of the team are indispensable. Indeed, each member is key player in effective KT (Prencipe & Tell, 2001). Members need to exchange ideas and information as well as solve problems collectively in order to develop effective KT (Turban, Volonino, McLean, & Wetherbe, 2010). To ensure the efficacy of the KT process in relation to software development, it is necessary to overcome the barriers to KT that are inherent in software development.
The barriers to KT can be classified into several categories. For instance, Riege (2005) and Kukko (2013) grouped the barriers to the growth of an organization into three categories: individuals, organizations, and technology. Patil and Kant (2014) divided the barriers into five categories: strategy, organization, technology, culture, and people.
Further, Nidhra et al. (2013) classified the barriers to KT in relation to global software development into three categories: personnel, projects, and technology. This study applied the categories developed by Nidhra et al. (2013). Table 1 and 2 present the lists of barriers and solutions, respectively, relevant to KT in the field of software development. The lists were validated by 15 experts, seven of whom came from a project management office (PMO), while eight were developers who worked for a software development company. These experts were asked to validate the list of barriers and solutions to knowledge transfer as well as to provide additional input regarding any missing barriers and/or solutions. During the interviews, an additional barrier to KT in software development arose based on the experts' opinions that were not covered in the literature, namely work overload. Thus, we included it as a barrier in the team category. The experts also suggested including one additional solution that was not covered in the literature, namely conducting joint training for a new system.

Overloaded with tasks
If an employee is overloaded by the projects assigned to him/her, then he/she will not be able to effectively participate in the KT process. As the project deadline gets closer, the team members will be busy finishing their work, which means that there will be little time to exchange knowledge save for that related to the project at hand. However, one expert believed that the deadline was not always a barrier to the KT process, but could also serve as a motivating factor for KT. Chua & Pan, 2008;Nidhra et al., 2013. Category: Technology

HTe1
Challenges to the transactive memory system (TMS) A TMS is intended to simplify the KT process by allowing individuals to receive and provide knowledge at any time. Hence, difficulty in using the TMS can inhibit the KT process. Nidhra et al., 2013;Riege, 2005.

HTe2
Difficulties in the codification of tacit knowledge Tacit knowledge is often difficult to be codified or interpreted, since it exists with human minds, without any real documentation. This causes knowledge to disappear quickly and complicates its dissemination to other people. Wagner & Buko, 2005.

HTe3
Reluctance to use the existing system because of feeling unfamiliar Feeling unfamiliar with the existing systems could discourage team members from using that system, although the system was intended to assist with their work. Riege, 2005.

Fuzzy sets
The presumptions of humans are often biased and difficult to represent using numbers, which makes it hard to estimate or compare the value of existing assumptions (Zadeh, 1965). Decision making is difficult in an environment with a high degree of uncertainty.
To overcome this uncertainty, Zadeh (1965) proposed the fuzzy sets theory. A fuzzy set is designed to represent the uncertainty and imprecise nature of human thought in a mathematical form. Hence, fuzzy sets are widely applied in relation to managerial decisions that involve uncertainty or inaccurate information (Ordoobadi, 2009).
A fuzzy set is defined by the membership function, which maps the membership degrees of an element into an interval of [0, 1]. Zero (0) indicates that the element is not a member of interval (zero membership), while 1 indicates that the element has a full degree of membership in the interval. If the value is between 0 and 1, it means that the element has certain membership degrees within that interval.
A fuzzy set Ã of the non-empty set is characterized by its membership function, with Ã( ) ∈ [0,1], where Ã( ) = 1 indicates that is a complete member of Ã, while 0 indicates that x does not completely belong to Ã.
where Ã( ) is interpreted as the degree of membership of element x in the fuzzy set Ã for each ∈ .
A triangular fuzzy number (TFN) is a fuzzy number represented by triangular shape, which involves three points ( , m, u), where , m, are real numbers and ≤ ≤ , and they are defined as follows: As can be seen in Fig. 1, in the triplet fuzzy or ( , m, u) where (middle) is the main value, and are the lowest (lower) and the highest (upper) values, respectively. In the figure, the ( , m, u) value is (1, 2, 3) where 2 is the main fuzzy value. Further, the reciprocal value of ( , m, u) is (1/ , 1/ , 1/ ). Adamo (1980) proposed the α-cut method to rank fuzzy numbers, with α representing the experts' confidence level regarding their judgments. The α-cut of a fuzzy set Ã in the non-empty set is defined as:

Fuzzy AHP
The analytical hierarchy process (AHP) proposed by Saaty (1977) is multi-criteria decision-making method that assists a decision maker when he/she is facing a complex problem characterized by multiple conflicting and subjective criteria and alternatives. The AHP is a well-known method for solving unstructured problem by means of decomposing the problem into a hierarchical structure. Indeed, the AHP has been used in many contexts, for example, in prioritizing the critical success factors involved in project management (Kasayu, Hidayanto, & Sandhyaduhita, 2017) and evaluating software as a service (SaaS) quality factors (Sucahyo et al., 2017).
Although the AHP can be used to capture knowledge derived from the experts, the judgment provided by such experts can be uncertain and imprecise, which can affect the result of the calculation (Kahraman, Cebeci, & Ulukan, 2003). In order to overcome this weakness, an attempt was made to combine AHP with fuzzy logic, which has proven to be effective in addressing uncertainty, imprecision, and subjectivity in expert judgment. This combined process is known as fuzzy AHP.
In many studies, the fuzzy AHP method has been proven to be an effective and useful part of the decision-making process. Patil and Kant (2014) used fuzzy AHP to rank the solutions for overcoming the barriers that arise during the implementation of knowledge management within a supply chain. Chen, Hsieh, and Do (2015) used fuzzy AHP as a method for assessing teaching performance in order to improve its quality. The fuzzy AHP method has also been used for risk assessment (Shafiee, 2015;Wang et al., 2012). Other example of the implementation of fuzzy AHP can also be found in studies by Somsuk (2014) and Zhang and Zhao (2009).
The difference between fuzzy AHP and regular AHP is that fuzzy AHP uses fuzzy logic in conjunction with AHP. Fuzzy logic is applied to hierarchical problem with multiple criteria in order to better capture the actual reality. According to the AHP, the experts are asked to compare the intensity of importance of one variable to that of another variable using the AHP scale (range: 1-9) as a numeric representation of the linguistic variables that still contain uncertainty (see Table 3). When using fuzzy AHP, that uncertainty is accounted by using the fuzzy logic that informs the TFN scale. The fuzzy membership function for the linguistic variables is shown in Table 3. It can also be represented as a function, which is shown in Fig. 2. Please note that the TFN (1, 1, 1) is used to represent "just equal" when comparing a variable with itself (the diagonal elements of the pairwise comparison matrix).  (2014) Although fuzzy AHP has many advantages when compared to traditional AHP, its implementation is rather complex. Hence, researchers have proposed different methods for reducing the complexity of fuzzy AHP computation. Of the proposed methods, Chang's (1996) method has the lowest computation requirement and thus it has been widely adopted in fuzzy AHP implementation (Buyukozkam, Kahraman, & Ruan, 2004). Instead of using a standard number for the pairwise comparison, Chang's (1996) method uses triangular fuzzy numbers as well as the extent analysis method to determine the synthetic extent values of the pairwise comparisons. This will be discussed further in subsection 3.2.

Research stages
In order to achieve our research objectives, this study was conducted in a number of stages, including problem formulation, fuzzy AHP framework development, and solutions ranking. This study used both qualitative and quantitative methods by collecting data literature study, interviews, and questionnaires. This study involved the following stages: a. Problem formulation At this step, the problem was defined and formulated, as were the subjects and objects involved in this research.

b. Literature review
This study applied a systematic literature study to uncover the problems faced by software development companies regarding knowledge transfer as well as the strategies used or recommended to solve them. From 744 initially identified studies, some 48 studies were considered relevant to this research study. The outcomes of this stage were lists of the barriers and solutions to knowledge transfer in relation to software development.
c. Data collection 1: Expert validation of literature review findings The outcomes of the previous step were then validated by 15 experts, seven of whom came from a project management office (PMO), while eight were developers who worked for start-up companies in the field of software development. The experts were asked to validate the lists of barriers and solutions to knowledge transfer in software development as well as to provide additional input concerning any missing barriers and/or solutions. The full lists of the identified barriers and solutions can be seen in Tables 1 and 2. d. Fuzzy AHP framework development The proposed framework adapted the fuzzy AHP framework developed by Patil and Kant (2014), which consists of four phases, namely the preparation phase, first phase, second phase, and third phase, which can be seen in Fig. 3.
The preparation phase involved the literature review and the interviews conducted with the experts in order to identify the barriers and solutions related to knowledge transfer in software development. Phase 1 consisted of developing the decision hierarchy, followed by calculating the knowledge transfer barriers' weight in software development. Phase 2 consisted of calculating the weight of the knowledge transfer solutions in software development. The final phase involved prioritizing the solutions as well as ranking the barriers to determine which ones may hamper software development.
e. Data collection 2: Fuzzy AHP framework application to rank the solutions to the identified barriers to software development After the framework was developed, data collection 2 was conducted. During data collection 2, the lists of barriers and solutions related to knowledge transfer in software development, which resulted from the interviews conducted during data collection 1, were modified into a questionnaire. This questionnaire was then disseminated to the experts.
The questionnaire consisted of six empties pairwise comparison matrices. The first three matrices were pairwise comparison matrices for the barriers categories, namely the team category matrix, project category matrix, and technology category matrix. The other three matrices were the pairwise comparison matrix for the solutions to the identified team category, project category, and technology category barriers, respectively.

Proposed fuzzy AHP framework for ranking the solutions for overcoming the identified barriers to KT
We adapted the steps proposed by Chen, Hsieh, and Do (2015) for calculating fuzzy AHP, which can be summarized as follows:

Preparation phase
During this phase, we aimed to identify the barriers and solutions to knowledge transfer in relation to software development. The barriers and solutions were identified by conducting a systematic literature review, as was explained in the literature review subsection. Furthermore, we conducted interviews with experts in order to validate the identified barriers and solutions as well as to discover any additional barrier(s) and/or solution(s) that were not found in the literature. The full lists of the identified barriers and solutions can be seen in Tables 1 and 2.

Phase 1.1: Creating a hierarchy of decisions
In order to form a hierarchical structure of decisions, we first had to identify the problem and then decompose it into criteria (in our case we refer as categories) and alternatives. Furthermore, the hierarchy could be divided into four levels: primary goal in the first level, categories in the second level, sub-categories or attributes in the third level, and alternatives in the fourth level. Indeed, the proposed fuzzy AHP hierarchy of decisions in our case consisted of four levels: • The first level concerned the objective of using fuzzy AHP, which was to rank the solutions to the barriers to KT in software development.

•
The second level consisted of the barrier categories, namely the team, project, and technology categories.

•
The third level contained the barriers' sub-categories, which consisted of the divisions to the barriers that were made according to the three categories found in the previous level.

•
The final level featured the 12 KT solutions that had been validated by the experts. This hierarchy is illustrated in Fig. 4.

Phase 1.2: Developing pairwise comparison matrices for the barriers
After the hierarchy of decisions had been established, the next step involved creating the matrices of the pairwise comparisons of the categories and the sub-categories. This was achieved by asking each expert to determine the scale of relative importance of each category/sub-category to other categories/sub-categories using the Saaty scale (fuzzy number), as illustrated in Table 3. The diagonal elements will be set to 1 as the diagonal elements reflect the comparison of a category with itself.

Phase 1.3: Creating fuzzy assessment matrices for the barriers
After the pairwise comparison matrices for the categories/sub-categories were created, the fuzzy assessment matrix Ã could be formed by changing the elements in each pairwise comparison matrix into a fuzzy AHP matrix using TFN (see Table 3). Equation (6) indicates the change in the matrix elements from the Saaty scale to the fuzzy or TFN triplet.
The fuzzy number representation in the fuzzy matrix , which was initially in the form of ĩj was changed into ( , m , u ), where , , and u are numbers in TFN triplet and n is the number of elements being compared.

Phase 1.4: Combining the fuzzy assessment matrices into representative matrices for the barriers
Each matrix formed by the experts represented each individual expert opinion. Therefore, it was necessary to aggregate all the individual matrices into a fuzzy matrix representing all the experts' opinion. This step is known as the aggregation of individual judgments (AIJ). Following the AIJ, the aggregate matrix is a new matrix containing the opinions of the group of experts (Chen, Hsieh, & Do, 2015). The individual matrix can be aggregated using a geometric mean operation, as in equation (7).
In a group of experts consisting of K people, each expert makes a pairwise comparison yielding K matrices ̃=(̃), as in equation (6), where ̃=( , , ) represents the relative importance of element i to j according to expert k. By using the geometric mean, the value of ̃ for representative matrix related to the categories can be calculated, thereby forming a fuzzy matrix that represents the opinion of K experts. (7)

Phase 1.5: Checking the consistency of the representative matrices for the barriers
The consistency ratio (CR) is used to calculate the consistency of the pairwise comparisons (Saaty, 1977). Prior to checking the consistency, the representative matrix of categories must first be converted into a crisp matrix. If this crisp matrix is consistent, then the fuzzy assessment matrix and the representative matrix are definitely consistent. The method used to change the representative matrix into a crisp matrix is known as defuzzification (Chang, 1996). By determining the confidence level of the expert opinion (α) and the tolerance of the risk (λ), the TFN ( , m , u ) can be changed into a crisp number (defuzzification) using equation (8): where represents the left-end value of α-cut for aij, while represents the right-end value of α-cut for aij (see Fig. 1), and the value of α and λ are between 0 and 1. When α=0, the level of uncertainty is high and the conditions are unstable. When α=1, the level of uncertainty is low and the conditions are highly stable. The level of risk tolerance (λ) can be defined as the degree of optimism of an expert. When λ=0, the expert has a very pessimistic opinion, while conversely, when λ=1, the expert is very optimistic about his/her opinion.
After all the elements of the representative matrix are transformed into crisp numbers, the resultant matrix can be seen in equation (9).
The consistency index (CI) and CR of this crisp matrix can be calculated using equations (10) and (11), respectively.
where λmax is the largest eigenvalue of the matrix, n is the size of the matrix, and RI (n) is a random index (RI) in accordance with the size of the matrix (n). The RI values according to the size of the matrix can be seen in Table 4. If the consistency value is less than 0.1 (CR≤0.1), then the consistency value is accepted. However, if the consistency value is higher than 0.1, it is necessary to revise the provision of the values in the pairwise comparisons.

Phase 1.6: Calculating the barriers' weight
Chang (1996) developed a method for calculating the categories' weight, which is known as the extent analysis of fuzzy AHP method. According to Chen, Hsieh, & Do (2015), this method does not require complex calculation. Therefore, Chang's (1996) method is now widely used.
Consider as a fuzzy matrix of pairwise comparisons where . The calculation of the fuzzy synthetic extent for each i is conducted as follows (see equation (12)): is the synthetic extent value of the category i, or, in the matrix, row i. After the Si value is determined, the values of each Si are compared to each other and the degree of likelihood of is computed using equation (17). For example, if there are S1, S2, and S3, then we have to compare S1 and S2, S1 and S3, and S2 and. S3. , and Then the weight vector can be defined as in equation (18).
where consists of n elements according to the number of categories.
Finally, the weight vector is normalized in order to obtain the relevant weight of each category (see equation (19)).
where are non-fuzzy numbers.

Phase 2.1: Developing pairwise comparison matrices for the solutions
During the second phase, each expert was initially asked to rate the appropriateness of a given solution or alternative for overcoming the identified barriers on the Saaty scale that can be seen in Table 5. This phase resulted in the solutions matrices that were later completed by the experts.

Phase 2.2: Developing fuzzy assessment matrices for the solutions
The fuzzy assessment matrices for the solutions (matrix ), as shown in equation (20), was formed from the solution matrices obtained during phase 1.2. The assessment of the solutions in relation to the categories can be described as , where: (20) Very good (7, 9, 11)

Phase 2.3: Combining the fuzzy assessment matrices into representative solution matrices
Using the same process as that used for combining the fuzzy matrices of the barriers, the fuzzy matrices of the solutions were also combined into a matrix that represents all the experts' opinions. The process of merging the solution matrices also used the fuzzy geometric mean, as in equation (7). In the same way, the representative matrix of solutions was processed further.

Phase 2.4: Checking the consistency of the representative matrix of solutions
The representative matrix of solutions also had to be checked for consistency. The steps involved were the same as those used to check the consistency of the representative matrix of categories.

Phase 2.5: Calculating the solutions' weight
The calculation of the solutions' weight was performed in the same way as the calculation of the categories' weight by using the fuzzy extent analysis. The calculation also used equation (12) to determine the synthetic value (Si) for each row i of the matrix. The value of each row was then compared with that of each other row by using equation (17) to produce the value of d. Thus, the value d'(Ai) became the weight of the solution vector. The solution vector was then normalized to obtain the relative weight of each solution.

Phase 3: Ranking the barriers and the solutions
After the weights of all the barriers and solutions were determined, the barriers and solutions were ranked based on their weights. This represented the end product of the fuzzy AHP method. The greater the weight of a solution, the higher its priority will be.

Application of the framework
In the following subsections, we demonstrate the use of the proposed framework for prioritizing the solutions to the identified KT barriers related to software development. We hence explain the step-by-step operation of our proposed framework.

Phase 1.1: Developing the decision hierarchy
The first phase involved formulating the decision hierarchy in order to reflect our aim of prioritizing the solutions for overcoming the identified KT barriers related to software development. The decision hierarchy was defined in Fig. 4.

Phase 1.2: Developing pairwise comparison matrices for the barriers
Each expert was asked to complete a total of three pairwise comparison matrices: concerning the team category barriers, project category barriers, and technology category barriers. Table 6 is an example of a completed pairwise comparison matrix for the team category barriers.

Phase 1.3: Developing fuzzy assessment matrices for the barriers
The pairwise comparison matrices constructed during the previous step were then converted into a fuzzy scale by using the TFN. The result of the transformation of the pairwise comparison matrices into the fuzzy scale can be seen in Table 7.

Phase 1.4: Developing representative matrices for the barriers
Due to the number of experts involved, 15 different pairwise comparison matrices were constructed. These 15 pairwise comparison matrices still represented the opinions of individual experts and hence had to be combined into matrices that represented the pairwise comparisons conducted by all the experts. By using the geometric mean, the representative matrices shown in Table 8 to 10 were constructed.

Phase 1.5: Checking the consistency of the barrier matrices
In order to prevent a loss of consistency in the pairwise comparisons, the consistency was checked by calculating consistency ratio of each representative matrix. If the consistency value was less than 0.1, then the comparative matrix of the representative matrix was declared valid. To check for matrix consistency, the representative matrix was first converted into a crisp matrix. The preference value (α) and risk tolerance (λ) were each set to 0.5 in order to produce a crisp matrix. The crisp matrices for all the barriers can be seen in Tables 11 to 13. Next, the consistency of each matrix had to be computed. The consistency value for the team category's barrier matrix was 0.03, while project category's barrier matrix value was 0.02, and the technology category's barrier matrix value was 0.04. As the the consistency values of all the matrices were less than 0.1, then the matrices were consistent and could hence be processed in the next step.

Phase 2.2: Developing fuzzy assessment matrices for the solutions
The pairwise comparison matrices constructed during the previous step were then converted into a fuzzy scale by using the triangular fuzzy number. The results of the transformation of the pairwise comparison matrix to the fuzzy scale can be seen in Table  16.

Phase 2.3: Developing representative matrices for the solutions
In accordance with the number of experts, there are 15 different pairwise comparison matrices. The combined representative matrices of all the solutions were calculated as described previously using the geometric mean, and the results can be seen in Tables 17  to 19.

Phase 2.4: Checking the consistency of the solution matrices
The representative matrices were then converted into crisp matrices. The resultant crisp matrices can be seen in Tables 20 to 22. After being converted into crisp matrices, the consistency value of the representative matrices could be obtained. The values were 0.06, 0.08, and 0.09 for the solutions to the team category barriers, project category barriers, and technology category barriers, respectively. As all the values were less than 0.01, the matrices were considered consistent, and they could then be processed further.

Phase 2.5: Calculating the solutions' weight
The Si value for each of the representative solution matrices could be calculated as follows.

Phase 3: Ranking the barriers and the solutions
The final phase involved ranking the barriers and the solutions using the relative weights that had been computed previously (W T ). The ranking of the solutions can be seen in Table 23, while the ranking of the barriers in the team, project, and technology categories can be seen in Tables 24, 25, and 26, respectively.

Discussions
Based on the application of the fuzzy AHP method in order to rank both the barriers to KT in relation to software development and their solutions, it was found that the highest ranked team category barrier to KT was poor communication and interpersonal skills. If an individual is not able to demonstrate good communication skills, then it would likely be difficult for that individual to receive or provide knowledge. In terms of the project category, the most influential obstacle was a lack of leadership and direction in relation to the implementation of project management. This meant that if a project was well managed, then the associated flow of knowledge also tended to be better, since the KT process effectively influenced the success of the project. In the technology category, the highest-ranking barrier was a reluctance to use existing systems due to feeling unfamiliar with such systems. The existing technology is only useful if individual users are able to use it effectively. If a system is difficult to use, then the technology will hinder the effectiveness of the KT process.
In addition, the highest-ranking solution to the barriers to KT in relation to software development, according to the results of this study, is the scheduling of additional weekly meetings, followed by proactive and peer-to-peer learning. Patil and Kant (2014) did not mention scheduling additional meetings as a solution in their research. Further, they allocated medium priority to proactive learning rather than top priority.

Implications
It is widely recognized that organizations face multiple barriers when seeking to implement an effective KT process. The barriers to KT in the field of software development as well as the associated solutions proposed in this study are expected to help software development companies to identify both the factors that render KT processes ineffective and the solutions capable of addressing those factors. It is recommended that companies schedule additional meetings to avoid gaps in understanding developing among team members. Companies are also expected to implement proactive and peer-to-peer learning, wherein the companies encourage their employees to be more active in terms of KT as well as to mutually evaluate each other, so that the knowledge gained is more diverse. In the future, this research is expected to encourage other studies related to KT and hence the development of more approaches to fostering effective KT within companies.

Conclusions
This study aimed to identify solutions for overcoming the barriers to knowledge transfer that exist within software development organizations as well as how to prioritize those solutions. By means of a literature review and interviews with the experts, this study identified 21 barriers and 12 solutions to knowledge transfer in relation to software development. The respective weights of the barriers to knowledge transfer and their solutions were calculated using the fuzzy AHP method. Thus, the results of this study are lists of ranked barriers to knowledge transfer and their associated solutions.
Twelve solutions to the identified knowledge transfer barriers were derived from the literature study, which were then validated by the experts. A lack of communication and interpersonal skills was ranked the highest out of the team category barriers, while a lack of leadership and direction on the part of management was the top priority concerning the project category barriers, and challenges on the TMS represented the top priority among the technology category barriers.
In terms of the solutions to the knowledge transfer barriers, scheduling additional weekly meetings so as to fill the knowledge gap among members was ranked as the highest priority of 12 identified solutions, while producing a complete report emerged as the lowest ranked solution. It can be concluded that in order to create an effective knowledge transfer process within a software development environment, additional weekly meetings represent the recommended solution for overcoming the identified barriers to KT to reducing the knowledge gap among team members, which can, in the long run, hamper the performance of a software development project.