Decision Making of Agile Patterns in Offshore Software Development Outsourcing: A Fuzzy Logic-Based Analysis
Abstract
:1. Introduction
2. Related Work
3. Research Methodology
4. Distributed Agile Patterns
- The team is distributed across different temporal zones, and each sprint focuses on a different story card.
- Product owner/Client.
- Distributed onshore and offshore agile teams.
- The client approves the estimation made by the team members.
5. Results
Applying Fuzzy to Rank Patterns
6. Discussion
7. Threat to Validity
8. Conclusions and Future Work
8.1. Theoretical and Practical Contributions
8.2. Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Abbreviations
GSD | Global Software Development |
DAP | Distributed Agile Patterns |
DAD | Distributed Agile Development |
TFN | Triangular Fuzzy Number |
BNP | Best Non Fuzzy Performance |
References
- Nuutinen, N. Impacts of Distance in Offshore Software Development Projects. 2022. Available online: https://osuva.uwasa.fi/handle/10024/14312 (accessed on 1 January 2020).
- Èmite, D.; Wohlin, C. A whisper of evidence in global software engineering. IEEE Softw. 2011, 28, 15–18. [Google Scholar] [CrossRef] [Green Version]
- Herbsleb, J.D.; Moitra, D. Global software development. IEEE Softw. 2001, 18, 16–20. [Google Scholar] [CrossRef]
- Damian, D.; Moitra, D. Guest editors’ introduction: Global software development: How far have we come? IEEE Softw. 2006, 23, 17–19. [Google Scholar] [CrossRef]
- MacGregor, E.; Hsieh, Y.; Kruchten, P. Cultural patterns in software process mishaps: Incidents in global projects. Acm Sigsoft Softw. Eng. Notes 2005, 30, 1–5. [Google Scholar] [CrossRef]
- Paasivaara, M.; Lassenius, C. Collaboration practices in global inter-organizational software development projects. Softw. Process. Improv. Pract. 2003, 8, 183–199. [Google Scholar] [CrossRef] [Green Version]
- M. Goncalves, K.; Pereira, M.; Monteiro, G.; Fontao, A. Pattern with partners: A systematic approach to handle knowledge sharing in GSD projects. In Proceedings of the International Conference on Software and System Processes and International Conference on Global Software Engineering, Virtual, 18–19 May 2022. [Google Scholar]
- Gupta, M.; Sharma, A.; Hooda, S.; Bhatia, J.S. Distributed Agile Software Development (DASD) Process. In Agile Software Development: Trends, Challenges and Applications; Wiley: New York, NY, USA, 2023; pp. 187–203. [Google Scholar]
- Zolfani, S.H.; Görçün, Ö.F.; Çanakçıoğlu, M.; Tirkolaee, E.B. Efficiency analysis technique with input and output satisficing approach based on Type-2 Neutrosophic Fuzzy Sets: A case study of container shipping companies. Expert Syst. Appl. 2023, 218, 119596. [Google Scholar] [CrossRef]
- Mardani, A.; Jusoh, A.; Zavadskas, E.K. Fuzzy multiple criteria decision-making techniques and applications–Two decades review from 1994 to 2014. Expert Syst. Appl. 2015, 42, 4126–4148. [Google Scholar] [CrossRef]
- Dwivedi, R.; Gupta, D. The agile method engineering: Applying fuzzy logic for evaluating and configuring agile methods in practice. Int. J. Comput. Aided Eng. Technol. 2017, 9, 408–419. [Google Scholar] [CrossRef]
- Tyagi, S.; Sibal, R.; Suri, B. Empirically developed framework for building trust in distributed agile teams. Inf. Softw. Technol. 2022, 145, 106828. [Google Scholar] [CrossRef]
- Alyahya, S.; Bin-Hezam, R.; Maddeh, M. Supporting remote customer involvement in distributed agile development: A coordination approach. IEEE Trans. Eng. Manag. 2022. [Google Scholar] [CrossRef]
- Junior, I.d.F.; Marczak, S.; Santos, R.; Rodrigues, C.; Moura, H. C2M: A maturity model for the evaluation of communication in distributed software development. Empir. Softw. Eng. 2022, 27, 188. [Google Scholar] [CrossRef] [PubMed]
- Farooq, M.S.; Kalim, Z.; Qureshi, J.N.; Rasheed, S.; Abid, A. A blockchain-based framework for distributed agile software development. IEEE Access 2022, 10, 17977–17995. [Google Scholar] [CrossRef]
- Rahman, H.U.; Raza, M.; Afsar, P.; Alharbi, A.; Ahmad, S.; Alyami, H. Multi-criteria decision making model for application maintenance offshoring using analytic hierarchy process. Appl. Sci. 2021, 11, 8550. [Google Scholar] [CrossRef]
- Rahman, H.U.; Raza, M.; Afsar, P.; Khan, H.U. Empirical investigation of influencing factors regarding offshore outsourcing decision of application maintenance. IEEE Access 2021, 9, 58589–58608. [Google Scholar] [CrossRef]
- Šmite, D.; Wohlin, C.; Aurum, A.; Jabangwe, R.; Numminen, E. Offshore insourcing in software development: Structuring the decision-making process. J. Syst. Softw. 2013, 86, 1054–1067. [Google Scholar] [CrossRef] [Green Version]
- Alzoubi, Y.; Gill, A. The critical communication challenges between geographically distributed agile development teams: Empirical findings. IEEE Trans. Prof. Commun. 2021, 64, 322–337. [Google Scholar] [CrossRef]
- Amiri, F.; Overbeek, S.; Wagenaar, G.; Stettina, C.J. Reconciling agile frameworks with IT sourcing through an IT sourcing dimensions map and structured decision-making. Inf. Syst.-Bus. Manag. 2021, 19, 1113–1142. [Google Scholar] [CrossRef]
- Aggarwal, A.K.; Mani, V. Using product line engineering in a globally distributed agile development team to shorten release cycles effectively. In Proceedings of the 2019 ACM/IEEE 14th International Conference on Global Software Engineering (ICGSE), Montreal, QC, Canada, 25–26 May 2019; IEEE: New York, NY, USA, 2019; pp. 58–61. [Google Scholar]
- Robinson, P.T. Communication network in an agile distributed software development team. In Proceedings of the 2019 ACM/IEEE 14th International Conference on Global Software Engineering (ICGSE), Montreal, QC, Canada, 25–26 May 2019; IEEE: New York, NY, USA, 2019; pp. 100–104. [Google Scholar]
- Stray, V.; Moe, N.B.; Noroozi, M. Slack me if you can! using enterprise social networking tools in virtual agile teams. In Proceedings of the 2019 ACM/IEEE 14th International Conference on Global Software Engineering (ICGSE), Montreal, QC, Canada, 25–26 May 2019; IEEE: New York, NY, USA, 2019; pp. 111–121. [Google Scholar]
- Lous, P.; Tell, P.; Michelsen, C.B.; Dittrich, Y.; Kuhrmann, M.; Ebdrup, A. Virtual by design: How a work environment can support agile distributed software development. In Proceedings of the 2018 IEEE/ACM 13th International Conference on Global Software Engineering (ICGSE), Chicago, IL, USA, 5–8 March 2018; IEEE: New York, NY, USA, 2018; pp. 97–106. [Google Scholar]
- Conchúir, E.Ó.; Ågerfalk, P.J.; Olsson, H.H.; Fitzgerald, B. Global software development: Where are the benefits? Commun. ACM 2009, 52, 127–131. [Google Scholar] [CrossRef]
- Ghani, I.; Lim, A.; Hasnain, M.; Ghani, I.; Babar, M.I. Challenges in distributed agile software development environment: A systematic literature review. Ksii Trans. Internet Inf. Syst. (Tiis) 2019, 13, 4555–4571. [Google Scholar]
- Niazi, M.; Mahmood, S.; Alshayeb, M.; Riaz, M.R.; Faisal, K.; Cerpa, N.; Khan, S.U.; Richardson, I. Challenges of project management in global software development: A client-vendor analysis. Inf. Softw. Technol. 2016, 80, 1–19. [Google Scholar] [CrossRef]
- Khan, S.U.; Azeem, M.I. Intercultural challenges in offshore software development outsourcing relationships: An exploratory study using a systematic literature review. IET Softw. 2014, 8, 161–173. [Google Scholar] [CrossRef]
- Wende, E.; Philip, T. Instant messenger in offshore outsourced software development projects: Experiences from a case study. In Proceedings of the 2011 44th Hawaii International Conference on System Sciences, Washington, DC, USA, 4–7 January 2011; IEEE: New York, NY, USA, 2011; pp. 1–10. [Google Scholar]
- Noll, J.; Richardson, I.; Beecham, S. Patternizing GSD research: Maintainable decision support for global software development. In Proceedings of the 2014 IEEE 9th International Conference on Global Software Engineering, Washington, DC, USA, 18–21 August 2014; IEEE: New York, NY, USA, 2014; pp. 110–115. [Google Scholar]
- Lescher, C. Patterns for global development: How to build one global team? In Proceedings of the 15th European Conference on Pattern Languages of Programs, New York, NY, USA, 7–11 July 2010; pp. 1–6. [Google Scholar]
- van Heesch, U. Collaboration patterns for offshore software development. In Proceedings of the 20th European Conference on Pattern Languages of Programs, New York, NY, USA, 8–12 July 2015; pp. 1–10. [Google Scholar]
- Marczak, S.; Kwan, I.; Damian, D. Investigating collaboration driven by requirements in cross-functional software teams. In Proceedings of the 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills, Atlanta, GA, USA, 31 August 2009; IEEE: New York, NY, USA, 2009; pp. 15–22. [Google Scholar]
- Cordeiro, L.; Becker, C.; Barreto, R. Applying scrum and organizational patterns to multi-site software development. In Proceedings of the 6th Latin American Conference on Pattern Languages of Programming, Recife, Brazil, 26–29 May 2007; pp. 46–67. [Google Scholar]
- Välimäki, A.; Kääriäinen, J. Patterns for distributed scrum—A case study. In Enterprise Interoperability III; Springer: Berlin/Heidelberg, Germany, 2008; pp. 85–97. [Google Scholar]
- Belsis, P.; Koutoumanos, A.; Sgouropoulou, C. PBURC: A patterns-based, unsupervised requirements clustering framework for distributed agile software development. Requir. Eng. 2014, 19, 213–225. [Google Scholar] [CrossRef]
- Kausar, M.; Al-Yasiri, A. Distributed agile patterns for offshore software development. In Proceedings of the 12th International Joint Conference on Computer Science and Software Engineering (JCSSE), Songkhla, Thailand, 22–24 July 2015; IEEE: New York, NY, USA, 2015. [Google Scholar]
- Beecham, S.; Noll, J.; Richardson, I. Using agile practices to solve global software development problems–A case study. In Proceedings of the 2014 IEEE International Conference on Global Software Engineeering Workshops, Washington, DC, USA, 18 August 2014; IEEE: New York, NY, USA, 2014; pp. 5–10. [Google Scholar]
- Pakdeetrakulwong, U.; Wongthongtham, P.; Khan, N. An Ontology-Based Multi-Agent System to Support Requirements Traceability in Multi-Site Software Development Environment. In Proceedings of the ASWEC 2015 24th Australasian Software Engineering, New York, NY, USA, 28 September–1 October 2015; pp. 96–100. [Google Scholar]
- Akbar, M.A.; Khan, A.A.; Mahmood, S.; Rafi, S. A Vision of DevOps Requirements Change Management Standardization. arXiv 2022, arXiv:2211.13996. [Google Scholar]
- Bokhari, S.A.A.; Myeong, S. Use of artificial intelligence in smart cities for smart decision-making: A social innovation perspective. Sustainability 2022, 14, 620. [Google Scholar] [CrossRef]
- Raslan, A.T.; Darwish, N.R.; Hefny, H.A. Towards a fuzzy based framework for effort estimation in agile software development. Int. J. Comput. Sci. Inf. Secur. 2015, 13, 37. [Google Scholar]
- Saini, A.; Ahuja, L.; Khatri, S.K. Effort estimation of agile development using fuzzy logic. In Proceedings of the 2018 7th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 29–31 August 2018; IEEE: New York, NY, USA, 2018; pp. 779–783. [Google Scholar]
- Singhal, A.; Banati, H. Fuzzy logic approach for threat prioritization in agile security framework using DREAD model. arXiv 2013, arXiv:1312.6836. [Google Scholar]
- Gamma, E.; Johnson, R.; Helm, R.; Johnson, R.E.; Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software; Pearson Deutschland GmbH: Hallbergmoos, Germany, 1995. [Google Scholar]
- Kausar, M.; Al-Yasiri, A. Using distributed agile patterns for supporting the requirements engineering process. In Requirements Engineering for Service and Cloud Computing; Springer: Berlin/Heidelberg, Germany, 2017; pp. 291–316. [Google Scholar]
- Tasharofi, S.; Ramsin, R. Process patterns for agile methodologies. In Proceedings of the Working Conference on Method Engineering; Springer: Berlin/Heidelberg, Germany, 2007; pp. 222–237. [Google Scholar]
- Wildt, D.; Prikladnicki, R. Transitioning from distributed and traditional to distributed and agile: An experience report. In Agility Across Time and Space; Springer: Berlin/Heidelberg, Germany, 2010; pp. 31–46. [Google Scholar]
- Wang, Y.J. Applying FMCDM to evaluate financial performance of domestic airlines in Taiwan. Expert Syst. Appl. 2008, 34, 1837–1845. [Google Scholar] [CrossRef]
- Yalcin, N.; Bayrakdaroglu, A.; Kahraman, C. Application of fuzzy multi-criteria decision making methods for financial performance evaluation of Turkish manufacturing industries. Expert Syst. Appl. 2012, 39, 350–364. [Google Scholar] [CrossRef]
Search Category | Keywords |
---|---|
Communication | Communication, cross-team communication, |
team communication, outsourcing communication, | |
offshore communication, communication technology, | |
communication tool. | |
Coordination | Coordination, coordinate teams, coordination tools, |
coordination technology, offshore coordination. | |
Offshoring Agile, Distributed agile, Offshore Development, | |
global software development, global agile development, | |
global software, offshore software development, | |
Offshore Software Development | distributed development, distributed development teams, |
global software, development, global development, | |
outsourcing development, engineering, global | |
software engineering. | |
Agile, agile practice, agile methods, Scrum, Scrum method, | |
Agile Practices | Scrum practice, XP, extreme programming, XP method, |
XP practice |
No. | Category | Challenge |
---|---|---|
1. | Requirements | Misunderstanding of requirements leads to dependency on expert decisions. |
Lack of meeting minutes to clarify requirements. | ||
Misunderstood requirements across sites. | ||
Lack of involvement of developers and tests in requirement meetings. | ||
Lack of task awareness | ||
Lack of trust | ||
Early communication difficulty | ||
Difficulty in team formation | ||
Less understanding of teamwork across the sites | ||
2. | Team Configuration | Difficulty caused due to management of items by different people |
Problems in knowledge sharing | ||
Cultural differences in communication | ||
Technical barriers to setup a video conference | ||
Lack of required formal documentation. | ||
Lack of training. | ||
3. | Customer Communication | Less frequent communication with customers. |
Hiding information from customers. | ||
Lack of feedback. | ||
4. | Meetings | Reduced communication opportunities |
Lack of face-to-face and informal communication | ||
Long-time communication using technology | ||
Meeting only at one site | ||
5. | Project Characteristics | Tendency to lose track of the overall work process |
Difficulty in keeping areas separate | ||
Lack continuous integration | ||
Lack of process improvement knowledge. | ||
6. | Organizational Factors | Extra cost due to training teams |
Issues in creating a shared understanding of change requests | ||
Difficulty in creating transparency among sites | ||
Lack of organizational support. |
Category | ||||
---|---|---|---|---|
Management Patterns | Communication Patterns | Collaboration Patterns | Verification Patterns | |
Pattern Name | Distributed Scrum of Scrum | Global Scrum Board | Collaborative Planning Poker | Project Charter |
Local Setup Meeting | Central Code Repository | Follow-the-sun | Onshore Reviews Meetings | |
Local Sprint Planning | Asynchronous information Transfer | Collective Project Planning | ||
Local Pair Programming | Synchronous Communication | Visit onshore- offshore | ||
Asynchronous Retrospectives |
No. | Distributed Agile Pattern | Challenge | Solution |
---|---|---|---|
1. | Global Scrum Board | Lack of task awareness | A centralized global scrum board is maintained by all sites, which provides awareness of all the tasks to the team members. |
Less understanding of teamwork across the sites | Global scrum board helps keep all team members updated about each other’s tasks and progress, resulting in the team understanding each other’s work across sites. | ||
Difficulty caused due to management of items by different people | The global scrum board serves as a central board for sharing information, everyone has access to it, and this helps in the management of items by different people across different sites. | ||
Problems in knowledge sharing | Global scrum board helps in providing centralized access to all knowledge that is being shared across the sites. | ||
Lack of required formal documentation. | With constant updates on the global scrum board, all required information is shared. | ||
Hiding information from customers | We can give viewing access to the global scrum board to the customers so that they can see the progress of the project. | ||
Tendency to lose track of the overall work process | A The global scrum board helps in keeping track of the overall work process and project status. | ||
Issues in creating shared understanding of change requests | As the board is updated regularly it maps all change requests. | ||
2. | Central Code Repository | Less understanding of teamwork across the sites | All sites share a central code repository, which helps each site see each other’s progress. |
Difficulty caused due to management of items by different people | Code is shared in a central code repository, which helps in managing work done by different people | ||
Problems in knowledge sharing | Code repository aids in sharing knowledge of code across sites. | ||
Lack of required formal documentation. | While sharing code in a central repository, formal documentation is maintained so that each site can understand the work done. | ||
Tendency to lose track of the overall work process | All code is shared in a central code repository, it helps keep track of the work done. | ||
Lack continuous integration | The central code repository is updated regularly, which solves the issue of continuous integration problems. | ||
3. | Asynchronous Information Transfer | Lack of meeting minutes to clarify requirements | Asynchronous tools can be used to share meeting minutes. |
Asynchronous Information Transfer | As teams follow the follow-the-sun approach, regular updates are exchanged through asynchronous and synchronous tools. | ||
Difficulty in team formation | The team members depend highly on asynchronous information transfer through tools, which helps in team formation. | ||
Lack of training. | Asynchronous tools can be used to train teams. | ||
Less frequent communication with customers | With the use of asynchronous tools, information is also shared with the customers. | ||
Hiding information from customers | Customers can use asynchronous tools to inquire about any aspect of the project. | ||
Lack of feedback | Customers can give continuous feedback using asynchronous tools. | ||
Reduced communication opportunities | Proper use of asynchronous tools can provide the required communication among sites. | ||
Lack of face-to-face and informal communication | Asynchronous tools like Slack encourage informal communication. | ||
Long-time communication using technology | Initially set agenda through asynchronous tools for meetings before setting up synchronous meetings. This helps in keeping the meeting on-schedule. | ||
Meeting only at one site | With the use of asynchronous tools, combined meetings can be held across sites, by sorting different time zone issues. | ||
Lack of process improvement knowledge | Asynchronous tools keep all sites informed about improvements in the project. | ||
Issues in creating shared understanding of change requests | Through asynchronous tools, the procedure to accept application of the change request can be discussed. | ||
Difficulty in creating transparency among sites | Asynchronous tools provide regular project updates that result in transparency among the sites. | ||
4. | Synchronous Communication | Misunderstood requirements across sites | As teams follow the follow-the-sun approach, regular updates are exchanged through asynchronous and synchronous tools. |
Difficulty in team formation | Team members continuously update each other’s progress through synchronous communication, which encourages team formation. | ||
Lack of training | Synchronous tools can be used to train teams. | ||
Less frequent communication with customers | Synchronous tools are used to update the progress of the project to the customers. | ||
Hiding information from customers | Customers can use synchronous tools to inquire about any aspect of the project. | ||
Lack of feedback | Customers can give continuous feedback using asynchronous tools. | ||
Reduced communication opportunities | Proper use of both asynchronous and synchronous tools can provide the required communication among sites. | ||
Lack of face-to-face and informal communication | With voice and video tools; face-to-face communication gap can be reduced. | ||
Long-time communication using technology | Initially set agenda through asynchronous tools for meetings before setting up synchronous meetings. This helps in keeping the meeting on-schedule. | ||
Meeting only at one site | With the use of synchronous tools, combined meetings can be held across sites, by sorting different time zone issues. | ||
Lack of process improvement knowledge | Synchronous tools keep all sites informed about improvements in the project. | ||
Extra cost due to training teams | With the help of synchronous tools, online training can be conducted. | ||
Issues in creating shared understanding of change requests | With the help of synchronous tools, the procedure to accept application of the change request can be discussed. | ||
Difficulty in creating transparency among sites | Synchronous tools provide regular project updates that result in transparency among the sites | ||
5. | Collective Planning Poker | Early communication difficulty | Due to collaborative planning poker, team members are encouraged to interact with each other, which reduces early stage communication difficulty. |
Difficulty in team formation | This activity also helps the team members to understand each others technical skills, facilitating team formation activity. | ||
Difficulty in creating transparency among sites | With collaborative planning poker, everyone works together in estimating tasks, which creates transparency of the project timeline. | ||
6. | Follow the sun | Difficulty in keeping areas separate | By using the follow-the-sun approach, each site works according to their own time zone and works on their separate sprint. |
7. | Collective Project Planning | Misunderstood requirements leading to dependency on expert decisions | Since the whole team takes part in project planning activity, the chance of misunderstanding of requirements is reduced. |
Misunderstood requirements across sites | When the team is co-located for the planning activity, they divide the tasks among the sites, which helps in removing the chance of misunderstanding requirements among the sites. | ||
Lack of involvement of developers and tests in requirement meetings | All team members take part in this activity; hence, giving a chance to all developers and testers to collaborate with each other. | ||
Early communication difficulty | As the whole team works together to develop the project plan, it gives them the opportunity to interact with each other and overcome early stage communication issues. | ||
Difficulty in team formation | As the team meets and interacts during the early stages of planning they get to know each other personally, which aids in team formation activity. | ||
Difficulty in creating transparency among sites | At the start of the project all team members do the project planning activity together; this helps in creating transparency among sites. | ||
8. | Visit Onshore Offshore | Misunderstood requirements leading to dependency on expert decisions | Since the whole team takes part in project planning activity, the chance of misunderstanding requirements is reduced. |
Lack of trust | Despite this being a costly activity it is required that the onshore and offshore team members visit each other in order to establish trust. | ||
Cultural difference in communication | By visiting each other’s locations, team members can learn about different cultures, which aids in better communication. | ||
Technical barriers to set-up video conference | While visiting each other, they can select and set up tools to use for communication. |
Linguistic Terms | Corresponding Weight of Importance |
---|---|
Extremely Agree | (0.9, 1.0, 1.0) |
Moderately Agree | (0.7, 0.9, 1.0) |
Slightly Agree | (0.5, 0.7, 0.9) |
Neutral | (0.3, 0.5, 0.7) |
Slightly Disagree | (0.1, 0.3, 0.5) |
Moderately Disagree | (0.0, 0.1, 0.3) |
Strongly Disagree | (0.0, 0.0, 1.0) |
Linguistic Terms | Corresponding Weight of Importance |
---|---|
Very Useful | (0.9, 1.0, 1.0) |
Moderately Useful | (0.7, 0.9, 1.0) |
Marginally Useful | (0.5, 0.7, 0.9) |
Neutral | (0.3, 0.5, 0.7) |
Slightly Useless | (0.1, 0.3, 0.5) |
Moderately Useless | (0.0, 0.1, 0.3) |
Strongly Useless | (0.0, 0.0, 1.0) |
Experts | Corresponding TFNs (Weighting) of Patterns | |||||||
---|---|---|---|---|---|---|---|---|
P1 | P2 | P3 | P4 | P5 | P6 | P7 | B | |
E1 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E2 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E3 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) |
E4 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.3, 0.5, 0.7) | (0.3, 0.5, 0.7) | (0.3, 0.5, 0.7) | (0.5, 0.7, 0.9) |
E5 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.5, 0.7, 0.9) |
E6 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) |
E7 | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E8 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) |
E9 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.3, 0.5, 0.7) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) |
E10 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.1, 0.3, 0.5) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.0, 0.1, 0.3) |
E11 | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E12 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.0, 0.1, 0.3) | (0.9, 1.0, 1.0) |
E13 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E14 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) |
E15 | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) |
E16 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) |
E17 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E18 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E19 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.1, 0.3, 0.5) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) |
E20 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.1, 0.3, 0.5) | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) |
E21 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) |
E22 | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.0, 0.1, 0.3) | (0.0, 0.1, 0.3) |
E23 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) |
E24 | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) | (0.3, 0.5, 0.7) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) |
E25 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.1, 0.3, 0.5) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.1, 0.3, 0.5) | (0.7, 0.9, 1.0) | (0.3, 0.5, 0.7) |
E26 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E27 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E28 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E29 | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.1, 0.3, 0.5) | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) |
E30 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) |
E31 | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E32 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E33 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.9, 1.0, 1.0) |
E34 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.1, 0.3, 0.5) | (0.1, 0.3, 0.5) |
E35 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E36 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.3, 0.5, 0.7) |
E37 | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.3, 0.5, 0.7) | (0.9, 1.0, 1.0) | (0.0, 0.1, 0.3) | (0.7, 0.9, 1.0) |
E38 | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) |
E39 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.0, 0.0, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E40 | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.0, 0.1, 0.3) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.5, 0.7, 0.9) | (0.3, 0.5, 0.7) | (0.7, 0.9, 1.0) |
E41 | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.5, 0.7, 0.9) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) |
E42 | (0.9, 1.0, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) | (0.9, 1.0, 1.0) | (0.7, 0.9, 1.0) |
wj | (0.7, 0.85, 0.97) | (0.82, 0.95, 0.99) | (0.57, 0.72, 0.87) | (0.74, 0.90, 0.97) | (0.67, 0.84, 0.94) | (0.61, 0.80, 0.91) | (0.59, 0.76, 0.86) | (0.68, 0.83, 0.92) |
Pattern # | wj = (l, m, u) | BNP_WJ | Rj | Over All Ranking | ||
---|---|---|---|---|---|---|
P1 | 0.75 | 0.9 | 0.97 | 0.873 | 0.13327 | 2 |
P2 | 0.82 | 0.96 | 0.99 | 0.923 | 0.14090 | 1 |
P3 | 0.55 | 0.73 | 0.88 | 0.720 | 0.10987 | 8 |
P4 | 0.74 | 0.9 | 0.98 | 0.873 | 0.13327 | 3 |
P5 | 0.68 | 0.85 | 0.95 | 0.827 | 0.12614 | 4 |
P6 | 0.62 | 0.8 | 0.92 | 0.780 | 0.11902 | 6 |
P7 | 0.6 | 0.76 | 0.87 | 0.743 | 0.11343 | 7 |
P8 | 0.68 | 0.84 | 0.92 | 0.813 | 0.12411 | 5 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Kausar, M.; Mazhar, N.; Ishtiaq, M.; Alabrah, A. Decision Making of Agile Patterns in Offshore Software Development Outsourcing: A Fuzzy Logic-Based Analysis. Axioms 2023, 12, 307. https://doi.org/10.3390/axioms12030307
Kausar M, Mazhar N, Ishtiaq M, Alabrah A. Decision Making of Agile Patterns in Offshore Software Development Outsourcing: A Fuzzy Logic-Based Analysis. Axioms. 2023; 12(3):307. https://doi.org/10.3390/axioms12030307
Chicago/Turabian StyleKausar, Maryam, Noushin Mazhar, Muhammad Ishtiaq, and Amerah Alabrah. 2023. "Decision Making of Agile Patterns in Offshore Software Development Outsourcing: A Fuzzy Logic-Based Analysis" Axioms 12, no. 3: 307. https://doi.org/10.3390/axioms12030307
APA StyleKausar, M., Mazhar, N., Ishtiaq, M., & Alabrah, A. (2023). Decision Making of Agile Patterns in Offshore Software Development Outsourcing: A Fuzzy Logic-Based Analysis. Axioms, 12(3), 307. https://doi.org/10.3390/axioms12030307