Yazı · ·

Önce çevrimdışı demek, önce çakışmayı çözmek demek

Cihaza kaydetmek başlangıçtır. Çevrimdışı saha uygulaması, çakışan değişiklikleri, geri alınan yetkileri ve sunucuya ulaşmayan işi açıkça yönetmelidir.

Önce çevrimdışı demek, önce çakışmayı çözmek demek

Form kaydedildi, peki hangi sürüm kaldı?

Saha teknisyeni bağlantı yokken denetim formunu düzenler. Ofisteki koordinatör aynı görevi değiştirir. Cihaz yeniden bağlandığında her iki değişiklik de geçerlidir, fakat birlikte uygulanmaları mümkün olmayabilir. Son geleni sessizce kabul etmek, senkronizasyon ayrıntısı gibi görünen bir ürün kararıdır.

Çevrimdışı çalışma bu kararla başlar. Önbellekten açılan ekran yalnız arayüzün erişilebilir olduğunu gösterir. Çalışanın işi tamamlayabildiğini, cihazda ne kaldığını anladığını veya merkezde değişen kaydı kurtarabildiğini göstermez. Depolama kütüphanesinden önce bu sözleri tanımlamak gerekir.

Yerel kaydı merkezde kabulden ayırın

Yerel taslak, gönderim bekliyor, sunucuda kabul edildi ve çakışma var durumları ayrı görünmeli. Hepsi için kaydedildi yazmak belirsizlik yaratır. Sahadan ayrılan kişi kanıtın yalnız cihazında mı, ekip arkadaşlarının erişiminde mi olduğunu bilmelidir.

Tarayıcının arka plan senkronizasyonu, bağlantı döndüğünde kısa işleri sürdürebilir. Ancak tarayıcılar arka plan çalışmasını ve yeniden denemeleri sınırlar. Uygulama tekrar açılmadan bütün işlerin mutlaka ulaşacağı varsayılamaz. MDN çevrimdışı çalışma rehberi bu sınırları anlatır.

Bekleyen işleri gösteren bir alan ve uygulama açıkken yeniden deneme yolu da olmalı. Takılan yükleme, sonsuz dönen simgeyle değil anlaşılır gerekçeyle anlatılmalı. Yerel çalışma, sunucu kabulü veya bilinçli silme doğrulanmadan kaldırılmamalı. Boş görünen kuyruk, kaybolmuş kanıt anlamına gelmesin.

Çakışma kuralını alanın anlamına göre seçin

Örnek bir denetim ürününde fotoğraf eklemekle görevlendirmeyi değiştirmek aynı işlem değildir. Fotoğraf, kaynağı belirtilerek eklenebilir. Görevlendirme değişikliği ise denetimi kimin teslim edebileceğini değiştirebilir. Her ikisini bütün kaydı değiştirme işlemi saymak bu ayrımı yok eder.

Yerel değişikliğin hangi sunucu sürümüne dayandığını saklayın. Sunucu kaydı değişmişse düzenlemelerin bağımsız bilgiye mi yoksa aynı karara mı dokunduğunu belirleyin. Ayrı notlar birleştirilebilir; çelişen tamamlanma durumları inceleme gerektirebilir. Haklı tarafı yalnız cihaz saatine göre seçmeyin.

Çakışma ekranı ilgili farkları, değiştiren kişiyi ve seçeneklerin sonucunu göstermeli. Operatörden ham belgelerin tamamı arasında seçim istemek teknik açıdan açık olsa da kullanım açısından yetersizdir. Çözüm, kişinin tanıdığı iş seviyesinde yapılmalı.

Bağlantı yokken de yetki ve silme önemlidir

Çevrimdışı kopya, indirmeye izin veren yetkiden daha uzun süre cihazda kalabilir. Hangi verinin yerelde tutulacağını, ortak cihazları ve çıkış yapıldığında ne olacağını belirleyin. Merkezde yetkiyi kaldırmanın bağlantısız cihazı anında temizleyeceği söylenemez. Yerel veri kapsamını işin hassasiyetine göre daraltın.

Bekleyen değişiklikler sunucuya geldiğinde yetkiyi yeniden kontrol edin. Yerelde geçerli bir taslak olması, teslimin hâlâ yetkili olduğu anlamına gelmez. Yetki değişmişse açıklanabilir ve kurtarılabilir bir süreç kurun; eski oturumla kabul etmeyin, sessizce de silmeyin.

Sunucuda kaldırılan kayıt, cihazdaki eski kopya gönderildi diye geri gelmemeli. Silme veya kullanımdan kaldırma niyetini senkronizasyon modelinde temsil edin. Bağlı yerel kanıtın ne olacağını ayrıca kararlaştırın.

Bu hafta yeniden bağlanmayı prova edin

Gerçek bir saha görevini seçin. Cihaz bağlantısızken yerelde düzenleme yapın; aynı sırada merkezde aynı kaydı değiştirin. Yetkiyi değiştirip yeniden bağlanın, ardından yarıda kesilmiş dosya yüklemesiyle tekrarlayın. Yalnız logları değil, her iki kişinin ekranını inceleyin.

Karşılaşılan her çakışma için kural yazın. Bekleyen işi görünür kılın ve çözüm sorumlusunu belirleyin. Hangi sürümün neden kaldığı açıklanamıyorsa ekranların internetsiz açılması, güvenilir çevrimdışı çalışma sözü vermeye yetmez.