Araştırma Serisi Yayınları
2024 Yılı Yayınları
![blank](/wp-content/uploads/sites/8/1x1.png)
Altıgen Mimari
SAYI: 14
Projeler büyüdükçe yazılım geliştirme sürecinde karmaşıklık artar. Bu karmaşıklığı azaltmak ve yönetmek için katmanlı mimari ve sorumlulukların ayrımı gibi tasarım ilkeleri kullanılır. Bu sayımızda, Altıgen Mimari’nin (hexagonal architecture) port ve adaptörleri kullanarak karmaşıklığı nasıl yönettiği incelenmekte; uygulanması için önemli noktalar, avantaj ve dezavantajları değerlendirilerek, diğer mimari desenlerle karşılaştırılmaktadır. Ayrıca altıgen mimarinin ne zaman kullanılması gerektiği ve temelindeki fikrin önemi tartışılmaktadır.
Yazarlar
Ahmet ÖZEL
Editörler
Furkan TÜRK
M. Fatih DOĞMUŞ
Beyza ŞENEL
Tuğçe YILMAZ
Yayın Koord.
Kübra ERTÜRK
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
CockroachDB: Modern Çağın Dağıtık Veri Tabanı Çözümü
SAYI: 13
Mevcut veri tabanı sistemlerinin, modern uygulamaların ihtiyacı olan özellikleri bir arada sunamaması üzerine NewSQL veri tabanı sistemleri geliştirilmiştir. Bu yeni yaklaşım, geleneksel veri tabanlarının sağladığı ACID ve sorgu dili esnekliğini; NoSQL veri tabanı sistemlerinin ölçeklenebilirlik, dağıtım kolaylığı ve hata toleransı gibi özellikleriyle birleştirmektedir. CockroachDB, NewSQL kavramının somut bir örneği olarak bu talepleri karşılamak üzere tasarlanmış, güçlü özellikleriyle ön plana çıkan, dağıtık mimarili bir veri tabanı çözümüdür. Bu sayımızda, CockroachDB’nin özellikleri, avantajları ve potansiyel uygulama senaryoları detaylı ele alınmıştır.
Yazarlar
Deren TOY
Hatice DURMUŞ
İmtisal AKDEDE
Editörler
Berkan YILDIRIM
Beyza ŞENEL
Tuğçe YILMAZ
Yayın Koord.
Kübra ERTÜRK
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Ölçme ve Analiz Faaliyetlerinin Süreç İyileştirmedeki Yeri
SAYI: 12
Yazılım ürünlerinin önemi arttıkça, yazılım mühendisliği süreçleri araştırmacılar ve uygulayıcılar arasında ilgi çekmektedir. Organizasyonların yazılım süreçlerini düzenli olarak değerlendirip geliştirmesi oldukça önemlidir. Bu sayımızda, yazılım geliştiren organizasyonlardaki süreç yönetimi, ölçme ve analiz incelenerek süreç iyileştirme çalışmaları ele alınmıştır.
Yazarlar
Melike TAKIL
Editörler
Berkan YILDIRIM
Beyza ŞENEL
Tuğçe YILMAZ
Yayın Koord.
Kübra ERTÜRK
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Monolitik Mimariden Mikroservis Mimariye Dönüşüm
SAYI: 11
Monolitik mimari, uzun yıllardır yazılım geliştirmenin belirleyici bir modeli olarak hizmet vermiştir ve birçok projede başarılı bir şekilde kullanılmıştır. Ancak teknolojinin hızla evrildiği bir çağda, organizasyonlar daha çevik, ölçeklenebilir ve hızlı bir şekilde geliştirme yapma ihtiyacı duymaktadır. Serinin bu sayısında monolitik mimariden mikroservis mimariye dönüşümde karşılaşılan zorluklara ve bu zorlukların çözümlerine yer verilmiştir.
Yazarlar
Sabiha Deniz ACUN
Editörler
İhsan Baran SÖNMEZ
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Mikroservis Mimarisinin Temelleri
SAYI: 10
Yazarlar
Gökçenur ÇINAR
Editörler
Özay DUMAN
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Testcontainers ile Entegrasyon Test Yazım Teknikleri
SAYI: 09
Yazarlar
Muhammet Fatih
DOĞMUŞ
Editörler
Veli Can AYDIN
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
2023 Yılı Yayınları
![blank](/wp-content/uploads/sites/8/1x1.png)
Yazılım Testleri ve Test Odaklı Geliştirme Yaklaşımının Kullanımı
SAYI: 08
Yazarlar
Özlem GÜNİNDİ
Editörler
Abdulkadir Taha YAMAÇ
Beyza ŞENEL
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Bulut Kullanımı
SAYI: 07
Yazılım teknolojilerinin öneminin ve bu teknolojilerle geliştirilen uygulamaların kullanımının gün geçtikçe artması, bu uygulamalar için gereken bilişim altyapısı ihtiyaçlarını da artırmıştır. Bu ihtiyaçlar geliştirilen uygulamanın türüne ve kullanımına bağlı olarak maliyet, kapasite, güvenlik gibi farklı alanlarda karşımıza çıkmaktadır. Yazılım kuruluşları, bilişim altyapısını kendileri yönetmekteyken, bu ihtiyaçları giderememe problemi ile karşı karşıya gelerek alternatif çözüm olarak bulut bilişim sistemleri ile karşılaşılmaktadır. Bu çalışmada bulut kullanmayan kuruluşların karşılaştığı problemler kategorilere ayrılarak ve örneklendirilerek incelenmiştir.
Yazarlar
Ahmet SAY
Editörler
Serkan KOÇ
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
REST API ve gRPC Mimarî Stillerinin Karşılaştırması
SAYI: 06
gRPC ve REST API, modern uygulama geliştirme süreçlerinde yaygın olarak kullanılan iki farklı mimarî stildir. Google tarafından geliştirilen gRPC, performans ve verimlilik odaklı bir yapı sunarken, REST API kullanılabilirlik ve basitlik üzerine kurulmuş daha genel bir yapıya sahiptir. gRPC, Protobuf adı verilen serileştirme formatını kullanarak verileri binary formatına dönüştürür, düşük bellek kullanımı ile de yüksek hızlı iletişim sağlar. REST API ise genellikle JSON formatını kullanarak verilerin aktarımını gerçekleştirir.
Bu çalışmanın amacı uygulama ihtiyaçları, performans, veri bütünlüğü, platform bağımsızlığı gibi faktörler göz önünde bulundurularak doğru mimarî stilin seçilmesinde okuyucuya rehberlik etmektir.
Yazarlar
Hüseyin ÇAMBAŞI
Editörler
Furkan TÜRK
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Spring Framework
SAYI: 05
Spring Framework, Java uygulamalarını geliştirmek için kapsamlı altyapı desteği sağlayan ve açık kaynak kodlu bir geliştirme platformudur. Son zamanlarda güncel teknolojiler arasında popülerliğini arttırmış ve en çok tercih edilen uygulama çerçevelerinden (framework) biri olarak öne çıkmıştır.
Spring Framework, Java dilinde uygulama geliştirirken kullanılan en önemli araçlardan biri olarak kabul edilmektedir. Bu framework, Java uygulamalarının geliştirilmesi sırasında sıkça karşılaşılan zorlukları ortadan kaldırmayı hedefler. Tüm program kodunu sıfırdan yazma çabasını ortadan kaldırarak uygulama yazma sürecini ve aşamalarını kolaylaştırır.
Bu çalışma kapsamında genel olarak Spring Framework kavramları, özellikleri, kullanılabileceği alanlar, neler yapılabileceği, tercih edilme durumları gibi konulara değinilmiştir.
Yazarlar
Abdulkadir Taha
YAMAÇ
Editörler
Hasan Çağrı TRAŞ
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Kimlik Doğrulama Altyapılarının Kullanımı
SAYI: 04
Kullanıcı kimlik doğrulaması ve yetkilendirilmesi için pek çok teknoloji mevcuttur. Bunlar arasında Apereo CAS, Keycloak, Gluu, Okta, Shibboleth, WSO2, AWS Cognito sayılabilir. Bu çalışma ile, açık kaynak olmaları, genişletilebilirlikleri ve kapsamları nedeniyle web tabanlı uygulamalar için güvenli tek oturum açma (Single Sign-On / SSO) hizmeti sunan Apereo CAS ve Keycloak teknolojileri incelenmiştir. Yazılım projelerinin önemli bir parçası olan kullanıcı girişi ve yetkilendirilmesi teknolojileri hakkında alternatifler araştırılmış ve Spring Framework ile bu alternatif teknolojilerin entegre edilebilirliği test edilmiştir. Bu çalışma, yazılım projelerine güvenlik katmanı eklemek isteyen bütün kamu kurumu ve özel sektörlerde kullanabilecek bir çerçevede ele alınmıştır.
Yazarlar
Deniz GÜRER
Editörler
Muhammet Fatih DOĞMUŞ
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Mikro Önyüz Mimarisi
SAYI: 03
Dünyanın giderek dijitalleştiği, her şeyin sanal ortama aktarıldığı bir dönemde yaşıyoruz. Son kullanıcıların zaman içerisinde değişen arzuları farklı ihtiyaçlara, farklı ihtiyaçlar yeni teknolojilere, yeni teknolojiler de bu ihtiyaçları karşılayan yazılım projelerinin hayata geçirilmesine zemin hazırlamıştır. Üretken bir döngü içerisinde dijital dönüşümlerin daha kolay yapılabilmesi için yeni teknoloji ve mimariler sürekli gelişti ve gelişmekte. Günümüzde oldukça popüler hâle gelen mikroservis ve mikro önyüz (micro frontend) mimarileri de bu döngü sonucunda ortaya çıkmıştır. Bu çalışmada, büyük ve karmaşık projelerin daha düşük maliyetler ile daha sürdürülebilir bir biçimde oluşturulmasına imkân sağlayan mikro önyüz mimarisi incelenmiştir.
Yazarlar
Sacit GÖNEN
Editörler
Ahmed Enis ERKAYA
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
CI/CD Süreç Yönetimi
SAYI: 02
Son dönemlerde yazılım geliştirme sektörü yavaş ama gerçek bir dönüşümden geçmektedir. Yazılımlar giderek her şeyin bir parçası hâline gelirken yazılım geliştiriciler, artan bu taleple daha fazla otomasyon yoluyla başa çıkmaya çalışmaktadır. Yeni özelliklerin ve uygulamaların hızlı dağıtımına yönelik yoğun talep nedeniyle Sürekli Entegrasyon (CI) ve Sürekli Teslimat (CD) prensipleri giderek daha fazla ve daha etkin kullanılır hâle gelmiştir. Bu çalışmanın amacı CI/CD pipeline yaklaşımı ile teslimat zaman çizelgesini, test yükü adımlarını ve kıyaslama görevlerini iyileştirerek teslimat sorunlarının üstesinden gelmektir.
Yazarlar
Ahmet CEYHAN
Editörler
Haluk AVCI
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER
![blank](/wp-content/uploads/sites/8/1x1.png)
Java’da Fonksiyonel Programlama
SAYI: 01
Java’da fonksiyonel programlama araçları; pratik işlevler yazmada-okumada oldukça kolaylık sağlamaktadır. Karmaşık döngüler, Stream API sayesinde sade bir hâle getirilebilir; bazı kontroller ve işlevler, birçok yerden çağırılabilecek fonksiyonel arayüzler kullanılarak kolay okunabilir, hata ayıklayabilir, test edilebilir ve yönetilebilir şekilde yazılabilmektedir. Bu çalışmada sayılan faydaların her birinin çalışma prensibi ayrı ayrı açıklanmış ve anlaşılması için kod örnekleri ve çıktıları belirtilmiştir.
Yazarlar
Serhat SAĞLIK
Editörler
Özay DUMAN
Sevinç KARAKAŞ
Tuğçe YILMAZ
Yayın Koord.
Elif ŞENYİĞİT
Tasarım
Şeyma KOÇER