The software development process is a complex activity that has interrelating steps to produce software products. Human related social factors such as user motivation, engagement, communication and collaboration issues affect the activities performed by software development organizations. In fact, software engineering researchers seek better ways to overcome the human related issues so as to improve the quality in software development. Consequently, research has been conducted to introduce new methodologies, techniques and concepts. As such, gamification has been introduced as a novel technique to enhance the software development process and ultimately resolve some of the identified obstacles that are related to human factors. However, there is a bias to adopt the gamification into the software development process because there are still insufficient evidences about its positive outcomes. In this study, a systematic literature review was rigorously conducted to investigate the application and to reveal the benefits of gamification in the software development landscapes. This study contributes to the area of software engineering research by proposing a classification approach to categorize gamification studies in software development landscapes. The results of this research suggest that there has been a significant increase in empirical and theoretical studies that were recently published and many positive steps being taken towards better integration of gamification in software development organizations.
Yazılım geliştirme süreci, yazılım ürünleri üretmek için birbirini takip eden adımlardan oluşan karmaşık bir aktivitedir. Kullanıcıların motivasyonu, iletişimi, katılımı ve iş birliği gibi insan odaklı faktörler, yazılım geliştirme firmaları tarafından gerçekleştirilen bu aktiviteleri büyük ölçüde etkilemektedir. Bu yüzden, yazılım mühendisliği araştırmacıları, yazılım geliştirme süreçlerindeki kaliteyi artırmak ve insan kaynaklı bu sorunları çözmek için yeni ve daha iyi yöntemler araştırmaktadırlar. Bu sebeple, son zamanlarda bu konu ile ilgili yeni metodolojileri, teknikleri ve kavramları ortaya koyan araştırmalar yapılmaktadır. Buna bağlı olarak, oyunlaştırma kavramı yazılım geliştirme süreçlerini iyileştirmek ve insan kaynaklı faktörlerin birçoğunu çözmek için yeni bir teknik olarak tanıtılmıştır. Ancak bu yöntemin yazılım geliştirme süreçlerine olan olumlu katkıları ile ilgili hala yeterince kanıt bulunmadığından, bu yöntemin yazılım geliştirme süreçlerinde kullanılmasıyla ilgili birtakım kuşkular bulunmaktadır. Bu tez, oyunlaştırma kavramının yazılım geliştirme süreçlerine olan faydalarını göstermek için titizlikle yürütülmüş bir sistematik gözden geçirme çalışmasını içermektedir. Bu çalışma, yazılım geliştirme alanlarında oyunlaştırma ile ilgili çalışmaları kategorize etmek için sınıflandırma yaklaşımını önererek yazılım mühendisliği alanındaki araştırmalara katkı sağlamaktadır. Bununla ilgili araştırma sonuçları ise hem teorik hem de deneysel çalışma yayınlarında belirgin bir artış olduğunu ve oyunlaştırmanın yazılım geliştirme süreçlerine entegre olabilmesi adına bir çok olumlu adımın atılmakta olduğunu göstermektedir.