İçeriğe geç

Hizmet

Masaüstü Yazılım Geliştirme

Windows bilgisayarlarda çalışan masaüstü yazılımları geliştiriyoruz: kullanıcının tıklayıp kullandığı uygulamaları ve ekranı olmayan, arka planda çalışan sistem yazılımlarını. Performansı, kurulumu ve güncellemeyi tasarımın baştan bir parçası sayıyoruz.

Masaüstü yazılım geliştirme hizmetimiz, Windows bilgisayarlarda çalışan uygulamaları ve arka plan hizmetlerini kapsar. Bir ekranı olan, kullanıcının tıklayıp kullandığı bir program da olabilir; hiç arayüzü olmayan, bilgisayar açıldığında sessizce çalışmaya başlayan bir sistem yazılımı da. İhtiyaç hangisini gerektiriyorsa onu geliştiririz.

Masaüstü yazılımların web ya da mobilden farkı, doğrudan kullanıcının bilgisayarında, yani sizin tam kontrol etmediğiniz bir ortamda çalışmasıdır. Bu yüzden performans, kaynak kullanımı, kurulum ve güncelleme gibi konular tasarım aşamasında ele alınır; sonraya bırakılacak ayrıntılar değildir.

Masaüstü yazılım hangi durumlarda tercih edilir?

  • İnternet bağlantısından bağımsız ya da yalnızca yerel ağda çalışması gereken işler.
  • Bilgisayarın dosya sistemine, ekranına, yazıcısına ya da bağlı cihazlarına doğrudan erişmesi gereken yazılımlar.
  • Kullanıcı bir şey yapmadan arka planda sürekli çalışması gereken hizmetler.
  • Kurum içindeki bilgisayarlar arasında veri aktaran ya da bağlantı kuran araçlar.
  • Bir web sitesinin tarayıcı sınırları içinde yapamayacağı işler.

Her iş için masaüstü yazılım gerekmez. Aynı işi web ile çözmek mümkün ve daha kolaysa bunu açıkça söyleriz; seçim ihtiyaca göre yapılır.

Karar verirken şu soruyu sorun: yazılım bilgisayarın kendisine mi, yoksa yalnızca bir veriye mi erişecek? İlkinde masaüstü, ikincisinde çoğunlukla web daha uygundur. Kullanıcıların kendi bilgisayarına bir şey kurmak zorunda kalmaması web yazılımının avantajıdır; masaüstüne karar verirken bu bedeli baştan hesaba katmak gerekir.

Arayüzlü uygulamalar ve arayüzsüz arka plan hizmetleri

Arayüzlü bir uygulamada ekran ve kullanıcı akışı projenin önemli bir parçasıdır. Bu durumda çalışma modelimiz Tasarım, Geliştirme, Test, Düzenleme ve Yeniden İnceleme aşamalarından oluşur. Aksi belirtilmedikçe arayüzü sade tutarız; masaüstü yazılımda kullanıcı çoğunlukla işini yapmaya çalışan bir çalışandır ve karşısına çıkan her fazladan düğme onun için bir yavaşlıktır.

Arayüzsüz yazılımda, yani kullanıcıya gösterilecek ekranı olmayan arka plan hizmetlerinde Tasarım aşaması yoktur; süreç Geliştirme, Test, Düzenleme ve Yeniden İnceleme olarak ilerler. Ekran çizmeye gerek kalmaz, ancak yazılımın nasıl davranacağı yine baştan konuşulur: ne zaman çalışacağı, bir hata alırsa ne yapacağı, kayıtları nereye yazacağı.

Örnek: Ekran Kaydedici

Ekran Kaydedici, arayüzsüz çalışan bir Windows sistem yazılımıdır. Bir firmanın "çalışanların ne yaptığı kayıt altında tutulsun" talebi üzerine geliştirdik; masaüstünü arka planda, kullanıcıyı rahatsız etmeden, ayarlanan süreli parçalar hâlinde video olarak kaydeder. Cihazlar bir web yönetim panelinden izlenir ve yönetilir. Arka planda çalışan bir yazılımın kullanıcının asıl işini yavaşlatmaması gerekir; bu, projenin ana tasarım ölçütlerinden biri oldu.

Çalışan izleme konusunun hukuki bir yönü de vardır. İhtiyatlı yaklaşımımızı çalışan izleme yazılımı ve KVKK yazısında anlattık.

Örnek: Uzak Masaüstü

Uzak Masaüstü uçtan uca (point-to-point) çalışan, arayüzlü bir Windows uygulamasıdır: bilgisayarları bir sunucu üzerinden birleştirmek yerine, aracı sunucu olmadan doğrudan birbirine bağlar. Cihaz listesinin kimde nasıl görüneceği ve hangi bilgisayarlara kimin bağlanabileceği gibi kararlar, bu tür bir uygulamada arayüz tasarımının da yetki tasarımının da parçasıdır.

Bir bilgisayarın ekranını canlı yayınlayıp yetkili izleyicilerin başka bir cihazdan izlemesini sağlayan Yayınlama ve İzleme yazılımımız ise Windows'ta çalışan bir yayın istemcisi, merkezî bir sunucu ve mobil ile masaüstü için bir izleyici uygulamasından oluşur; yani tek bir ihtiyaç birden fazla platforma yayılabilir.

Performansı etkilememek bir tasarım kararıdır

Arka planda çalışan yazılım, kullanıcının asıl işini yavaşlatmamalıdır. Bunu iyi niyetle değil, tasarımla sağlamaya çalışırız: yoğun işlemleri uygun zamanlara yaymak, gereksiz bellek ve işlemci kullanımından kaçınmak, diski ve ağı gereğinden sık meşgul etmemek. Ekran Kaydedici'de örneğin video kodlamada bilgisayardaki donanım hızlandırıcıları otomatik tespit edip uygun olanı seçerek işlemciyi az yormayı hedefledik. Geliştirme bittikten sonra sistem analiziyle yazılımın diğer programların çalışmasını engelleyip engellemediğine de bakarız; Ekran Kaydedici için yaptığımız analizlerde böyle bir etki görülmedi.

Yine de sonuç bilgisayarın donanımına ve üzerinde çalışan diğer programlara göre değişebilir. Bu yüzden yeni bir yazılımı önce küçük bir grupta, kendi ortamınızda denemenizi öneririz.

Kurulum, güncelleme ve test

Bir yazılımı birkaç bilgisayara kurmak ile çok sayıda bilgisayara kurmak aynı iş değildir. Planlama aşamasında kurulumun nasıl yapılacağını (tek tek mi, toplu mu), yazılımın hangi Windows sürümlerinde çalışacağını, ayarların nerede tutulacağını ve yeni sürüm çıktığında nasıl güncelleneceğini konuşuruz. Güncellemenin kullanıcıyı yarıda bırakmaması ve bir sorun çıkarsa eski sürüme dönülebilmesi de bu planın parçasıdır. Arka planda çalışan yazılımlarda ayrıca bilgisayar yeniden başladığında yazılımın kendiliğinden ayağa kalkması gerekir; Ekran Kaydedici'de bunu Windows açılışı ve zamanlanmış görev ile sağlıyor, kurucunun gerekli bileşenleri denetleyip eksikleri yüklemesine de önem veriyoruz.

Masaüstü yazılımın testi de web yazılımınkinden farklıdır, çünkü yazılım sizin kontrol etmediğiniz bilgisayarlarda çalışır. Test aşamasında farklı ekran çözünürlüklerini, yönetici hakkı olmayan kullanıcı hesaplarını, bilgisayarın uyku ve yeniden başlatma durumlarını, ağ bağlantısının kopup geri gelmesini ve bilgisayardaki diğer yazılımların (örneğin güvenlik yazılımlarının) etkisini ayrı ayrı denemeye çalışırız. Hepsini önceden öngörmek mümkün olmadığı için ilk kurulumların küçük bir grupta yapılmasını ve çıkan sorunların Düzenleme aşamasında toplanmasını öneririz.

Sürece katılım ve başlangıç

Geliştirme boyunca tasarım ve işleyiş kararlarına canlı olarak katılabilir, her aşamada ekran görüntüleriyle e-posta bildirimi alırsınız. Masaüstü yazılımınızın firmadaki diğer yazılımlarla veri alışverişi yapması gerekiyorsa bunu sistem entegrasyonu hizmetimiz kapsamında ele alırız.

Projeyi nasıl hazırlayacağınızdan emin değilseniz önce ihtiyacınızı yazın. Hazır olduğunuzda iletişim sayfamızdan durumunuzu kısaca anlatın; süre kapsama ve ekip yoğunluğuna göre belirlenir, bunu birlikte konuşuruz.

Sık sorulanlar

Masaüstü Yazılım: sorular ve yanıtlar

Masaüstü yazılımlarınız hangi işletim sisteminde çalışır?

Masaüstü yazılımlarımızı Windows için geliştiriyoruz. Yazılımın hangi Windows sürümlerinde çalışacağını planlama aşamasında, firmanızdaki bilgisayarların durumuna bakarak netleştiririz.

Arayüzsüz, arka planda çalışan yazılım nedir?

Kullanıcıya gösterdiği bir ekranı olmayan, bilgisayarda sessizce çalışan yazılımdır. Belirli aralıklarla bir iş yapan, veri toplayan ya da başka bir sistemle konuşan hizmetler bu türe girer. Ekran Kaydedici bu türde geliştirdiğimiz bir örnektir.

Arka planda çalışan yazılım bilgisayarı yavaşlatır mı?

Yavaşlatmaması bir tasarım ölçütümüzdür; kaynak kullanımını düşük tutacak biçimde geliştirir ve sistem analiziyle kontrol ederiz. Ekran Kaydedici için yaptığımız analizlerde diğer programların çalışması engellenmedi. Sonuç donanıma göre değişebileceğinden, yeni bir yazılımı önce küçük bir grupta denemenizi öneririz.

Yazılım çok sayıda bilgisayara nasıl kurulur ve güncellenir?

Kurulum ve güncelleme yöntemi planlama aşamasında kararlaştırılır: tek tek ya da toplu kurulum, ayarların tutulduğu yer ve yeni sürümlerin nasıl dağıtılacağı birlikte netleştirilir. Güncellemenin kullanıcıyı yarıda bırakmamasına ve gerekirse eski sürüme dönülebilmesine dikkat ederiz.

Aynı işi masaüstü yerine web ile çözmek daha mı iyi?

Bu işin niteliğine bağlıdır. Bilgisayarın dosyasına, ekranına ya da bağlı cihazlarına doğrudan erişmesi gereken ve arka planda sürekli çalışan işler masaüstü yazılımı gerektirir; yalnızca tarayıcıdan yönetilecek işler ise çoğunlukla web ile daha kolay çözülür. İhtiyacınıza uygun olanı açıkça söyleriz.

İletişim

Bu hizmet için bize yazın

Talebinizi kısaca anlatın; e-posta ya da telefonla size dönelim.

Formu göndererek bilgilerinizin yalnızca talebinize dönüş yapmak amacıyla işlenmesini kabul etmiş olursunuz. Ayrıntılar: KVKK Aydınlatma Metni.