Yeni bir yazılım konuşmasında ilk gelen sorulardan biri şudur: bunu web uygulaması olarak mı yapalım, yoksa telefona indirilen bir mobil uygulama mı? Sorunun cevabı teknik bir tercih gibi görünse de aslında kullanıcının günlük hayatına bağlıdır. Bu yüzden ben önce telefonun elinde nasıl tutulduğuna bakıyorum, sonra koda.
Bu yazıda iki yapıyı yan yana koyuyorum: ne zaman web uygulaması yeterlidir, ne zaman mobil uygulama gerekir ve bu ikisinin arasında duran PWA ne işe yarar. Amacım hangisinin “daha iyi” olduğunu söylemek değil; sizin işinizde hangisinin daha az sürpriz çıkaracağını göstermek.
Web uygulaması nedir?
Web uygulaması, tarayıcının içinde çalışan bir yazılımdır. Kullanıcı bir adrese gider, giriş yapar ve ekranı kullanır. Mağazadan bir şey indirmesi gerekmez. Aynı kod, masaüstünde Chrome’da da telefonda Safari’de de çalışır.
Bunun bir sonucu, güncelleme işinin tek yerden yapılmasıdır. Bir düzeltmeyi yayınladığınızda kullanıcıların uygulamayı güncellemesini beklemezsiniz; bir sonraki açılışta yeni sürümü görür. Ekipte herkesin aynı sürümü kullandığından emin olmak, sahada çalışan kişiler için çok değerlidir.
Sınırı da bilmek gerekir. Tarayıcı, telefonun her özelliğine serbestçe erişemez. Kamera ve konum gibi izinler çoğu zaman kullanılabilir, ama arka planda çalışan bildirimler, bazı sensörler ya da ileri düzey dosya işlemleri sınırlıdır. Bu sınırlar, ihtiyacınız yoğun cihaz erişimi gerektiriyorsa mobil uygulamayı öne çıkarır.
Mobil uygulama ne zaman gerekir?
Mobil uygulama telefonun kendi çalışma ortamında, mağazadan indirilerek çalışır. Bu yapı, bildirimlerin güvenilir çalışması, arka planda iş yapılması ve cihaz özelliklerine derin erişim gerektiğinde avantajlıdır. Bir sağlık takip uygulaması, sürekli sensör verisi toplayan bir sistem ya da mağazada görünmesi şart olan bir tüketici uygulaması bu gruba girer.
Ama her mobil uygulama bir maliyet getirir. iOS ve Android için ayrı yapım ya da çapraz platform çerçevesi seçmek, her sürümü iki mağazaya göndermek, inceleme süreçlerini takip etmek ve eski telefon sürümlerini desteklemek gerekir. Bu iş bir kez bitmez; her yıl bakım olarak geri döner.
Dolayısıyla soru şu olmalı: uygulamanın hangi özelliği gerçekten telefonun kendisine ihtiyaç duyuyor? Cevap birkaç özellikten ibaretse, geri kalanını web uygulaması olarak kurup yalnız o özellik için mobil bir yapıya gitmek, çoğu zaman en akıllıca yoldur.
PWA: iki dünyanın arasında
PWA (Progressive Web App), tarayıcıda çalışan bir web uygulamasının telefonun ana ekranına eklenebilen ve bazı durumlarda internetsiz de açılabilen hâlidir. Kullanıcı ekrana bir kısayol koyar, uygulama tam ekran açılır ve sayfalar önbelleğe alındığında bağlantı kesilse bile önceden yüklenen ekranlar görünür.
Bu, saha ekipleri için özellikle işe yarar. Bir satış temsilcisi asansörde, bodrumda ya da kırsal bir noktada olabilir; sinyal kesildiğinde bile kayıt tutabilmesi gerekir. PWA bu durumda yeterli olabilir, ama her cihazın tarayıcısı aynı desteği vermez. Bu yüzden hedef cihazlarda gerçekten denemeden karar vermek doğru değildir.
Digitalpedi’nin kendi satış ekibi için kurduğu Saha Satış uygulaması bu yapıda. Harita üzerinden firma keşfi, satış hattı ve görüşme notları internetsiz sahada da çalışıyor. Bu yapının pratik karşılığı, uygulamanın sahada internetsiz de kayıt almaya devam etmesidir; ekran ise yine tarayıcı tabanlı bir uygulama olarak çalışır.
Karşılaştırma tablosu
Aşağıdaki tablo, kararı verirken bakılması gereken başlıkları özetliyor. Her satır bir ihtimal değil, bir soru.
| Ölçüt | Web uygulaması | PWA | Mobil uygulama |
|---|---|---|---|
| Kurulum | Adres yeterli | Ana ekrana eklenir | Mağazadan indirilir |
| Güncelleme | Tek yerden, anında | Tek yerden, anında | Her iki mağazada sürüm onayı |
| Cihaz erişimi | Sınırlı | Web sınırları içinde | Derin |
| Çevrimdışı çalışma | Sınırlı | Destekleniyorsa uygun | Uygun |
| İlk maliyet | Düşük | Düşük | Yüksek |
Tablo tek başına karar vermez. Ama bir ekranın satırları birden fazla kez “derin” ya da “yüksek” çıkıyorsa, mobil uygulamaya doğru yöneliyorsunuz demektir.
Hangi işte hangisi?
Bir kuralım var: iş telefon sensörüne değil, veriye ve akışa dayanıyorsa web tabanlı başlamak doğru olur. Kayıt, takip, onay, rapor ve müşteri bilgisi gibi işler bu gruba girer. Bu işlerde kullanıcının uygulamayı mağazadan indirmesi, sadece sürtünme yaratır.
Öte yandan kullanıcı çoğu zaman uygulamayı mağazada arayıp indirmeye alışkınsa, ya da bildirimler iş için hayati ise, mobil yapı daha az itirazla kabul edilir. Bu durum hedef kitlenin alışkanlığına bağlıdır, teknik üstünlüğe değil.
Birkaç soru bu seçimi netleştirir:
- Kullanıcı uygulamayı günde kaç kez açacak ve bunu ne kadar hızlı yapmalı?
- İnternet kesildiğinde hangi işlem sürmeli, hangisi bekleyebilir?
- Telefonun hangi özelliği olmazsa olmazdır?
- Ekip hangi cihazları kullanıyor, eski telefonlar hâlâ yaygın mı?
- Yayın ve güncelleme süreci kimin sorumluluğunda?
Bu soruların cevabı bir sayfa tutmalı. Cevabı yoksa, bunu yazılım firmasıyla konuşmadan önce ihtiyaç analizinde çözmek gerekir. Yazılım projesinde ihtiyaç analizi yazımda bu sorunun nasıl çıkarılacağını anlattım.
Maliyeti doğru karşılaştırmak
Mobil uygulama genellikle ilk yatırımı artırır, ama uzun vadeli maliyeti her zaman yükseltmez. Web uygulamasında her güncelleme tek kez yapılır, ama bağlantı ve barındırma gibi kalemler sürer. Mobil uygulamada iki mağaza, iki test ortamı ve platform güncellemeleri devreye girer.
Teklif karşılaştırırken aynı kapsamı yan yana koyun. Biri “web uygulaması” diyor, diğeri “mobil uygulama” diyorsa, ikisinin de hangi ekranları, hangi çevrimdışı işlemleri ve hangi bakım süresini içerdiğini yazılı görün. Kapsam yazılmamışsa fiyat da karşılaştırılamaz.
Özel yazılımın genel maliyet mantığı için özel yazılım maliyeti neye göre belirlenir yazımıza da bakabilirsiniz.
Kontrol listesi: karar vermeden önce
- Uygulamanın ilk sürümünde telefonun hangi özelliği gerçekten gerekli?
- Kullanıcı uygulamayı mağazadan indirmeye hazır mı?
- Çevrimdışı çalışma gerekiyorsa, hangi veri telefonda tutulacak ve nasıl eşitlenecek?
- Hedef cihazlarda PWA desteği test edildi mi?
- Güncelleme ve bakım sorumlusu belli mi?
- İki yıllık toplam maliyet, iki teklifte de aynı kapsamla mı hesaplandı?
Bu listenin çoğu maddesine evet diyebiliyorsanız, seçim genellikle kendiliğinden ortaya çıkar. Hayır diyebildiğiniz maddeler ise, teklif aşamasında sorulacak en iyi sorulardır.
Yazılım desteği arıyorsanız, Mersin merkezli çalışmalarımızı ve yapabildiklerimizi Mersin yazılım firması sayfasında, firmaya özel işleri ise İş Yazılımları sayfasında bulabilirsiniz.
