İçeriğe geç
parazade

Hotfix Nedir?

Yayın: · Son güncelleme:

Hotfix Nedir? Kısaca

Hotfix, canlı ortamda kullanıcıları etkileyen kritik bir hatayı düzenli sürüm takvimini beklemeden acilen düzelten küçük yazılım değişikliğidir. Türkçede sıcak düzeltme ya da acil yama olarak da anılır.

Hotfix nedir?
İçindekiler
  1. Hotfix nedir?
  2. Süreç nasıl işler?
  3. Riskler ve dikkat edilecekler

Hotfix nedir?

Hotfix, yayındaki bir sistemde ciddi bir sorun çıktığında hemen uygulanan düzeltmedir. "Hot" kelimesi, sistem çalışırken ve sorun sıcakken müdahale edildiğini anlatır. Bir sonraki planlı sürümü beklemek kullanıcıya ya da işletmeye zarar verecekse hotfix yapılır.

Ödeme sayfasının çalışmaması, kullanıcıların giriş yapamaması ya da bir güvenlik açığının fark edilmesi tipik hotfix sebepleridir.

Süreç nasıl işler?

Hotfix ne demek sorusunun pratik tarafı bu süreçtir. Çoğu ekip bunun için ayrı bir dal kullanır. Canlıdaki kodun bulunduğu ana daldan hotfix/odeme-hatasi gibi bir dal açılır. Düzeltme yapılır, hızlıca test edilir ve yayına alınır.

Örneğin bir online mağazada cuma akşamı sepete ürün eklenemediğini düşünün. Hafta sonu kampanyası kaçmasın diye ekip yalnız o hatayı düzelten birkaç satırlık değişikliği o akşam canlıya alır. Ardından aynı düzeltme geliştirme dalına da aktarılır ki bir sonraki sürümde hata geri gelmesin.

Riskler ve dikkat edilecekler

Aceleyle yapılan değişiklik yeni hata doğurabilir. Bu yüzden hotfix olabildiğince küçük tutulur ve yalnız sorunlu noktaya dokunur.

Kısa da olsa test şarttır, en azından temel akışları kontrol eden bir duman testi yapılmalıdır. Hızlı geri dönüş planı da hazır olsun: düzeltme işleri kötüleştirirse önceki sürüme dönebilmelisiniz. Sık hotfix gerekiyorsa sorun genelde test sürecindedir.

Sıkça Sorulan Sorular

Hotfix ile patch arasındaki fark nedir?

Patch genel bir terimdir ve planlı ya da plansız her düzeltmeyi kapsar. Hotfix ise canlıdaki kritik bir sorun için acilen ve sürüm takvimi dışında yapılan yamadır.

Hotfix sonrası ne yapılmalı?

Düzeltme ana geliştirme dalına da aktarılmalı ve hatanın neden testlerden kaçtığı incelenmelidir. Benzer hatayı yakalayacak bir test eklemek tekrarını önler.

İlgili terimler

Yama(Patch)Yama (patch), bir yazılımdaki hatayı ya da güvenlik açığını düzeltmek için yayımlanan küçük kod değişikliğidir. Programın tamamını yeniden kurmadan yalnız sorunlu kısmı onarır ve genelde güncelleme olarak gelir.Canlı Ortam(Production Environment)Canlı ortam (production), yazılımın gerçek kullanıcılara hizmet verdiği, gerçek verilerle çalışan asıl sistemdir. Bir web sitesinin herkesin ziyaret ettiği hâli canlı ortamda çalışır ve buradaki hata doğrudan kullanıcıyı etkiler.Duman Testi(Smoke Testing)Duman testi (smoke test), yeni bir yazılım sürümünün en temel işlevlerinin çalışıp çalışmadığını hızlıca kontrol eden kısa testtir. Ayrıntılı testlere geçmeden önce sürümün test edilmeye değer olup olmadığını gösterir.MySQLMySQL, verileri tablolarda saklayan ve SQL diliyle yönetilen açık kaynak kodlu bir ilişkisel veritabanı yönetim sistemidir. Web sitelerinde, özellikle WordPress gibi PHP tabanlı sistemlerde çok yaygın kullanılır.NoSQLNoSQL, verileri sabit tablolar yerine doküman, anahtar-değer, sütun ailesi ya da graf gibi esnek yapılarda saklayan veritabanlarının genel adıdır. Adı "Not only SQL" (yalnızca SQL değil) olarak yorumlanır.İlişkisel Veritabanı(Relational Database)İlişkisel veritabanı, verileri satır ve sütunlardan oluşan tablolarda saklayan ve tabloları ortak anahtarlarla birbirine bağlayan veritabanı türüdür. Veriler SQL diliyle sorgulanır ve güncellenir.