Yazılım projeleri personeli seçiminde yapay sinir ağları tekniğinin kullanılması ve bir uygulama
Use of artificial neural networks technique of software projects personnel selection and an application
Yazar: GÜLAY GENÇ EROĞLU
Danışman: PROF. DR. BÜLENT SEZEN
Gebze Teknik Üniversitesi / Sosyal Bilimler Enstitüsü / İşletme Ana Bilim Dalı
Derece: Yüksek Lisans, 2019
Konu: Çalışma Ekonomisi ve Endüstri İlişkileri = Labour Economics and Industrial Relations ; İşletme = Business Administration
Dizin: Hücresel yapay sinir ağları = Cellular artificial neural networks ; Personel seçimi = Personnel selection ; Yazılım projeleri = Software projects ; Yazılım sektörü = Software sector ; İşe alma = Recruitment

Özet:
Yazılım projeleri, kurumun ihtiyaçlarını karşılamaya veya süreçlerini iyileştirmeye yönelik, belli bir kapsam ve bütçe dâhilinde, başlangıç ve bitiş tarihi belli olan, belirli hedeflere sahip teknoloji yaşam döngüsüdür. Yazılım projelerinin başarısız olmasının en önemli sebeplerinden biri doğru personelin doğru projelere konumlandırılmamasıdır. 
Bu çalışmada daha spesifik ve artık olmazsa olmaz bir alan olan yazılım projeleri için çalışacak kişilerin uygunluğunu ölçecek şekilde Makine Öğrenimi teknikleri kullanarak, proje başarısını arttırmak ve başarılı sonuçlar elde etmek için göz önüne alınması gereken parametreler önerilmiştir. 
Yazılım projelerinde çalışacak personelin seçimi için çoklu kriterlerin kullanılacağı bir yöntem ile ilerlemek, projelerin başarılı olarak sonuçlanması için gerekli parametrelerden biri olan kaynak probleminin çözümlenmesini kolaylaştıracaktır. Literatürde tanımlı ve projenin başarılı olmasını etkileyen; Kritik Başarı Faktörleri'ne (KBF) dayalı olarak projenin başarısız olmasının analiz edilen kök-nedenleri de dikkate alınarak anket oluşturulmuştur. Veri analizinde kullanılan veriler, anketteki soruların cevabını kapsamaktadır. Anketimiz banka yazılım projelerinde çalışmış 105 katılımcı tarafından doldurulmuştur. Ankette çalışılan projenin özellikleri ve ilgili projede çalışmış personelin yetenekleri toplanmıştır. Projeler benzerliklerine göre gözetimsiz öğrenme tekniği ile sınıflandırılmıştır. Sınıflandırma için k-ortalama (k-means) kümeleme algoritmasından yararlanılmıştır. Sonuçta yeni geliştirilecek proje değerleri sisteme girildiğinde, projenin sınıflandırılmasının doğru olduğu görülmüştür. Yeni projelerde çalışabilecek adayların, bu sınıflandırmaya uyumluluğu makine öğreniminin öğrenme yöntemlerinden biri olan gözetimli öğrenme tekniği ile belirlenmiştir. Adayı yeni geliştirilecek projeye seçebilmek ve sistemi eğitmek için gözetimli öğrenme metotlarından Yapay Sinir Ağları'ndan (YSA) faydalanılmıştır.  Bu analiz sonucunda ilgili proje için çalışacak adayların daha önce de aynı kategoride çalışan adaylardan seçildiği, yapılan sağlama testleriyle izlenmiştir.
Anahtar Kelimeler: Yazılım Proje Yönetimi Riskleri, Personel Seçimi, Veri Analizi, Yapay Sinir Ağları, K-ortalama, Makine Öğrenimi

Abstract:
Software projects are a technology lifecycle with specific objectives, with a start and end date, within a scope and budget, to meet the requirements of the organization or to improve its processes. 
In the study, we proposed the parameters that should be considered in order to increase project success and achieve successful results by using machine learning techniques to measure the suitability of people who will work for software projects.
Defined in the literature and affecting the success of the project; based on the Critical Success Factors a questionnaire was created taking into account the root causes of the project's failure. The data used in the data analysis includes the answers to the questions in the survey. The characteristics of the project and the capabilities of the employee who worked in the project were collected. The projects were classified according to their similarities with unsupervised learning technique. The k-means clustering algorithm was used for classification. The applicability of new projects to this classification was determined by supervised learning technique which is one of the learning methods of machine learning. Supervised learning methods and artificial neural networks algorithm were used to select the candidate for the new project and to train the system. As a result of, it was observed that the candidates who will work for the related project were selected from the candidates who worked in the same category before.

Keywords: Software Project Management Risks, Employee Selection, Data Analysis, Artificial Neural Networks, K-Means, Machine Learning