Skip to main content

Post mortem

Tamamlanmadı

Dokümanın yazımı ve geliştirilmesi devam ediyor. Bu süreçte değişiklikler olabilir.

BaşlıkAçıklama
Tarih08.09.2022 02:00 - 23.09.2022 18:00
KatılanlarKerim Kaan Dönmez, Oğuzhan Gülen, Abdülselam Soğukçeşme, Kadir Pir, Kerem Kutluboğa, Ozan Alptekin
OlayLogo'da Toplu Fatura Düzeltme Operasyonun Stokları Yanlış Etkilemesi
EtkiStoklar, Faturalar, Resmi Beyannameler
AçıklamaLogo'da bulunan bazı siparişlerin 0 TL bedelli görünmesi sonucu faturaları düzeltmek için bir operasyonel geliştirme yapılmış, topluca yapılan işlemi Logo kotaramamıştır. Bu sebeple Logo'dan edinilen stok bilgileri tamamiyle yanlış gelmiştir.
ÇözümLogo'dan edinilen stok bilgisinin kuyrukta bulunan siparişlerin de dahiliyle hesaplanması sonucu güncellenmeye başlanmış, etkilenen faturalar da operasyon akışı ile düzeltilmiştir.
BulgularBulunurluk oranlarının anormal yükselişi, fiziki stok bulunmaması nedeniyle artan sipariş iptalleri

Zaman Çizelgesi

  • 07 Eylül 15:00 - Sorunun İletilmesi
  • 07 Eylül 18:38 - Hatanın Düzeltilmesi
  • 07 Eylül 22:30 - Hatanın Analizi ve Operasyonel İhtiyaçların Belirlenmesi
  • 08 Eylül 02:00 - Düzeltme Operasyonunun Başlaması
  • 08 Eylül 09:00 - Düzeltme Operasyonundaki Sorunun Fark Edilmesi
  • 08 Eylül 11:00 - Entegratör Firma ile Durum Değerlendirmesi
  • 09 Eylül 04:30 - Yeni Stok Endpointinin Canlıya Alınması
  • 09 Eylül 09:00 - Normal stok değerlerine dönülmesi
  • 23 Eylül 18:00 - Ağustos KDV Beyannamesi için gerekli operasyonun tamamlanması

Analiz ve Aksiyon

08 Ağustos 2022 tarihinde canlıya alınan bir geliştirme akabinde siparişte bulunan ürünlerin fiyatlarının ve adetlerinin tutulduğu Biri_OrderItem tablosunda bir DDL değişikliği yapılmıştır. Bu değişiklik sonucu bazı sütunların ismi değişmiştir. Bu sütunlardan beslenen entegrasyon siparişlerinin Logo'ya gönderildiği akışta bu sütun değişikliklerinden doğan güncelleme yapılmamıştır. Kodda bulunan ürün fiyatı değeri (tablodan edinilmektedir) yok ise 0 TL olarak gönderilmesi sağlanmıştır. Bu sebeple herhangi bir hata ile karşılaşılmamıştır. Ne Logo'da ne de kendi servislerimizde bunu yakalayabilecek bir kontrol mekanizması bulunmamaktadır. Sonuç olarak 0 TL bedelli siparişler bu geliştirme canlıya alınmasından itibaren Logo'ya gönderilmiş ve fatura edilmiştir. Yalnızca ürün adetleri doğru gönderildiğinden stokları etkilememiştir.

Muhasebeden ekibe bildirilen bazı siparişlerin 0 TL bedelli olmasına yönelik bir uyarı neticesinde bildirilen siparişler incelenmiş ve hata tespit edilmiştir. Doğru sütundan doğru fiyat bilgisinin alınması sağlanmış ve 07 Eylül 2022 18:38'de düzeltme geliştirmesi canlıya alınmıştır. Akabinde etkilenen siparişleri çıkarmak için bir operasyon geliştirmesi planlanmıştır. Bu plana göre etkilenen siparişler birer birer önce iptal edilecek ardından tekrar Logo'ya iletilecektir.

Etkilenen iki yüz bin sipariş bir tabloya girilmiştir. Siparişleri iptal edip tekrar Logo'ya gönderecek bir kuyruk geliştirilmiş böylece her bir sipariş önce iptal edilecek ardından Logo'ya tekrar gönderilecektir. Bu geliştirme neticesinde 08 Eylül 02:00 civarı kırk bin sipariş bu operasyona alınmış ve akışın doğru ilerlediği görülmüştür. Neticesinde sabah 09:00 civarı kontroller yapılmış ve tüm siparişlerin işlendiği tespit edilmiştir. Fakat kuyruğun takip ediliği slack botu siparişlerin bir anda eridiğini gece boyu azalmadığını göstermiştir. Buna müteakip bulunurluk raporlarının olması gerekenden çok daha yüksek olduğu tespit edilmiştir. Bu noktada stokların arttığını fark edilmiş ve Logo entegratör firma ile iletişime geçilmiştir.

Yapılan incelemeler sonucu entegratör firmanın normal sipariş akışında bir hatayı önlemek için yaptığı geliştirmenin yine 08 Eylül gecesi canlıya alındığı ve bu düzeltmenin operasyon akışını kestiği anlaşılmıştır. Logo veritabanında siparişlerin takip edildiği tabloda IS_SUCCEED ve IS_TRANSFERRED kolonlarının değerleri olması gerektiği gibi işlenmiş olarak görülmekte fakat siparişlerin işlenmemiş halde olduğu tespit edilmiştir. Dolayısıyla iptal edilen siparişler işlenmediğinden stoklar artmış ve bulunurluk yükselmiştir. Durumu düzeltmek adına iptal edilemeyen siparişler gün boyu işlenecek şekilde operasyona devam edilmiştir. 09 Eylül gecesi yapılan düzenleme ile stokların Logo'da işlenilmesinin beklenmemesine yönelik bir geliştirme yapılarak Logo'daki mevcut stoktan kuyruktaki siparişlerin stokları düşülerek veya artırılarak hesaplanma yoluyla güncellenmesi sağlanmıştır. Bunun için Logo API'de yeni bir endpoint geliştirilmiş ve BiSU tarafında da implemente edilmiştir.

09 Eylül sabahı itibariyle operasyon ve stoklar normale dönmüş böylelikle yeni gelen siparişlerde sorun ve iptal yaşanmaması sağlanmıştır.

Kalan yüz altmış bin sipariş için ise 2 haftalık bir operasyon süreci planlanmıştır.

KDV beyannameleri için yetiştirilmesi gereken Ağustos siparişleri cirolarına göre önceliklendirilmiş ve segmente edilerek faturaları düzeltilmiştir.

Etkilenenler

  • Stokların artması dolayısıyla fiziksel stoğu olmayan ürünlerin satışı ile depolar
  • Sipariş iptali gerektiğinden müşteri hizmetleri ve saha ekipleri
  • Fazla stok dolayısıyla manuel ürün kapama gerektiğinden saha ekipleri
  • KDV beyannamesi verilmesi gerektiğinden muhasebe ekibi

Operasyon

Analiz ve Aksiyon kısmında detaylıca anlatılmıştır.

Edinilen Dersler ve Alınan Aksiyonlar

  • Logo API üzerinden bulk işlemlerin yapılması için iki taraflı koordine olunması gerekliliği anlaşıldı.
  • Sepet, sipariş ve sipariş operasyonlarına dokunan kısımlarda test ve review sürecinin sıkılaşması gerektiği anlaşılmıştır.