HizmetlerÜrünlerAI LabÜrün OrtaklığıProjelerHakkımızdaBlogİletişim ↗
Birlikte çalışalım ↗
← Journal

Software Engineering

Hesaplamadan arayüze tutarlı bir sonuç akışı

Predict’te girdi değişince eski sonucu temizledik; doğrulama, hata, tablo ve CSV indirmeyi aynı hesaplamaya bağladık. Küçük bir deneyin arayüz kararlarından mühendislik notları.

2 dk okumaWebsoftik
Yöntem şeması; model çıktısı değildir.
UYGULAMA VE KAPSAM

Predict ve Knowledge’in mevcut tarayıcı arayüzünden notlar. Kod parçası, girdi değişimindeki davranışın sadeleştirilmiş gösterimidir.

Hesaplama modülü ile kullanıcı akışını ayırmak

Tahmin modülü, günlük gözlemler ve ufuk alıp geçmiş testleri, gelecekteki satırları ve hata değerlerini döndürüyor. Arayüz; CSV alanını, örnek seçimini, formu ve sonucu bu modüle bağlıyor. Böylece hesaplamayı bir tarayıcı düğmesine basmadan da sınayabiliyoruz.

Knowledge’te de kaynak sıralaması ayrı bir modülde. Arayüzün sorumluluğu sorguyu ve kapsamı iletmek, dönen bölümleri göstermek ve kaynak incelemesini yönetmek. İki deneyin veriyi nasıl işlediği, ekrandaki metinlerden bağımsız incelenebiliyor.

Girdi değiştiğinde ekranda ne kalmalı?

Predict’te CSV’yi düzenlemek veya ufku değiştirmek mevcut sonucu geçersiz kılıyor. Kullanıcı yeniden hesaplayana kadar grafik, sonuç tablosu ve sonuç indirme düğmesi kaldırılıyor. Yeni girdiyle eski tahmini aynı anda gösterip aralarında yanlış bir ilişki kurmuyoruz.

Örnek seri seçimi ise hemen hesaplama yapıyor; seçilen seri ve o serinin sonucu birlikte güncelleniyor. React’in durum yapısı rehberi de birbiriyle çelişen veya gereksiz çoğaltılan durumları azaltmayı ele alıyor. Bizim bu deneydeki kararımız, hesaplanmış sonucu güncel girdiye bağlamak.

CSV düzenleme davranışının sadeleştirilmiş gösterimiTypeScript / React
function onCsvChange(value: string) {
  setCsv(value);
  setSample("custom");
  setResult(null);
  setError("");
}

Yöntem kaynağı: React belgeleri · Durum yapısını seçmek ↗

Sessiz veri düzeltmek yerine anlaşılır bir hata

CSV doğrulaması başlık, sütun sayısı, takvim tarihi, değer aralığı ve günlerin sırasını kontrol ediyor. Yinelenen tarih veya eksik gün bulunduğunda seri otomatik değiştirilmeden hata dönüyor. Bu küçük model günlük ve kesintisiz bir seri bekliyor; veri sözleşmesi arayüzde de yazıyor.

Hatalı girdide sonuç temizleniyor ve kullanıcıya düzeltme yönü gösteriliyor. Örneklerden birini seçerek yeniden başlayabiliyor. Boş durumun, hata mesajının ve örnek seçiminin birlikte çalışması, yalnızca başarılı hesaplamayı göstermekten daha kapsamlı bir kullanıcı akışı sağlıyor.

Grafik, tablo ve indirme aynı sonuçtan

Grafik, gelecek günler tablosu, hata karşılaştırması ve CSV çıktısı aynı ForecastResult nesnesini kullanıyor. İndirme için ikinci bir model çalıştırmıyoruz. Çıktı; merkezi tahmini, hata bandını, haftalık tekrarı ve seçilen ufku beraber taşıyor.

Tabloda değerler Türkçe sayı biçimiyle okunuyor; CSV’de hesaplanan değerler dört ondalık haneyle yazılıyor. Bu sunum farkını korurken iki yüzeyin aynı sonucu temsil ettiğini kontrol ediyoruz. CSV ayrıca hata bandının olasılık aralığı olmadığını belirten bir alan içeriyor.

Hangi kontroller değer kattı?

Hesaplama testleri, bağımsız olarak bildiğimiz trend ve haftalık örneğin sonucunu; gelecek verinin önceki tahmine girmemesini ve sıfır talebi sınadı. Tarayıcı kontrolleri ise düzenlenen CSV’nin yeni değer üretmesini, hatalı tarihte eski sonucun kalmamasını ve indirilen satırların tabloyla eşleşmesini kontrol etti.

Kaynak panelinde odağın taşınması ve geri dönmesi de klavyeyle denendi. Dar ekranlarda sayfa taşmıyor; geniş sonuç tabloları kendi alanında yatay kaydırılabiliyor. Hesaplama doğruluğu ile kullanım akışının doğruluğunu ayrı kontrollerle değerlendirmek, bu iki deneyi tamamlamamızın parçası oldu.