Modularization of software libraries
Yazılım kütüphanelerinin gruplandırılması
- Tez No: 981574
- Danışmanlar: PROF. DR. HASAN SÖZER
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Doğrusal tamsayı programlama, Linear integer programming
- Yıl: 2025
- Dil: İngilizce
- Üniversite: Özyeğin Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Bilimleri Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: Belirtilmemiş.
Özet
Yazılım kümeleme yaklaşımlarının çoğu, etkili bir kümeleme için uyumluluk ve bağımlılı-ğı dengelemeye odaklanmaktadır. Ancak, yazılım kütüphanelerinin benzersiz özellikleri göz önünde bulundurulduğunda kümeleme ölçütleri farklı şekilde ele alınmalıdır. Bu sistemlerde, modüllerin birbirine olan bağımlılıkları yerine ortak kullanım kalıpları tarafın-dan tanımlanan uyumluluk birincil kriter olarak ortaya çıkmaktadır. Modüller, birbirleriyle güçlü bir şekilde uyumluluğu için değil, genellikle diğer modüller tarafından birlikte kullanıldıkları için gruplandırılmıştır. Bu bakış açısına göre yeni bir optimizasyon modeli önerilmiştir ve etkinliğini iki vaka çalışmasıyla değerlendirilmiştir. İlk çalışma, tüketici elektroniği alanından bir endüstriyel uygulamayı içermektedir. İkinci çalışma, mevcut paketlerin modüller adı verilen daha üst düzey bir paketleme ve kapsülleme birimine yeniden düzenlendiği Java 8'den Java 9 Platform Modül Sistemine geçişi incelemektedir. Değerlendirme, modüller tarafından ihtiyaç duyulan küme sayısı ve yinelenen modül içe aktarmalarının azaltılmasıyla ölçülen kümeleme verimliliğine odaklanmaktadır. Modüller kümelere ayrılarak gruplanınca, birkaç kümeyi içe aktarmak tüm modüllerini erişilebilir hale getirir ve genel içe aktarım sayısnı azaltmaktadır. Ancak bu azalmayı dengelemek amacıyla, her kümeye yalnızca o kümeyle ilgili modüller dahil edilmiştir. Modelimizin sonuçlarını, elle oluşturulan kümelerle ve mevcut kümeleme algoritmaları tarafından üretilen alternatif çözümlerle karşılaştırarak önemli performans iyileştirmeleri gösterilmiştir.
Özet (Çeviri)
Most existing software modularization approaches focus on balancing cohesion and coupling to cluster software modules effectively. However, the criteria for modularizing software libraries should be addressed differently, given their unique characteristics. In these systems, cohesion emerges as the primary criterion, defined by the common usage patterns of modules rather than their interdependencies. Modules are grouped not because of strong coupling with each other but because they are often used together by other modules. We propose a novel optimization model based on this perspective and evaluate its effectiveness with two case studies. The first study involves an industrial application from the consumer electronics domain. The second study examines the transition from Java 8 to the Java 9 Platform Module System, where existing packages are reorganized into a higher-level unit of packaging and encapsulation, called modules. Our evaluation focuses on the efficiency of clustering, measured by the number of clusters required by modules and the reduction in redundant module imports. By grouping modules into clusters, importing a few clusters makes all its modules available, reducing overall imports. However, the goal is to balance this reduction by ensuring that only relevant modules are included in each cluster to prevent redundancy. We compare the results of our model against manually created clusters and alternative solutions generated by existing clustering algorithms, demonstrating significant performance improvements.
Benzer Tezler
- Development/ testing of software for a cubesat for high resolution earth observation in a low earth orbit
Alçak dünya yörüngesinde yüksek çözünürlüklü dünya gözlemine yönelik bir cubesat yazılımının geliştirilmesi/test edilmesi
MEHREEN AZAM
Yüksek Lisans
İngilizce
2024
Havacılık ve Uzay Mühendisliğiİstanbul Teknik ÜniversitesiUçak ve Uzay Mühendisliği Ana Bilim Dalı
PROF. DR. ALİM RÜSTEM ASLAN
- Nesneye dayalı yazılımları servis odaklı modüllere ayrıştırma için öğrenme tabanlı bir yöntem
A learning-based method for extracting service-oriented modules in object-oriented software
URAL ERDEMİR
Doktora
Türkçe
2014
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Bilimleri Ana Bilim Dalı
DOÇ. DR. FEZA BUZLUCA
- Design and implementation of a domain specific language for event sequence graphs
Olay sıra çizgeleri için alana özgü dil tasarımı ve uygulaması
MERT KALECİK
Yüksek Lisans
İngilizce
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİzmir Yüksek Teknoloji EnstitüsüBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. TUĞKAN TUĞLULAR
PROF. DR. FEVZİ BELLİ
- İlgiye yönelik yaklaşımla yazılım geliştirme
Software development with aspect oriented approach
OYTUN KURTAR
Yüksek Lisans
Türkçe
2007
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolYıldız Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF.DR. OYA KALIPSIZ
- Automated procedure clustering for reverse engineering PL/SQL programs
PL/SQL programları için otomatik prosedür gruplama
METİN ALTINIŞIK
Yüksek Lisans
İngilizce
2016
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolÖzyeğin ÜniversitesiBilgisayar Bilimleri Ana Bilim Dalı
YRD. DOÇ. DR. HASAN SÖZER
YRD. DOÇ. DR. GONCA GÜRSUN