Kişisel özelliklerin yazılım kalitesine etkilerinin belirlenmesi
Determining the effects of personal factors on software quality
Yazar: ELÇİN GÜVEYİ
Danışman: PROF. DR. OYA KALIPSIZ ; DOÇ. DR. MEHMET SIDDIK AKTAŞ
Yıldız Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Yazılımda kalite kavramı hem geliştirici hem kullanıcı yönünden ele alınıp çeşitli kriterlere göre değerlendirilir. Kalite belirlenmesine yönelik süreçlerde incelenen ürünün insan emeği ve bilgisi ile hayata geçiriliyor olması, insan faktörünün önemini ortaya koymaktadır. Problemlerin çözümüne yönelik uygulamaların, insanın odağında olduğu bir geliştirme süreci ile meydana getirilmesi sebebiyle insana dair tüm faktörlerin, geliştirdiği yazılım ürürüne de etki edeceği aşikardır. 

Çalışmamızda kişileri etkilediği düşünülen faktörler ile geliştirdikleri yazılımlara ait kalite özellikleri arasındaki ilişki incelenmiştir. Karakter tipleri ile çevresel faktörlere ait etmenlerin, geliştiricilerin çalışma sürecini ve ortaya çıkan ürünü nasıl etkilediği tespit edilmeye çalışılmıştır. Bu amaçla lisans öğrencilerinin ilgili ders kapsamında geliştirdikleri Java projeleri metrik araçlarından geçirilerek iç kalite metrik değerleri belirlenmiştir. Projeyi geliştiren öğrencilerden bir de anket cevaplamaları talep edilmiştir. Bu anket ile birlikte kişilerin karakter tipleri belirlenmiş ve tecrübe, çalışma ortamı uygunluğu, projenin büyüklüğü, verilen süre ve iş yükünün çokluğu gibi faktörlere ait verdikleri bilgiler toplanmıştır.

Kişi faktörleri ve yazılım metrik değerleri arasında ilişki, yapılan korelasyon hesaplaması ile ortaya konmuştur. Korelasyon sonuçlarına göre kalite metrikleri ile en çok ilişki kişilerin "duyusal-sezgisel" olma özellikleri üzerinde bulunmuştur. Soyut düşünme ve hayal kabiliyetleri yüksek olan sezgisel kişilerin geliştirdikleri yazılımın karmaşıklığının, duyusal kişiliklere göre çok daha iyi seviyede olduğu tespit edilmiştir. Ayrıca tasarım ve işlevsellik gibi dış kalite özellikleri noktasında da sezgisel kişiliklerin daha iyi puan aldıkları görülmüştür. 

Çalışmamız ile ortaya koyduğumuz bir diğer sonuç, iç kalite ve dış kalite özelliklerinin birbirleriyle ne kadar paralel hareket ettiklerini belirlemek olmuştur. Dış kalite yönüyle yüksek puanlanan projeler, gerekli modüllere sahip olup beklenen işlevi gerçekleştirmekte ve kullanışlı arayüzlere sahip olmaktadır. Ancak bu projelerin iç kalite yönüyle aynı başarıda olamadıkları görülmüştür.  

Yapılan çalışma, yazılım kalite araştırmalarında insan faktörünün önemini ortaya koymakta, literatüre yeni bir bakış kazandıracak sonuçlar içermekte ve yazılım ekiplerinin planlamaları yapılırken yol gösterici olacağı düşünülen verileri barındırmaktadır.

Abstract:
The software quality is considered from the perspective of both the developer and the user and evaluated according to the determined criteria. The fact that the software is implemented with human effort and knowledge highlight the human factor at the point of quality evaluation. It is obvious that all human factors will affect the software product. Because the applications for the solution of the problems are developed with a development process in with the human in focus.

In our study, the relationship between the factors thought to affect people and the quality features of the software they developed were examined. We tried to determine how the character types and environmental factors affect the working process of the developers and the quality of the product. For this purpose, Java projects developed by undergraduate students were analyzed with metric analysis tools and internal quality metric values were determined. Students who developed the project were also asked to answer a questionnaire. With this questionnaire, the character types of the people were determined and the information they gave about factors such as experience, work environment suitability, size of the project, duration, and workload was collected.

The relationship between human factors and software metric values ​​was revealed by the correlation calculation. According to the correlation results, the most correlation with the quality metrics was found on the "sensitive-intuitive" characteristics of the individuals. It has been determined that the complexity of the software developed by intuitive people with high abstract thinking and imagination skills is much better than sensory personalities. They also scored better in terms of external quality features such as design and functionality.

Another result we have revealed with our study is about how parallel the internal quality and external quality features move with each other. Projects that are highly rated in terms of external quality have the necessary modules, perform the expected function, and have nice user interfaces. However, it was observed that these projects could not achieve the same success with the internal quality aspect.

The study reveals the importance of the human factor in software quality research, contains results that will bring a new perspective to the literature, and contains data that is thought to be guiding while planning the software teams.