Bize yazın

Rehber

Mobil uygulama yaptırmak: süreç, süre ve fiyatı belirleyenler

Mobil uygulama yaptırırken en sağlam başlangıç, ilk sürümü yalnız en gerekli ekranlarla sınırlamaktır; iPhone ve Android uygulaması çoğu durumda tek bir kod tabanından çıkarılabilir. Süreyi ve fiyatı ekran sayısı, sunucu ihtiyacı ve ödeme, harita gibi bağlantılar belirler; kesin bir rakam ancak kapsam yazıya döküldükten sonra verilebilir. App Store ve Google Play hesapları sizin adınıza açılmalıdır; Apple'ın ve Google'ın ücretleri geliştirme ücretinden ayrı ödenir.

Kısaca

  • İlk sürümü küçük tutun: uygulamanın tek bir ana işi iyi yapması, on işi yarım yapmasından daha değerlidir.
  • iPhone ve Android uygulaması tek kod tabanından çıkabilir; Trivium Arena'yı React Native ile böyle geliştirdik.
  • Süreyi ve fiyatı kapsam belirler: ekran sayısı, sunucu ihtiyacı, ödeme ve harita gibi bağlantılar, tasarımın hazır olup olmadığı.
  • Mağaza hesapları sizin adınıza açılmalı; Apple üyelik yılı başına 99 ABD doları, Google Play tek seferlik 25 ABD doları kayıt ücreti alır.

Uygulama yaptırmadan önce ne hazırlanmalı?

Bir yazılımcıyla görüşmeden önce dört şeyi kısa notlar hâlinde yazmanız, hem doğru teklif almanızı hem de ilk görüşmenin verimli geçmesini sağlar. Uzun bir şartname gerekmez; birkaç paragraf yeterlidir.

  • Amaç: Uygulama hangi sorunu çözecek? "Müşterilerimiz telefonla randevu almakta zorlanıyor" gibi tek cümlelik bir tanım, uzun bir özellik listesinden daha yol göstericidir.
  • Kullanıcı: Uygulamayı kim, nerede ve ne sıklıkla kullanacak? Müşterilerinize mi sunulacak, yoksa sahadaki ekibiniz mi kullanacak? İkinci durumda internetsiz çalışma gibi farklı ihtiyaçlar doğar; bunun için saha ve stok uygulamaları sayfasına da bakabilirsiniz.
  • İlk sürüm listesi: Olmazsa olmaz özellikleri, "sonraki sürüme kalabilir" diyebileceklerinizden ayırın. Örneğin bir kuaför randevu uygulamasında hizmet listesi, boş saatleri görme, randevu alma ve hatırlatma bildirimi ilk sürüme girer; sadakat puanı ya da ürün satışı bekleyebilir.
  • Örnek uygulamalar: Beğendiğiniz ve beğenmediğiniz iki üç uygulamayı nedenleriyle not edin. Bu notlar, tasarım ve akış konusunda uzun açıklamalardan daha hızlı anlaşılır.

Ekran tasarımınız yoksa sorun değil; tasarım, kod yazılmadan önce tıklanabilir bir prototip olarak birlikte çıkarılabilir. Logonuz, renkleriniz ve uygulamada kullanılacak metinler varsa bunları da hazır tutun.

iPhone ve Android için ayrı ayrı mı yaptırmak gerekir?

Çoğu iş uygulaması için gerekmez. Mobil uygulama iki yolla geliştirilebilir: her platform için ayrı kodla (yerel geliştirme) ya da iki platforma tek koddan çıkan bir çapraz platform aracıyla. React Native bu ikinci yolun araçlarından biridir: kod bir kez yazılır, iPhone ve Android uygulaması aynı koddan üretilir.

KonuYerel geliştirme (iki ayrı kod)Çapraz platform (tek kod, ör. React Native)
Kod tabanıiPhone ve Android için iki ayrı uygulama yazılır.Tek kod tabanından iki uygulama çıkar.
Yeni özellikHer özellik iki kez yazılır.Özellik bir kez yazılır, iki platforma aynı anda gelir; test yine iki platformda yapılır.
Bakımİki ayrı kodun ayrı ayrı güncel tutulması gerekir.Güncellemelerin büyük kısmı tek yerde yapılır.
Platforma özel olanaklarPlatformun bütün olanakları doğrudan kullanılır.Çoğu olanağa erişilir; gerekirse o parça platforma özel olarak ayrıca yazılır.
Ne zaman uygun?Uygulama yalnız tek bir platformu hedefliyorsa ya da ana işi platforma özel olanaklara dayanıyorsa.İki platformda aynı işi yapan uygulamalar: katalog, randevu, sipariş, sadakat ve Trivium Arena gibi gerçek zamanlı uygulamalar.

Kendi oyunumuz Trivium Arena'da 1–4 kişi aynı soruyu aynı anda cevaplıyor; iPhone ve Android sürümleri React Native ile tek kod tabanından çıkıyor. Soru sırası, süre ve puan gibi adil olması gereken her şey sunucuda hesaplanıyor; telefon yalnızca gösteriyor ve cevabı iletiyor. Ayrıntılar yapım notunda.

Süreç hangi adımlardan oluşur?

Sağlıklı bir uygulama projesi, ekip büyüklüğünden bağımsız olarak dört adımdan geçer. Bizde her adımı aynı kişi yürütür; kodu yazan kişiyle doğrudan konuşursunuz.

  1. Tanışma ve kapsam: uygulamanın kimin için olduğu ve ilk sürümde hangi ekranların bulunacağı yazılı hâle getirilir. Teklif bu listeye dayanır.
  2. Prototip: ekranlar tıklanabilir bir taslak olarak hazırlanır ve telefonunuzda denenir. Akış onaylanmadan koda geçilmez; bu aşamada yapılan bir değişiklik, kod yazıldıktan sonra yapılandan çok daha az emek ister.
  3. Geliştirme ve test sürümleri: uygulama geliştikçe test sürümü telefonunuza kurulur. iPhone'da bunun için Apple'ın TestFlight aracı, Android'de Google Play'in test kanalları (dahili, kapalı ve açık test) kullanılır. İlerlemeyi rapordan değil, çalışan uygulamadan izlersiniz.
  4. Yayın ve bakım: mağaza sayfası metinleri, ekran görüntüleri ve gizlilik bilgileri hazırlanır; uygulama incelemeye gönderilir ve onaydan sonra yayına alınır. Ardından hata düzeltmeleri ve güncellemeler gelir.

Test sürümü aşamasında sizden beklenen, uygulamayı düzenli olarak kullanıp gördüklerinizi yazmanızdır. Geri bildirim ne kadar erken gelirse düzeltme o kadar kolay olur.

Süreyi ne belirler?

Bir uygulamanın kaç günde ya da kaç haftada biteceğini kapsam yazılmadan söylemek mümkün değildir. Aynı adı taşıyan iki "randevu uygulaması" bile içerdikleri ekranlar ve bağlantılar yüzünden çok farklı sürelerde bitebilir. Süreyi asıl belirleyen etkenler şunlardır:

EtkenNeden etkiler?
Ekran ve özellik sayısıHer ekran tasarlanır, kodlanır ve iki platformda denenir; liste uzadıkça süre de uzar.
Sunucu ihtiyacıYalnız veri saklamak ile canlı sonuç, eşleşme ya da anlık mesajlaşma gibi gerçek zamanlı özellikler arasında iş yükü farkı büyüktür.
Dış bağlantılarÖdeme, harita, bildirim ya da mevcut bir sistemle bağlantı; her biri ayrı kurulum ve test ister, bazıları üçüncü bir firmanın onayına bağlıdır.
Tasarımın durumuHazır ve onaylı bir tasarım varsa prototip aşaması kısalır; yoksa ekranlar baştan çıkarılır.
İçerikMetinler, görseller, ürün ya da hizmet listesi geç gelirse geliştirme beklemeye girer.
Geri bildirim hızıPrototipe ve test sürümlerine dönüşler geciktikçe takvim de kayar.
Mağaza süreçleriHer sürüm mağaza incelemesinden geçer; Google Play'de yeni kişisel hesaplar için yayından önce kapalı test zorunluluğu vardır (aşağıda).

Bu yüzden ciddi bir teklif, süreyi kapsam listesine bağlı olarak verir. Biz de tanışmadan sonra ilk sürümün kapsamını birlikte yazar, teklifte yazılı bir süre veririz.

Fiyatı ne belirler?

Fiyatı belirleyen etkenler, süreyi belirleyenlerle büyük ölçüde aynıdır; çünkü geliştirme ücretinin temeli harcanan emektir. Teklifleri karşılaştırırken şu kalemlere bakın:

  • Ekran ve özellik sayısı; ilk sürüme nelerin gireceği.
  • Kullanıcı hesabı, ödeme, bildirim, harita gibi bağlantılar.
  • Sunucu ihtiyacı: yalnız veri saklamak mı, yoksa gerçek zamanlı özellikler mi.
  • Tasarımın hazır olup olmadığı.
  • Yayından sonraki bakım ve güncelleme beklentisi.

Geliştirme ücretinin dışında kalan masrafları da baştan hesaba katın: mağaza hesaplarının ücretleri, sunucu ya da veritabanı hizmetinin süregelen maliyeti ve ödeme, harita, SMS gibi üçüncü taraf hizmetlerin kullanım ücretleri. Bunlar genellikle sizin adınıza açılan hesaplardan doğrudan hizmeti veren firmaya ödenir.

Fiyatı düşürmenin en etkili yolu pazarlık değil, kapsamdır: ilk sürümden çıkarılabilecek her özellik hem süreyi hem ücreti azaltır. Gerisi, uygulama kullanıcılarla buluştuktan sonra gerçek ihtiyaca göre eklenebilir.

Mağaza hesapları, ücretler ve inceleme

Uygulamanın App Store ve Google Play'de yayınlanması için iki ayrı geliştirici hesabı gerekir. Bu hesaplar sizin adınıza açılmalıdır: uygulama sizin mağaza sayfanızda yayınlanır ve ileride başka biriyle çalışmak isterseniz kimseye bağlı kalmazsınız.

  • Apple Developer Program: Apple'ın kayıt sayfasına göre ücret, üyelik yılı başına 99 ABD dolarıdır. Kâr amacı gütmeyen kuruluşlar, akredite eğitim kurumları ve kamu kurumları belirli şartlarla ücret muafiyeti isteyebilir.
  • Google Play Console: Google'ın yardım sayfasına göre tek seferlik 25 ABD doları kayıt ücreti alınır.
  • Kişisel mi, kurum hesabı mı? İki mağazada da kurum hesabı için D-U-N-S numarası gerekir (Apple'da kamu kurumları hariç). Kişisel hesapla yayınlanan uygulamada App Store'da satıcı olarak kişinin adı görünür; Google Play ise kişisel hesaplarda yasal adı, ülkeyi ve geliştirici e-posta adresini gösterir. Ayrıntılar Apple'ın ve Google'ın sayfalarında.
  • Google Play'de kapalı test: Google'ın test şartları sayfasına göre 13 Kasım 2023'ten sonra açılan kişisel hesaplarda uygulama, yayına başvurmadan önce en az 12 testçinin en az 14 gün boyunca kesintisiz katıldığı bir kapalı testten geçmelidir. Bu testçileri (çalışanlarınızı, tanıdıklarınızı ya da sadık müşterilerinizi) baştan belirlemek takvimi korur.
  • Gizlilik politikası: Apple (inceleme kuralları, 5.1.1) ve Google (kullanıcı verisi politikası), her uygulamanın gizlilik politikasına hem mağaza kaydından hem de uygulamanın içinden ulaşılabilmesini ister.
  • Hesap silme: Kullanıcıların hesap açabildiği uygulamalarda hesabın uygulama içinden silinebilmesi gerekir (Apple); Google Play buna ek olarak hesap silme talebi için bir web bağlantısı da ister (Google Play).

Yeni uygulamalar ve güncellemeler, yayından önce mağazanın incelemesinden geçer. Apple'ın App Review sayfasına göre inceleme olumsuz sonuçlanırsa, uyulmayan kurallar da belirtilerek ayrıntılar App Store Connect'te bildirilir; sorunlar giderildikten sonra uygulama yeniden gönderilir. Google Play'de de reddedilen bir güncelleme düzeltilip yeniden incelemeye gönderilir. Ücretler ve kurallar değişebilir; hesap açmadan önce bağlantılardaki güncel sayfalara bakın.

Yayından sonra ne olur?

Uygulama yayına girdiğinde iş bitmez; asıl kullanım o zaman başlar. Yayından sonraki dönemde üç tür iş çıkar:

  • Uyum: Apple ve Google, telefonların işletim sistemlerinin yeni sürümlerini düzenli olarak yayınlar; mağaza kuralları da zamanla güncellenir. Uygulamanın yeni sürümlerde sorunsuz çalıştığı denenmeli, gerekiyorsa güncellenmelidir.
  • Hata düzeltme ve takip: Gerçek kullanıcılar, testte görülmeyen durumları ortaya çıkarır. Mağaza panellerindeki çökme bilgileri ve kullanıcı yorumları düzenli olarak izlenmeli; sunucu tarafında da hata kayıtları ve yedekler takip edilmelidir.
  • Yeni özellikler: İlk sürüme girmeyen özellikler, kullanıcıların gerçekte neye ihtiyaç duyduğu görüldükten sonra sırayla eklenir.

Bu işlerin kim tarafından ve hangi şartlarla yapılacağı teslimden önce konuşulmalıdır. Bizde teslimden sonra çıkan hatalar düzeltilir; düzenli güncellemeler, sunucu takibi ve yeni özellikler için ayrıca bakım anlaşması yapılabilir.

Teklif alırken nelere dikkat edilmeli?

Teklifleri yalnızca rakamlarına göre değil, neyi kapsadıklarına göre karşılaştırın. Aşağıdaki soruların cevabı teklifte yazılı olarak bulunmalıdır:

  • Yazılı kapsam: İlk sürümdeki ekranlar ve özellikler tek tek sayılmış mı? Neyin dahil olmadığı da yazıyor mu?
  • Kaynak kod ve haklar: İş teslim edilip ödeme tamamlandığında kaynak kod ve uygulamanın hakları kimde olacak?
  • Hesap sahipliği: App Store, Google Play, sunucu ve alan adı hesapları sizin adınıza mı açılacak?
  • Test süreci: Test sürümünü ne zaman telefonunuza kurabileceksiniz? Google Play'deki kapalı test için testçileri kim bulacak?
  • Bakım: Teslimden sonra çıkan hatalar hangi şartlarla düzeltilecek? Düzenli bakım ayrı bir anlaşma mı?
  • Ayrı masraflar: Mağaza ücretleri, sunucu ve üçüncü taraf hizmetlerin ücretleri teklife dahil mi, değil mi?
  • İletişim: Proje boyunca kiminle konuşacaksınız? Kodu yazan kişiye doğrudan ulaşabilecek misiniz?

Negro Blanco Software bağımsız bir yazılım stüdyosudur; uygulamayı tasarlayan, yazan ve yayına alan aynı kişidir. Teklif ücretsizdir; kapsamı, süreyi ve ücreti en geç 2 iş günü içinde yazılı olarak göndeririz.

Uygulamanızı birlikte planlayalım

Ne yapmak istediğinizi, kimlerin kullanacağını ve aklınızda bir tarih olup olmadığını birkaç cümleyle yazın; ilk sürümün kapsamını birlikte çıkaralım.