İçeriğe geç
Bigfil
Projeni Anlat
Bigfil

Web & Yazılım

SAP Spartacus Nedir, Neden Önemlidir?

Özetle

  • Spartacus bir platform değil, SAP Commerce Cloud'un üstünde çalışan açık kaynaklı ön yüz katmanıdır.
  • Başsız mimarinin asıl kazancı hız değil bağımsızlıktır: iki katman ayrı geliştirilir, ayrı yayınlanır.
  • Bedeli de var: artık bakılacak iki uygulama, iki yükseltme takvimi ve iki taraflı test vardır.
  • Karar teknoloji değil kapasite sorusudur: bu ön yüzü kim, hangi sıklıkta güncelleyecek?
  • Geçiş planının en kritik teknik maddesi, içeriğin taranabilir biçimde sunulmasıdır.

Spartacus bir e-ticaret platformu değil, SAP Commerce Cloud için geliştirilen açık kaynaklı ve Angular tabanlı bir mağaza ön yüzüdür; katalog ve sipariş mantığı arka uçta kalır, Spartacus yalnızca müşterinin gördüğü katmanı üstlenir.

Bölüm 01

SAP Spartacus nedir?

Spartacus, SAP Commerce Cloud için geliştirilen açık kaynaklı, Angular tabanlı bir mağaza ön yüzüdür. Bugün Composable Storefront adıyla anılıyor.

Kritik nokta şu: Spartacus bir e-ticaret platformu değildir. Katalog, fiyatlandırma, sipariş ve stok mantığı SAP Commerce Cloud tarafında durmaya devam eder. Spartacus yalnızca müşterinin gördüğü katmanı üstlenir ve arka uçla arayüzler üzerinden konuşur.

Bu ayrım bir teknik detay gibi görünür ama satın alma kararını doğrudan etkiler: Spartacus'a geçmek platform değiştirmek değildir, platformun üstündeki deneyimi ayrıştırmaktır. SAP Hybris'in ne olduğunu ve isminin nasıl değiştiğini ayrı bir yazıda anlattık.

SAP Hybris Evriliyor SAP Spartacus Ne Avantaj Sağlıyor?

Bölüm 02

Neden ortaya çıktı?

Klasik kurulumda mağazanın ön yüzü platformun içinde yaşardı. JSP tabanlı bu yapıda görünen katman ile iş mantığı iç içeydi.

Bunun pratikte üç sonucu vardı. Küçük bir tasarım değişikliği bile platforma dokunmayı gerektiriyordu. Ön yüz geliştiricisinin platform bilgisi olması bekleniyordu, bu da ekip kurmayı zorlaştırıyordu. Ve kampanya dönemlerinde arayüzü hızlıca değiştirmek, sürüm döngüsüne bağlı olduğu için yavaş ilerliyordu.

Spartacus bu üç sorunu tek bir kararla çözmeye çalışır: ön yüzü ayrı bir uygulama haline getirmek.

Bölüm 03

Başsız (headless) mimari ne demek?

"Başsız" ifadesi, sistemin gövdesinin (iş mantığı ve veri) baştan (kullanıcının gördüğü arayüz) ayrılması anlamına gelir.

Ayrıldıklarında ikisi arayüzler üzerinden konuşur. Arka uç "bu ürünün fiyatı şu, stoğu bu" der; ön yüz bunu nasıl göstereceğine kendi karar verir. Aynı arka uç birden fazla ön yüzü besleyebilir: web mağazası, mobil uygulama, bayi portalı ya da mağaza içi ekran.

Bunun getirdiği asıl kazanç hız değil, bağımsızlıktır. İki katman ayrı ayrı geliştirilebilir, ayrı ayrı yayınlanabilir ve ayrı ekipler tarafından sahiplenilebilir.

Getirdiği maliyet ise genellikle yeterince konuşulmaz: artık bakılacak iki uygulama vardır. Sürüm uyumu, arayüz sözleşmeleri ve iki tarafın birlikte test edilmesi yeni bir iş kalemidir.

Bölüm 04

Klasik ön yüzden farkı ne?

  • Barınma yeri. Klasik ön yüz platformun içinde çalışır; Spartacus ayrı bir uygulamadır.
  • Değişiklik hızı. Tasarım ve kampanya değişiklikleri arka uçtan bağımsız ilerleyebilir.
  • Ekip yapısı. Ön yüz tarafında Angular bilen bir geliştirici çalışabilir; platform uzmanlığı şart değildir.
  • Yükseltme davranışı. Platform yükseltmeleri ile ön yüz yükseltmeleri ayrışır; bu hem kolaylık hem de takip edilmesi gereken ikinci bir takvim demektir.
  • Çoklu kanal. Aynı arka uç, farklı temas noktalarını besleyebilir.

Bölüm 05

Kime uygun, kime değil?

Uygun olduğu durum: SAP Commerce Cloud zaten kullanılıyor, arayüzde sık değişiklik ihtiyacı var, marka deneyimi standart mağaza şablonunun ötesine geçmek istiyor ve kurum içinde ya da ajans tarafında Angular tarafını sahiplenecek bir ekip var.

Uygun olmadığı durum: Mağaza büyük ölçüde standart akışlarla çalışıyor, arayüz nadiren değişiyor ve iki ayrı uygulamayı bakımda tutacak kapasite yoksa. Böyle bir durumda başsız mimarinin vaadi karşılıksız kalır, geriye yalnız ek karmaşıklık kalır.

Karar verirken sorulacak asıl soru teknoloji değil kapasite sorusudur: bu ön yüzü kim, hangi sıklıkta güncelleyecek? Cevabı olmayan bir geçiş, birkaç ay sonra dokunulmayan ikinci bir uygulama üretir.

Bölüm 06

Geçiş nasıl planlanır?

Geçiş genellikle tek seferde değil, aşamalı yapılır. Planlamada netleşmesi gereken başlıklar şunlar:

  1. Kapsam. Tüm mağaza mı, yoksa önce belirli akışlar mı taşınacak? Ürün listeleme ve detay sayfalarıyla başlayıp ödeme akışını sonraya bırakmak yaygın bir yaklaşımdır.
  2. Arama motoru görünürlüğü. Tek sayfa uygulamalarında içeriğin taranabilir biçimde sunulması ayrı bir kurgu gerektirir. Sunucu tarafı render'ın nasıl çalışacağı, geçiş planının teknik olarak en kritik maddesidir.
  3. URL yapısı. Adresler değişiyorsa yönlendirme haritası geçiş öncesinde çıkarılmalıdır; yayın haftasında değil.
  4. Özelleştirme envanteri. Klasik ön yüzde yıllar içinde biriken özel geliştirmelerin hangisinin gerçekten kullanıldığı listelenmelidir. Bu liste çoğu zaman beklenenden kısadır ve kapsamı belirgin biçimde küçültür.
  5. Ekip ve sahiplik. Yayın sonrası ön yüzü kimin güncelleyeceği yazılı olmalıdır.
  6. Ölçüm. Geçiş öncesi mevcut performans ve dönüşüm değerleri kaydedilmelidir; aksi halde geçişin işe yarayıp yaramadığı tartışma konusu olur.

Bu maddelerin hiçbiri teknolojiyle ilgili değil; hepsi kapsam ve sorumlulukla ilgili. Geçişlerin zorlandığı yer de genellikle burasıdır.

Bölüm 07

Geliştirici tarafı: açık kaynak ve topluluk

Spartacus açık kaynaklıdır. Bu iki şey sağlar: kaynak koda bakabilirsiniz ve gerektiğinde davranışı kendi ihtiyacınıza göre genişletebilirsiniz.

Pratik faydası dokümantasyon ve topluluk erişimidir. Karşılaştığınız bir sorunun daha önce birileri tarafından yaşanmış ve yazılmış olma ihtimali, kapalı bir sisteme göre yüksektir.

Ancak açık kaynak "bedava" demek değildir. Lisans maliyeti olmaması, geliştirme, yükseltme ve bakım maliyetini ortadan kaldırmaz. Toplam sahip olma maliyetini hesaplarken bu kalem ayrıca yazılmalıdır.

Bölüm 08

Nereden başlanır?

Karar teknoloji seçimiyle değil envanterle başlar: bugün ön yüzde hangi özelleştirmeler var, hangileri gerçekten kullanılıyor, arayüzde yılda kaç değişiklik yapılıyor ve bunları kim yapıyor?

Bu dört sorunun cevabı, geçişin gerekli olup olmadığını çoğu zaman teknik bir karşılaştırmadan daha net gösterir. Arayüzde yılda birkaç değişiklik yapan ve bunu da dış kaynakla yürüten bir kurum için başsız mimarinin getirisi sınırlı kalır.

Bigfil bu tarafta klasik Accelerator altyapısı ve JSP tabanlı ön yüz üzerinde çalışır; Composable Storefront (Spartacus) tarafında referans projemiz yok. Teslim ettiğimiz işleri SAP Commerce Cloud hizmet sayfamızda anlattık.

Sık sorulan sorular

SAP Spartacus ile SAP Commerce Cloud aynı şey mi?
Hayır. Commerce Cloud platformun kendisidir: katalog, fiyat, sipariş ve stok mantığı orada durur. Spartacus ise onun üstünde çalışan mağaza ön yüzüdür. Ticari açıdan da ayrışırlar: Spartacus açık kaynaktır ve lisans bedeli yoktur, Commerce Cloud ise lisanslı bir üründür. Yani Spartacus'a geçmek platform maliyetinizi değiştirmez; değiştirdiği şey ön yüzün nasıl geliştirildiği ve kim tarafından bakıldığıdır.
Bigfil Spartacus projesi yapıyor mu?
Hayır. Bugüne kadar teslim ettiğimiz SAP projelerinin tamamı klasik Accelerator altyapısı ve JSP tabanlı ön yüz üzerinde yürüdü; Composable Storefront (Spartacus) tarafında referans projemiz yok. Bunu baştan yazıyoruz çünkü iki ön yüz farklı yetkinlik ister. Spartacus'a geçmeyi düşünüyorsanız ilk görüşmede hangi altyapıda olduğunuzu netleştirir, uygun değilsek zaman kaybettirmeyiz.
Spartacus'un adı değişti mi?
Bugün Composable Storefront adıyla anılıyor. Bu isim meselesinin pratik bir sonucu var: iş ilanlarında, teknik dokümanlarda ve tedarikçi tekliflerinde iki ad da hâlâ dolaşımda. Bir teklifte ya da özgeçmişte hangisini görürseniz görün, kastedilenin aynı şey olduğunu bilmek yeterli. Yine de teklif değerlendirirken hangi sürümden söz edildiğini sormak işinizi kolaylaştırır.
Başsız mimariye geçmek arama motoru görünürlüğünü bozar mı?
Bozabilir, ama bu kaçınılmaz değil. Risk şurada: içerik yalnızca tarayıcıda oluşuyorsa, arama motoru sayfayı boş görebilir. Bunun basit bir kontrolü var — sayfaya sağ tıklayıp kaynağı görüntüleyin; metinlerinizi ham kodda göremiyorsanız sorun vardır. Bu yüzden içeriğin sunucu tarafında da üretilmesi, geçiş planının teknik olarak en kritik maddesidir ve sonradan eklenecek bir detay değildir.
Spartacus'a geçiş ne kadar sürer?
Dürüst cevap: kapsama bakmadan söylenemez. Süreyi belirleyen üç şey var. Birincisi klasik ön yüzde biriken özelleştirmelerin kaçının gerçekten kullanıldığı; bu liste genellikle beklenenden kısadır. İkincisi ödeme akışının kapsama dahil olup olmadığı. Üçüncüsü adreslerin değişip değişmeyeceği. Bu üçü netleşmeden verilen her süre tahmini, sonradan düzeltilmek zorunda kalır.
Angular bilen bir ekip şart mı?
Ön yüz tarafı için evet. Ancak bunun tek başına yeterli olmadığını da bilmek gerekir: arka uç tarafında SAP Commerce bilgisi gerekmeye devam eder. Yani başsız mimari tek bir uzmanlığı ikiye böler, azaltmaz. İşe alım ya da ajans seçiminde bu iki yetkinliğin de karşılanıp karşılanmadığına bakın; yalnız birini kapatmak, geçişten sonra diğer tarafta tıkanmaya yol açar.

İletişim / Başlayalım

Bu konuyu markanıza uyarlayalım.

Yazıda anlatılanları kendi projenize taşımak için bir keşif görüşmesi ayarlayalım.