Uygulamaların mobil ve masaüstü sürümlerinin kod tabanlı karşılaştırması: Keşifsel bir çalışma
Code-based comparison of software applications' mobile and desktop versions: An exploratory study
Yazar: SENA SÖNMEZ ÇİÇEK
Danışman: DR. ÖĞR. ÜYESİ AYÇA TARHAN
Hacettepe Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2018
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Belirli bir yazılım platformunun özellikleri, genellikle, bu platform için geliştirilen uygulamaların tasarımını ve kaynak kodunu etkilemektedir. Aynı uygulamayı hem masaüstü hem de mobil platform için üretecek geliştiriciler için platformun uygulamalar üzerinde nasıl bir etkisi olduğu bilmek faydalı olabilir. Literatürde Android, iOS ve BlackBerry gibi mobil platformların ve bu platformlar için geliştirilmiş uygulamaların farklı açılardan karşılaştırıldığı birçok araştırma bulunurken bir uygulamanın, mobil sürümlerine karşı masaüstü sürümlerinin özelliklerini değerlendiren veya karşılaştıran araştırmalar daha az sayıdadır. Bu tez ile mobil ve masaüstü platformlar için geliştirilmiş uygulamalar; tasarım ölçütleri, kaynak kod boyutu ve platform bağımlılığı açısından incelenmiş ve bu platformlar arasında bir benzerlik kurulup kurulamayacağı araştırılmıştır. Bu doğrultuda keşifsel araştırma yöntemini benimseyerek dört araştırma sorusu oluşturulmuştur: (1) Mobil ve masaüstü uygulamaların tasarımı, nesneye yönelik ölçütler bakımından nasıldır? (2) Mobil ve masaüstü uygulamaların büyüklüğü, kaynak kod boyutu bakımından nasıldır? (3) Mobil ve masaüstü platformlar için geliştirilmiş uygulamalar, farklı türden bağımlılıklar açısından nasıldır? (4) Bu iki platform için geliştirilmiş uygulamalar arasında benzerlik gözetilebilir mi? Bu soruları cevaplamak için, açık kaynaklı iki uygulamanın mobil ve masaüstü sürümlerinin kaynak kodları incelenmiş ve karşılaştırmalı olarak analiz edilmiştir. Tasarım değerlendirmesinde yararlanılan C&K ölçüt kümesinde yer alan, DIT ve WMC ölçütleri için elde edilen sonuçların masaüstü sürümlerde daha yüksek olduğu, RFC ve CBO ölçütü için elde edilen sonuçların ise mobil sürümlerde daha yüksek olduğu saptanmıştır. İkinci araştırma sorusu kapsamında her iki uygulama çifti için mobil sürümlerin kod boyutunun daha büyük olduğu gözlenmiştir. Üçüncü araştırma sorusu ile mobil sürümlerin üzerinde çalıştığı platforma daha bağımlı olduğu sonucu elde edilmiştir. Son araştırma sorusu ile diğer araştırma sorularının cevapları aranırken elde edilen veriler ve araştırmanın yapıldığı koşullar değerlendirildiğinde ise bu çalışmada incelenen, farklı dillerle geliştirilmiş denk özelliklere sahip mobil ve masaüstü uygulama çiftlerinin, platform benzerliğini tartışarak çıkarımlar yapmak için elverişli olmadığı sonucuna varılmıştır.

Abstract:
Characteristics of a given software platform usually have profound effects on the design and source code of applications developed in that platform. There are fewer studies evaluating or comparing the features of desktop versions against mobile versions of an application while there are many studies in the literature comparing mobile platforms such as Android, iOS and BlackBerry, and applications developed for these platforms from different angles. With this thesis, applications developed for mobile and desktop platforms have been examined in terms of design criteria, source code size and platform dependency and it has been researched whether a similarity can be established between these platforms. In this direction, four research questions were constructed by adopting the method of exploratory research: (1) How is the design of mobile and desktop applications, in terms of object oriented metrics? (2) How is the size of mobile and desktop applications in terms of source code size? (3) How are applications developed for mobile and desktop platforms different in terms of dependencies? (4) Can similarities be identified between the applications developed for these two platforms? To answer these questions, the source code for the mobile and desktop versions of two open source applications has been examined and analyzed in a comparative way. It was found that the results obtained for the DIT and WMC metrics in the C & K metric set, which is used in the design evaluation, are higher in the desktop applications, and the values for the RFC and CBO metrics are higher in the mobile applications. Within the scope of the second research question, it was observed that the code size of mobile versions was larger than desktop versions for both application pairs. With the third research question, it is concluded that the mobile applications are more dependent on the platform. When the results of the last research question and the other research questions are evaluated, it is concluded that the obtained data and the conditions of the research are not suitable for making inferences by discussing the similarity of the platforms with feature-equivalent mobile and desktop application couples which have been developed with different languages.