Web paneline yeni bir sürüm çıktığında, kullanıcıların sayfayı yenilemesi yeterlidir. Mobil uygulamada ise yolculuk daha uzundur: Paket imzalanır, mağazaya gönderilir, inceleme sürecinden geçer, yayına alınır ve ancak kullanıcı güncellemeyi yüklediğinde cihazına ulaşır. Bu süreçte bir hata fark edilirse, web tarafındaki gibi anında geri almak mümkün değildir. Bu nedenle mobil acente uygulamalarında sürüm yönetimi, kendi kuralları olan ayrı bir disiplindir.
Sürüm numarası ve derleme numarası
Mobil uygulamalarda iki ayrı numara bulunur. Kullanıcıya görünen sürüm numarası, değişikliğin büyüklüğünü anlatır. Derleme numarası ise mağazaların her yüklenen paketi ayırt etmesi için sürekli artan bir değerdir. Aynı sürüm numarasıyla birden fazla derleme test kanalına gönderilebilir; ancak mağazaya yüklenen her paketin derleme numarası bir öncekinden büyük olmalıdır. Bu ayrımın baştan net kurulması, hangi cihazda hangi paketin çalıştığını anlamayı kolaylaştırır.
Test kanalları
Hem iOS hem Android tarafında, uygulamanın herkese açılmadan önce sınırlı bir gruba dağıtılabileceği test kanalları bulunur. Sağlıklı bir akış şöyle ilerler:
- İç test: Yazılım ve destek ekibi yeni paketi kendi cihazlarında kullanır.
- Kapalı test: Gönüllü pilot kullanıcılar, gerçek iş akışlarında uygulamayı dener.
- Üretim: Paket mağazada yayına alınır, tercihen aşamalı olarak.
Test kanallarında kullanılan paketlerin, üretim paketiyle aynı yapılandırmaya sahip olması önemlidir. Farklı ayarlarla derlenmiş bir test paketi, üretimde ortaya çıkacak bir sorunu gizleyebilir.
Aşamalı mağaza dağıtımı
Mağazalar, yeni bir sürümün kullanıcıların tamamına değil, önce bir bölümüne sunulmasına izin verir. Bu oran zamanla artırılır. Aşamalı dağıtım sırasında izlenmesi gereken başlıca göstergeler şunlardır:
- Çökme oranı: Yeni sürümde çökmesiz oturumların oranının önceki sürüme göre düşüp düşmediği.
- Donma ve yanıt vermeme: Özellikle düşük donanımlı cihazlarda.
- Temel akış başarısı: Oturum açma, müşteri arama ve teklif başlatma adımlarının tamamlanma oranı.
- Kullanıcı geri bildirimleri: Mağaza yorumları ve destek talepleri.
Bir sorun fark edildiğinde dağıtım duraklatılır. Sürümü zaten yüklemiş kullanıcılar için düzeltilmiş bir paket hazırlanır; henüz yüklememiş olanlar ise sorunlu sürümle hiç karşılaşmaz.
Zorunlu ve önerilen güncelleme
Bazı durumlarda eski bir uygulama sürümünün kullanılmaya devam etmesi kabul edilemez: Bir güvenlik düzeltmesi yayınlanmışsa ya da arka uç artık eski sürümün beklediği yapıyı destekleyemiyorsa. Bu tür durumlar için uygulama açılışta sunucuya sorarak desteklenen en düşük sürümü öğrenir.
- Önerilen güncelleme: Kullanıcıya yeni sürüm olduğu bildirilir ama çalışmaya devam edebilir.
- Zorunlu güncelleme: Kullanıcı, uygulamayı kullanmaya devam etmek için güncellemeyi yüklemelidir.
Zorunlu güncelleme güçlü bir araçtır ve dikkatli kullanılmalıdır. Sahada müşteri yanında teklif hazırlayan bir temsilcinin aniden uygulamayı kullanamaması ciddi bir sorun yaratır. Bu yüzden zorunlu güncellemeler mümkün olduğunca önceden duyurulmalı ve gerçekten gerekli durumlarla sınırlı tutulmalıdır.
İmzalama ve anahtar güvenliği
Mobil uygulama paketleri, geliştiriciye ait kriptografik anahtarlarla imzalanır. Bu anahtarlar, uygulamanın güncellemelerinin gerçekten aynı geliştiriciden geldiğini kanıtlar. Anahtarların kaybedilmesi ya da sızması, uygulamanın güncellenememesine veya kötüye kullanılmasına yol açabilir. İmzalama işleminin yayın hattında, korumalı bir ortamda ve erişimi sınırlı anahtarlarla yapılması bu nedenle temel bir güvenlik uygulamasıdır.
Çökme raporları ve sembol dosyaları
Üretim paketlerinde kod genellikle küçültülür ve okunması zorlaştırılır. Bir çökme raporunun anlamlı olabilmesi için, her sürüme ait sembol dosyalarının saklanması ve çökme takip aracına yüklenmesi gerekir. Aksi hâlde rapor, hangi satırda ne olduğunu göstermeyen anlamsız adreslerden ibaret kalır.
Web ve mobil arasında uyum
Mobil sürümler arasında kullanıcıların farklı hızlarda güncelleme yapması, arka ucun aynı anda birden fazla uygulama sürümünü desteklemesini gerektirir. Bu nedenle mobil sürüm planı, API değişiklikleriyle birlikte düşünülmelidir. Web panelinde yapılan bir değişikliğin, eski mobil sürümü kullanan bir temsilcinin ekranında tutarsızlık yaratmaması gerekir.
Acenteler için
Mobil sigorta uygulamasını sahada kullanan ekipler için en önemli beklenti, uygulamanın her gün aynı güvenle açılmasıdır. Aşamalı dağıtım, test kanalları ve dikkatli kullanılan zorunlu güncelleme bu beklentiyi destekler. Yeni sürümlerden önceden haberdar olmak ya da pilot kullanıcı olarak erken sürümleri denemek isteyen acenteler bunu yazılım sağlayıcılarıyla konuşabilir. Mobil ve web deneyimini birlikte incelemek için demo talebi oluşturabilirsiniz.
Sürüm notları ve uzaktan yapılandırma
Mağaza sayfasındaki sürüm notları çoğu zaman "hata düzeltmeleri ve iyileştirmeler" gibi genel bir ifadeyle geçiştirilir. Oysa sahada çalışan bir kullanıcı için neyin değiştiğini bilmek önemlidir. Kısa, anlaşılır ve kullanıcının işine dokunan değişiklikleri öne çıkaran notlar, güncellemeye olan güveni artırır. Önemli bir akış değiştiyse, uygulama içinde ilk açılışta kısa bir bilgilendirme göstermek de faydalıdır.
Uzaktan yapılandırma ise mağaza sürecine takılmadan bazı davranışları değiştirmeyi mümkün kılar. Bir ekranın gösterilip gösterilmeyeceği, bir sigorta şirketinin belirli bir branş için geçici olarak listeden çıkarılması ya da bir bilgilendirme mesajının yayınlanması, yeni bir uygulama sürümü gerektirmeden sunucudan yönetilebilir. Ancak bu yöntem, uygulamanın davranışını mağaza incelemesinden geçmemiş biçimde köklü olarak değiştirmek için değil, önceden tasarlanmış seçenekler arasında geçiş yapmak için kullanılmalıdır.
Uzaktan yapılandırma değerlerinin de yetkiyle değiştirilmesi ve her değişikliğin kayıt altına alınması gerekir. Aksi hâlde sahadaki uygulamanın davranışını etkileyen bir ayarın kim tarafından ve ne zaman değiştirildiğini anlamak zorlaşır.
Sonuç
Mobil sürüm yönetimi, geri almanın zor olduğu bir ortamda riski önceden azaltma sanatıdır. Net sürümleme, test kanalları, aşamalı dağıtım, ölçülü zorunlu güncelleme ve güvenli imzalama; saha ekiplerinin uygulamaya olan güvenini korur.