Yardım Merkezi · Sorun Giderme

Önce sorunun hangi katmanda olduğunu bulun; sonra müdahale edin.

Dersiva’da aynı belirti farklı nedenlerden çıkabilir. Yerleşmeyen ders matematiksel kapasite sorunu olabilir; uygulamanın aniden kapanması ise çalışma ortamı veya native solver katmanına işaret edebilir. Doğru teşhis, rastgele ayar değiştirmekten daha hızlıdır.

Dört teşhis katmanı

Sorunu önce doğru sınıfa yerleştirin.

01
DATA

Veri

Öğretmen, ders, sınıf, haftalık saat ve zaman verileri doğru mu?

02
RULES

Kısıtlar

Kapalı günler, günlük maksimumlar, bloklar veya ortak dersler çözüm alanını kilitliyor mu?

03
RUNTIME

Çalışma ortamı

Uygulama, .NET, OR-Tools native bileşenleri ve Visual C++ çalışma zamanı sağlıklı mı?

04
PUBLISH

Yayın / bağlantı

API, lisans doğrulama, Öğretmen Portalı veya çıktı snapshot’ı doğru kaynaktan mı çalışıyor?

01

Belirtiyi işlem aşamasıyla birlikte tanımlayın

“Çalışmıyor” yerine sorunun hangi aşamada oluştuğunu belirleyin: uygulama açılışı, veri girişi, solver başlangıcı, solver çalışması, programın tamamlanması, yayınlama, çıktı veya geri yükleme. Aynı hata mesajı bile farklı aşamalarda farklı anlam taşıyabilir.

02

Sürüm, saat ve çalışma modunu kaydedin

Sorun oluştuğunda Dersiva sürümünü, yaklaşık saatini, program oluşturma modunu, Güvenli Tanılama Modu’nun açık olup olmadığını ve görünen hata metnini not edin. Log ve Windows olay kayıtları zaman bilgisiyle çok daha hızlı eşleştirilir.

03

Büyük müdahaleden önce mevcut durumu yedekleyin

Kısıtları topluca silmeden, veriyi sıfırlamadan, uygulamayı yeniden kurmadan veya geri yükleme yapmadan önce güncel `.ddbackup` alın. Sorun giderme işlemi mevcut veriyi kaybetme riskine dönüşmemelidir.

04

Önce temel veri modelini doğrulayın

Öğretmenlerin planlanan haftalık yükleri, sınıf/şube ders saatleri, ders atamaları ve okul zaman çizelgesi birbiriyle uyumlu olmalıdır. Yanlış haftalık saat veya eksik atama solver’ın kendisinden bağımsız biçimde sorun üretir.

05

Yerleşmeyen derslerde kapasiteyi katman katman inceleyin

Bir ders yerleşmiyorsa öğretmenin uygun gün/saatleri, günlük maksimumu, sınıfın açık saatleri, ortak dersler ve diğer kesin kısıtlar birlikte incelenmelidir. Yerleşmeyen ders, uygulama çökmesiyle aynı problem değildir; çoğu zaman fizibilite veya kapasite teşhisi gerektirir.

06

Hard constraint çatışmalarını ayırın

Kapalı gün, kesin günlük maksimum, zorunlu blok, ortak ders eşzamanlılığı veya korunan gün gibi sert kurallar tek tek doğru görünse bile birlikte çözümü imkânsız hale getirebilir. Tercih niteliğindeki koşulları gereksiz yere hard constraint yapmaktan kaçının.

07

Kötü program ile teknik hatayı birbirine karıştırmayın

Program %100 tamamlanmış ancak boşlukları veya yoğun günleri kötü olabilir. Bu bir kalite optimizasyonu problemidir. Programın oluşmaması, bazı derslerin yerleşmemesi veya uygulamanın kapanması ise farklı teşhis yolları gerektirir.

08

Program oluştururken uygulama aniden kapanıyorsa runtime katmanını inceleyin

Hata penceresi göstermeden süreç kapanıyor veya Windows olay kaydında `Google.OrTools.Sat.SolveWrapper.Solve` / native çağrı zinciri görünüyorsa veri kısıtlarından önce çalışma ortamı ve native solver bağımlılıkları incelenmelidir. Bu tür kapanma matematiksel “çözüm yok” sonucuyla aynı değildir.

09

Güvenli Tanılama Modu — 1 Worker ile karşılaştırma yapın

Normal çoklu-worker çalışması kapanırken aynı veri 1 Worker güvenli modda çalışıyorsa bu önemli bir tanılama sinyalidir. Tek başına kesin neden kanıtı değildir; ancak worker/native çalışma ortamı, işlemci davranışı ve bağımlılıkların karşılaştırılması gerektiğini gösterir.

10

OR-Tools native ve Visual C++ çalışma zamanını doğrulayın

Dersiva’nın solver katmanı managed .NET kodunun yanında native OR-Tools bileşenleri kullanır. Microsoft Visual C++ 2015–2022 Redistributable x64 gibi gerekli çalışma zamanı bileşenlerinin eksik, bozuk veya uyumsuz olması native çağrılarda sorun oluşturabilir. Kurulum önkoşulları güncel paketle birlikte kontrol edilmelidir.

11

Aynı yedek farklı bilgisayarda farklı davranıyorsa ortamları karşılaştırın

Aynı Dersiva sürümü ve aynı `.ddbackup` bir bilgisayarda çalışıp diğerinde aynı aşamada kapanıyorsa veriyi hemen değiştirmeyin. Windows sürümü, Visual C++ runtime, işlemci/worker davranışı, güvenlik yazılımı ve kurulum bütünlüğü karşılaştırılmalıdır.

12

`log.txt` ve global hata kaydını zaman damgasıyla okuyun

Dersiva’nın global hata yakalama ve tanılama kayıtlarında hata zamanı, ilgili işlem ve managed exception bilgisi aranmalıdır. Logda kayıt yokken süreç native tarafta sonlanmış olabilir; bu durumda Windows olay kaydı daha önemli hale gelir.

13

Windows Olay Görüntüleyicisi’ndeki uygulama hatasını kontrol edin

Uygulamanın aniden kapanmasında Windows Application logundaki hata kaydı, faulting module veya .NET/CoreCLR stack bilgisi incelenmelidir. `SolveWrapper_Solve` gibi bir OR-Tools çağrısı görülmesi sorunun solver çağrısı sırasında olduğunu gösterir; tek başına kök nedeni belirlemez.

14

Lisans veya API hatasında bağlantıyı uçtan uca ayırın

İnternetin çalışması API’nin erişilebilir olduğu anlamına gelmez. DNS çözümleme, HTTPS erişimi, okul ağındaki güvenlik/filtreleme, ilgili Dersiva alan adı ve API yanıtı ayrı ayrı kontrol edilmelidir. Tarayıcı erişimi ile uygulama/API erişimi aynı test değildir.

15

Öğretmen Portalı yayın sorununu dört noktada izleyin

Önce doğru programın uygulanacak olarak seçildiğini doğrulayın. Sonra masaüstü yayın snapshot’ı, API’ye giden veri, sunucudaki kaynak revizyon ve portal sunumunu sırayla kontrol edin. Deneme programı resmî portal kaynağını değiştirmemelidir.

16

Çıktı güncel değilse snapshot kaynağını kontrol edin

PDF veya diğer çıktılar beklenen programı göstermiyorsa önce hangi program snapshot’ından üretildiğini doğrulayın. Son program, deneme programı ve uygulanacak program kavramları birbirinden farklıdır. Eski snapshot’tan üretilen doğru bir PDF, kullanıcı açısından yine yanlış çıktıdır.

17

Yedek / geri yükleme sorununda dosya, kapsam ve sürümü ayırın

`.ddbackup` dosyasının erişilebilirliğini, seçilen geri yükleme kapsamını ve hedef Dersiva sürümünü kontrol edin. Yeni bilgisayara taşırken eski uygulama klasörünü veya makineye özgü güvenlik anahtarlarını doğrudan kopyalamak yerine desteklenen geri yükleme akışını kullanın.

18

Sorun çözülemiyorsa güvenli bir teşhis paketi hazırlayın

Destek için Dersiva sürümü, sorun zamanı, işlem aşaması, seçilen mod, görünen hata metni, ilgili `log.txt` bölümü ve gerekiyorsa Windows olay kaydı bilgisini birlikte hazırlayın. Parola, lisans sırrı veya gereksiz kişisel veriyi teşhis paketine eklemeyin.

İlk 5 dakika kontrolü

Soruna müdahale etmeden önce bu sırayı izleyin.

1

Belirtiyi sınıflandır

Veri mi, kısıt mı, runtime mı, yayın mı?

2

Durumu kaydet

Sürüm + saat + mod + hata metni.

3

Yedek al

Değişiklikten önce geri dönüş noktası oluştur.

4

En küçük testi yap

Gerekirse 1 Worker, tek örnek hesap veya tek çıktı ile karşılaştır.

5

Kanıtla ilerle

Log ve davranış karşılaştırmasına göre doğru katmanda düzeltme yap.

!
Sorun giderirken en pahalı hata

Kanıt toplamadan aynı anda birçok şeyi değiştirmek.

Kısıtları silmek, uygulamayı yeniden kurmak, yedek geri yüklemek ve ağ ayarlarını aynı anda değiştirmek kök nedeni görünmez hale getirir. Her seferinde tek bir değişkeni değiştirin ve sonucu kaydedin.

Yardım Merkezi rehber serisi

Temel yardım akışı v3.23 ile tamamlandı.

Başlangıç, Program Oluşturma, Program Kalitesi, Nöbet Yönetimi, Öğretmen Portalı, Yedekleme/Geri Yükleme ve Sorun Giderme rehberleri artık birbirine bağlı tek bir yardım zinciri oluşturuyor.

✓
Yardım Merkezi

Yardım Merkezi’ne dön