İçeriğe geç

Hizmet

Sistem Entegrasyonu ve Cihaz Özelleştirme

Firmanızda kullanılan yazılımların servisleriyle entegrasyon kuruyor, çözümleri farklı platformlarda çalışacak biçimde ve kullandığınız cihazlara özgü olarak uyarlıyoruz. Önce mevcut sistemlerinizi ve verinin nasıl akması gerektiğini anlar, sonra planlarız.

Sistem entegrasyonu, firmanızda zaten kullanılan yazılımların birbiriyle veri alışverişi yapmasını sağlayan çalışmadır. Muhasebe programındaki bir kayıt web panelinde görünsün, sahadaki bir cihazdan girilen bilgi merkez sisteme düşsün, bir siparişin durumu mobil uygulamada güncellensin gibi ihtiyaçlar bu başlığa girer. Cihaz özelleştirme ise yazılımın firmanızdaki belirli cihazlara ve çalışma düzenine uyacak şekilde ayarlanmasıdır.

İki konu çoğunlukla birlikte gelir, çünkü yeni bir yazılım nadiren boş bir ortama kurulur: yanında eski bir program, farklı bir cihaz parkı ve alışılmış bir iş akışı vardır. Amacımız bunların hiçbirini çöpe atmadan, yeni yazılımı mevcut düzene oturtmaktır.

Sistem entegrasyonu ne zaman gerekir?

  • Aynı bilgiyi iki ayrı programa elle girdiğinizde.
  • Bir programdaki veriyi başka bir programda raporlamak için dışa aktarıp yeniden yüklediğinizde.
  • Mobil uygulamanızın ya da web sitenizin firmadaki mevcut bir sistemden canlı veri alması gerektiğinde.
  • Farklı birimlerin farklı yazılımları kullanıp ortak bir tablo görememesi durumunda.
  • Yeni geliştirilen yazılımın var olan bir cihazla ya da servisle çalışması gerektiğinde.

Entegrasyon nasıl planlanır?

İyi bir entegrasyon, kod yazmadan önce yapılan işle başlar. Planımız genellikle şu adımlardan oluşur:

  1. Mevcut sistemlerin çıkarılması: hangi yazılımlar kullanılıyor, kimler kullanıyor, hangi veriyi tutuyorlar?
  2. Veri akışının belirlenmesi: hangi bilgi hangi yazılımdan hangisine, hangi yönde ve ne sıklıkla gidecek?
  3. Erişim yolunun netleştirilmesi: karşı yazılım dışarıya servis sunuyor mu, nasıl bağlanılıyor, kimin izni gerekiyor?
  4. Hata durumlarının düşünülmesi: bağlantı koparsa, aynı kayıt iki kez gelirse ya da karşı taraf geç yanıt verirse ne olacak?
  5. Deneme ortamında test: canlı verilere dokunmadan önce akışın ayrı bir ortamda denenmesi.
  6. Devreye alma ve izleme: entegrasyon çalışmaya başladıktan sonra beklenmedik durumların fark edilmesi.

Bu listenin en çok atlanan kalemi, kayıtların nasıl eşleşeceğidir. Aynı müşteri bir yazılımda numarayla, diğerinde adla kayıtlı olabilir; ya da bir sistemde iki ayrı kayıt olarak görünen kişi diğerinde tek kayıttır. Hangi alanın iki sistemde ortak anahtar sayılacağını, çakışma çıktığında hangi sistemin verisinin geçerli kabul edileceğini kod yazmadan önce belirlemek, sonradan yaşanacak veri karışıklığını önler.

Servislerle entegrasyon: programlar nasıl konuşur?

Birçok yazılım, dışarıdaki programlarla konuşabilmek için bir servis ya da API sunar. API, bir programın başka bir programdan belirli bilgileri istemesini ya da ona bilgi göndermesini sağlayan, kuralları belli bir arayüzdür. Entegrasyonu çoğunlukla bu servisler üzerinden kurarız; kendi tarafımızda ASP.NET Core ile yazdığımız servisler de karşı tarafın istediği biçime uyum sağlar.

Cihazla merkezî servis arasındaki bağlantı da bu türden bir entegrasyondur. Örneğin Ekran Kaydedici'de her cihaz merkezi yönetim servisine düzenli olarak durum bilgisi ("nabız") gönderir; böylece cihazın çevrim içi olup olmadığı panelde canlı görünür. Entegrasyon servisleri çoğu zaman arayüzsüzdür: kullanıcı onları görmez, yalnızca verinin doğru yerde olduğunu fark eder. Bu durumda çalışma modelimizde Tasarım aşaması yer almaz; süreç Geliştirme, Test, Düzenleme ve Yeniden İnceleme olarak ilerler. Ekranı olan bir yönetim paneli de gerekiyorsa o kısım için Tasarım aşaması da eklenir.

Platform bağımsız çalışma

Firmalarda tek tip cihaz nadirdir. Bir bölüm Windows bilgisayar, bir bölüm Android tablet, saha ekibi iOS telefon kullanıyor olabilir. Çözümü platform bağımsız kurmak, aynı sistemin bu cihazların hepsinde çalışabilmesi demektir. Bunu genellikle iş mantığını ve veriyi merkezî bir API ve veritabanında tutup, her platform için ince bir istemci yazarak yaparız: tarayıcıdan açılan bir web yazılımı, Android ve iOS için Flutter ile yazılmış bir mobil uygulama ya da Windows'a özgü bir masaüstü yazılımı.

Cihaza özgü özelleştirme

Aynı yazılım her cihazda aynı biçimde rahat çalışmaz. Cihaza özgü özelleştirme, yazılımın firmanızdaki cihazlara göre uyarlanmasıdır. Örneğin ekran boyutuna göre düzenin değişmesi, bağlı bir donanımla (yazıcı ya da okuyucu gibi) çalışılması, cihazın tek bir iş için ayrılması ve kullanıcının başka bir şeye geçememesi, ağ bağlantısının zayıf olduğu yerlerde verinin önce cihazda tutulup sonra gönderilmesi bu başlığa girebilir.

Bir örnek vermek gerekirse: aynı yazılımın hem masaüstü bilgisayarda hem sahada kullanılan küçük ekranlı bir cihazda çalışması gerektiğinde, ikisine de aynı ekranı sığdırmaya çalışmak yerine her cihaz için o cihazın kullanım biçimine uygun bir düzen hazırlarız. Veri ve iş kuralları ortak kalır; yalnızca cihaza dokunan kısım değişir. Böylece bir kuralı bir kez değiştirmek tüm cihazlarda geçerli olur.

Hangi özelleştirmelerin gerektiği, cihazları ve kullanım koşullarını görmeden söylenemez. Bu yüzden ilk görüşmede cihaz modellerini, işletim sistemi sürümlerini ve kullanıldıkları ortamı sormamız normaldir.

Sınırlar ve dürüst notlar

Entegrasyonun kapsamını çoğunlukla karşı taraftaki yazılım belirler. Bir yazılım dışarıya servis sunmuyorsa ya da kullanım koşulları buna izin vermiyorsa her zaman bağlanmak mümkün olmayabilir. Böyle durumlarda alternatif yolları değerlendiririz; ancak sonucu önceden vaat etmeyiz.

Başka bir sağlayıcının yazılımı söz konusuysa, o yazılımı sağlayan tarafın erişim izni ve belgeleri de sürecin parçasıdır. Bu bilgilere sahip olmak, entegrasyonun planlanmasını ciddi ölçüde hızlandırır ve kolaylaştırır.

Çalışma modeli ve başlangıç

Entegrasyon projelerinde de tasarım ve işleyiş kararlarına canlı olarak katılabilirsiniz; geliştirme aşamaları ekran görüntüleriyle size e-posta yoluyla bildirilir. Projenin nasıl planlanacağını yazılım projesi nasıl planlanır yazısında ayrıntılı anlattık.

Mevcut sistemlerinizi ve ulaşmak istediğiniz sonucu iletişim sayfamızdan kısaca yazın. Süre, kapsama ve ekip yoğunluğuna göre değiştiği için bunu görüşmede birlikte netleştiririz.

Sık sorulanlar

Sistem Entegrasyonu: sorular ve yanıtlar

Firmamızdaki mevcut yazılımla entegrasyon yapılabilir mi?

Karşı taraftaki yazılım dışarıya servis ya da API sunuyorsa ve kullanım koşulları izin veriyorsa genellikle yapılabilir. Kapsamı, o yazılımın sunduğu erişim yolu belirler; bu yüzden işe önce mevcut sistemlerin ve erişim izinlerinin incelenmesiyle başlarız.

Entegrasyon projesi nasıl planlanır?

Önce mevcut sistemleri ve verinin hangi yönde akacağını çıkarırız, ardından karşı tarafın erişim yolunu ve hata durumlarını netleştiririz. Sonra deneme ortamında test eder, ancak bundan sonra canlıya alırız. Arayüzsüz entegrasyonlarda süreç Geliştirme, Test, Düzenleme ve Yeniden İnceleme olarak ilerler.

Platform bağımsız çalışma ne demek?

Aynı çözümün Windows bilgisayar, Android ya da iOS cihaz ve tarayıcı gibi farklı ortamlarda çalışabilmesi demektir. Bunu veriyi ve iş mantığını merkezî bir API ve veritabanında tutup her platform için bir istemci yazarak sağlarız.

Cihazlarımıza özgü özelleştirme yapılabilir mi?

Evet, yazılımı firmanızdaki cihazlara ve kullanım koşullarına göre uyarlayabiliriz; örneğin ekran boyutu, bağlı donanım ya da ağ koşulları gibi etkenler dikkate alınır. Neyin gerektiğini söylemek için cihaz modellerini ve kullanıldıkları ortamı görmemiz gerekir.

Entegrasyon mümkün olmazsa ne olur?

Karşı taraftaki yazılım dışarıya hiçbir erişim yolu sunmuyorsa ya da kullanım koşulları buna izin vermiyorsa bağlanmak mümkün olmayabilir. Bu durumda alternatif yolları (örneğin yazılımı sağlayan tarafla görüşmeyi) değerlendiririz; sonucu önceden vaat etmeyiz.

İ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.