Son yıllarda SaaS tabanlı SAP ERP sistemlerinin yükselişiyle birlikte, bulut tabanlı sistemler için uzantı teknikleri, özel geliştirmeleri kesintiye uğratmadan otomatik yükseltmelere olanak tanıyacak şekilde evrim geçirmiştir. Bu teknikler ve araçlar, geleneksel olarak klasik uzantı araçlarının kullanıldığı On-Premise sistem sürümleri için de mevcuttur. Bu makale, bulut uyumlu uzantı araçları ve metodolojilerini On-Premise SAP uygulamalarına uygulamak için klasik RICEFW kategorileriyle uyumlu yeni bir metodoloji önermektedir. Bu yaklaşım sayesinde, organizasyonlar ERP sistemlerini gelecekteki ölçeklenebilirlik için optimize edebilir, teknik borcu en aza indirebilir ve operasyonları içinde yeniliklerin benimsenmesini kolaylaştırabilir.
Giriş
Organizasyonlar, iş gereksinimlerini karşılamak için geleneksel olarak klasik ABAP uzantılarına güvenmiş ve belirli gereksinimlere uygun özel süreçler oluşturmak için önemli çaba sarf etmiştir. Sonuç olarak, çekirdek ERP sistemi, kapsamlı özel geliştirmeler ve iyileştirmeler nedeniyle giderek daha karmaşık hale gelmiş ve sistemin “teknik borcunu” artırmıştır. Klasik esneklik, çeşitli iş ihtiyaçlarını karşılamada güçlü ve esnek olduğunu kanıtlamış olsa da, aynı zamanda verimsizliklere ve optimal olmayan performansa da katkıda bulunmuştur. Sistemin toplam sahip olma maliyeti (TCO) artmıştır, çünkü özel geliştirmeler bakım, ek testler gerektirir ve çekirdek sistemin yükseltilebilirliğini engeller; bu da yenilik uyum sürecini yavaşlatırken ERP sisteminin teknik borcunu artırır. SAP, S/4HANA Public Edition ERP ile monolitik ERP mimarisinden Yazılım Hizmeti (SaaS) modeline doğru bir geçiş yapmaktadır, ancak müşteriler hala – ve büyük olasılıkla gelecekte de – Özel Bulut veya Yerinde (On-Premise) çözümleri lisanslayabileceklerdir. Bu makale, mevcut bulut uyumlu uzantı araçlarının ve metodolojilerinin, klasik RICEFW kategorileriyle uyumlu olarak, Yerinde SAP uygulamalarında nasıl uygulanabileceğine dair yeni bir metodoloji sunmaktadır. Bu metodoloji ile yeni müşteri gereksinimleri, ERP sisteminin TCO’sunu azaltmak amacıyla temiz çekirdek ilkesiyle uyumlu bir şekilde tasarlanabilir. Makale, SAP S/4HANA 2023 On-Premise FPS0 sistem sürümünde mevcut olan bulut uyumlu çözümler ve araçların tam yelpazesini incelemektedir. SAP’nin büyük On-Premise ve Özel Bulut sürümleri için iki yıllık bir yayın döngüsünü benimsemesi göz önüne alındığında, sonraki sürümlerin bu konuyla ilgili yeni araçlar ve değişiklikler getirmesi muhtemeldir.
Temiz Çekirdek Konsepti
“Çekirdeği temiz tutma” konsepti, eski SAP CTO’su Björn Goerke tarafından TechEd 2018’deki açılış konuşmasında tanıtılmıştır. Bu konsept, şu anda SAP’nin Kamu Bulut sürümünde kullanılmakta olup, müşterinin sistemine yılda iki kez zorunlu sistem yükseltmelerinin otomatik olarak dağıtılmasını kolaylaştırmaktadır. Temiz Çekirdek konsepti, değişiklik yapılmayan bir sistem anlamına gelmez, çünkü çoğu müşteri belirli bir düzeyde uzantı gerektirir. Bunun yerine, değişikliklerin Temiz Çekirdek yönergeleriyle uyumlu olarak yapıldığı ve sağlanan araçların kullanıldığı bir sistemi tanımlar. Bu makalede, “Çekirdek” unsurlarından “Esneklik” ve “Entegrasyon” kısımlarına odaklanıyoruz, çünkü bunlar genellikle klasik uzantı yöntemlerinden etkilenen bileşenlerdir. Kriterlerin karşılanması, sıfırdan bir SAP uygulaması ile sağlanabilir.
Çekirdek Unsuru | Temiz Çekirdek için Kriterler |
---|---|
Yazılım Yığını | Yazılım sürümü en son sürüme yakın olmalı. İş ortağı çözümleri temiz çekirdek uyumlu olmalı. |
Esneklik | Belirlenmiş esneklik modelini takip eden yükseltme-dengeli uzantılar. Sadece aktif olarak kullanılan ve iyi belgelenmiş uzantılar. Genel kod kalitesi standartlarına ve en iyi uygulamalara uyum. SAP standart işlevselliğinin tekrarı olmamalı. |
Entegrasyon | Yükseltme-dengeli arayüzler. Uygun izleme ve hata çözme yetenekleri. Sadece aktif olarak kullanılan ve iyi belgelenmiş entegrasyonlar. |
Veri | Tam, doğru, kullanılan ve ilgili olmalı. |
Süreçler | Tutarsız veya verimsiz süreçler olmamalı. SAP tarafından önerilen En İyi Uygulamalardan yararlanılmalı. |
Operasyonlar | Yönergelerle uyumu sürdürmek için düzenli olarak planlanmalı ve yürütülmeli. Periyodik yükseltmeler gibi yaşam döngüsü olaylarına katılım sağlanmalı. |
projenin başlangıcında, ancak mevcut bir SAP sisteminin en son S/4HANA sürümüne yükseltildiği bir brown-field uygulamada da uygulanabilir. İkinci durumda, mevcut özel değişiklikler incelenmeli ve Temiz Çekirdek konseptiyle uyumlu olacak şekilde yeniden tasarlanmalıdır. Esneklik, yazılıma ek işlevsellik eklemek anlamına gelir; bu, örneğin, veritabanı seviyesinde yeni veri alanları ekleyerek ve operasyonel çalışma sırasında ek verileri yakalamak için bunları kullanıcı arayüzünde göstererek standart sistem davranışını genişletir veya değiştirir. Entegrasyon, SAP ERP sistem verilerini diğer üçüncü taraf uygulamalara sunmak veya başka bir sistemden ERP’ye veri almak için kullanılır. Bir arayüz örneği, döviz kurlarının günlük olarak sisteme indirilmesidir. Beyaz listeye alınmış API’ler, SAP tarafından listelenir ve yönetilir. Bu, SAP’nin bu API’leri sertifikalandırdığı ve yayınladığı ve Temiz Çekirdek ilkesine göre kullanımlarının güvenli olduğu anlamına gelir.
Bulut Uyumlu Esneklik Teknikleri
SAP, bu teknikleri üç gruba ayırır. Tüm esneklik seçenekleri, uzantının çekirdek koddan bağımsız kalmasını sağlayarak Temiz Çekirdek yönergelerine uyar. Bu ayrışma, uzantıların sistem yükseltmelerini aksatmamasını ve tersine, yükseltmelerin uzantıları etkilememesini garanti ettiği için hayati öneme sahiptir.
- Anahtar Kullanıcı Esneklik Araçları (Seviye 1)
- Özel Alan Uygulaması: Anahtar kullanıcılar, veritabanı seviyesinde ek alanlarla standart iş nesnelerini (örneğin, ürün ana verisi, satış siparişi, muhasebe belgesi vb.) genişletebilir. Araç, birden fazla veri türünü ve özel geliştirilmiş Değer Yardımı varlıkları ile ek arama yardımını destekler. Özel alan oluşturulduktan sonra, sistem kullanıcıların yeni alanın hangi işlem uygulamalarında, analitik raporlarda, form arayüzlerinde veya eski GUI tabanlı işlem ekranlarında otomatik olarak oluşturulabileceğini seçmesine izin verir.
- Özel Mantık Uygulaması: Özel mantık uygulamasında, mevcut iş bağlamları, özel mantığın çalıştığı farklı uzantı noktalarını tanımlar, örneğin, belgeyi kaydetmeden önce değiştirme. Araç, basitleştirilmiş ABAP dil sözdizimini kullanır ve anahtar kullanıcılar için basit mantık için örnek kod sağlar.
- UI Uygulamasını Uyarlama: Araç, standart uygulama kullanıcı arayüzünün değiştirilmesine ve kullanıcılara dağıtılmasına olanak tanır. İşlevsellik, alan ekleme/silme ve kullanıcı arayüzündeki bölümleri değiştirmeyi içerir.
- Formlar Oluşturma ve Genişletme: Araç yardımıyla, anahtar kullanıcılar form düzenini değiştirebilir ve farklı kullanım senaryoları için farklı varyantlar oluşturabilir.
- Özel İş Nesnesi Oluşturma: CRUD özellikli nesneler oluşturulabilir ve bunlar bağımsız bir uygulama ve API olarak dağıtılabilir.
- Özel CDS Görünümü Uygulaması Oluşturma: CDS görünümleri, S/4HANA sanal veri modelleme çözümünün ana yapı taşlarıdır. CDS görünümleri, semantik olarak zengin veri modellerini standart ve verimli bir şekilde tanımlama ve tüketme yolu sağlar. Özel CDS görünümleri, beyaz listeye alınmış standart CDS görünümlerini yeniden kullanabilir. Bu, sistemde mevcut olmayan raporlama için API’ler ve veri kaynakları oluşturmanın bir yolunu sağlar.
- Özel Sorgu Uygulaması: Bu araç, son kullanıcı raporları oluşturma ve bunları sistemin gömülü analitik motorunu kullanan çok boyutlu uygulamalar olarak dağıtma yeteneği sağlar. Kullanıcılar, hem satırlarda hem de sütunlarda ihtiyaç duydukları alanları özgürce değiştirebilir.
- Durum Yönetimi – Genişletilmiş Çerçeve: Durum yönetimi motoru, kullanıcıya özel bildirimler göndermek için BOR veya Sınıf tabanlı iş akışı olaylarını kullanır. Bu, yaklaşan son tarihler, belgelerin başarısız onayları, süresi dolan sözleşmeler, stok sıkıntısı vb. içerir.
- Geliştirici Esnekliği (Seviye 2)
- Eclipse Tabanlı ABAP Geliştirme Aracı (ADT): Standart CDS görünümlerini genişletme, ABAP RESTful Uygulama Programlama Modeli (RAP) tabanlı uygulamalar oluşturma, yeni API’ler oluşturma.
- SAP BTP Üzerinde İş Uygulama Stüdyosu: Fiori Elemanları tabanlı uygulama dağıtma, Uyarlama Projesi aracılığıyla standart uygulamayı genişletme.
- Visual Studio Code: Fiori Elemanları tabanlı uygulama dağıtma, Uyarlama Projesi aracılığıyla standart uygulamayı genişletme.
- Yan Yana Esneklik (Seviye 3): Yan yana uzantılar, SAP S/4HANA’dan bağımsız olarak çalışmak üzere tasarlanmış ve standart SAP API’leri aracılığıyla onunla arayüz oluşturan yazılım uygulamalarıdır. Bu uzantıların hedef kitlesi ABAP veya ABAP olmayan (JAVA, Node.js) geliştiricilerdir. SAP İş Teknolojisi Platformu (BTP), herhangi bir SAP çözümü için yan yana uzantılar oluşturmak için tercih edilen platformdur. Amaç, gevşek bir şekilde bağlı ancak sorunsuz bir şekilde entegre olan, SAP S/4HANA’nın operasyonel süreçlerinden ve yaşam döngüsü yönetiminden bağımsız olarak çalışabilen uzantılar geliştirmektir. Bu uygulamalar çekirdek sistemden ayrıldığından ve standart ERP sistemine kıyasla farklı bir teknoloji yığını üzerinde çalıştığından, çekirdek sistemin bakım ve yükseltilebilirliği etkilenmez.
RICEFW’yi Bulut Uyumlu Uzantılarla Hizalamak
RICEFW, SAP projelerinde uygulama veya genişletme sırasında genellikle karşılaşılan farklı gereksinim veya nesne türlerini kategorize etmek için kullanılan bir kısaltmadır. RICEFW’deki her harf, farklı bir nesne türünü temsil eder. Bulut uyumlu uzantılar için tasarlanmış her araç, bir veya birkaç RICEFW kategorisine karşılık gelebilir. RICEFW çerçevesi, kendi başına, örtüşen gereksinimleri – örneğin, yeni bir raporun bir iş akışını tetiklediği ve bunun da bir yazdırma sürecini başlattığı bir senaryo gibi – açıkça belirtmez. Sonuç olarak, daha karmaşık durumları ele almak için genellikle birden fazla aracın kombinasyonunu kullanmak gerekir.
RICEFW Kategorisi | Bulut Uyumlu Uzantı Tekniği |
---|---|
Raporlar | Özel CDS görünümü, Özel analitik sorgu veya BTP analitik uygulaması |
Arayüzler | SAP standart beyaz listeye alınmış API’ler veya Özel CDS görünümü aracılığıyla özel arayüz ve RESTful API olarak dağıtılmış |
Dönüşümler | Yayınlanmış API’ler veya standart Veri Göçü kokpiti işlevselliği aracılığıyla özel veri göçü yapılabilir |
Geliştirmeler | Anahtar kullanıcı esneklik araçları: Özel alan, UI Uyarlama ve Özel mantık Yeni iş nesneleri için özel nesne Bildirim tabanlı uzantılar için durum yönetimi çerçevesi Geliştirici esneklik araçları: RAP uygulamaları için SAP S/4HANA Cloud ABAP ortamı Yedek uygulamalar için BTP üzerinde yan yana uzantı |
Formlar | Adobe form hizmeti ile BTP üzerinde yan yana esneklik Geliştirici esnekliği ile özel veri kaynağı |
İş Akışları | SAP İş Akışı yönetimi ile BTP üzerinde yan yana esneklik |
Sonuç
Bu metodolojiyi uygulayarak, tüm kullanıcı gereksinimleri projenin tasarım aşamasında RICEFW’ye göre kategorize edilebilir. Sonraki adımda, teknik ekipler her kullanıcı gereksinimini inceleyerek hangi uzantı türünün bunu karşılayabileceğini belirlemelidir.
- RICEFW’ye Göre Kategorizasyon: Bu adım, projenin kapsamını anlamak ve ele alınması gereken özel ihtiyaçları belirlemek için yapılandırılmış bir yaklaşım sağlar.
- Teknik Ekipler Tarafından Değerlendirme: Gereksinimler kategorize edildikten sonra, teknik ekip her kullanıcı gereksinimini inceleyerek hangi uzantı türünün en uygun olacağını belirler. Bu belirleme, uzantının karmaşıklığını ve gelecekteki esnekliğini doğrudan etkilediği için kritik öneme sahiptir.
- Daha Düşük Seviye Uzantılara Tercih: Bir gereksinimi karşılayabilecek birden fazla uzantı türü olduğunda, hedef en düşük seviyedeki uzantıyı tercih etmektir.
- Basitleştirme İçin İşbirliği: Bu adım, iş analistleri ve özelliğin ilk talep edeni ile görüşmeler yapmayı içerir. Bu görüşmelerin amacı, temel işlevsellikten ödün vermeden gereksinimi basitleştirmektir.
- Yüksek Seviye Uzantılardan Kaçınma: Genel hedef, iş gereksinimlerini karşılamak için seviye 3 veya ideal olarak seviye 2 uzantılara başvurmadan çözümler uygulamaktır.
Bulut uyumlu çözümler Yerinde sistemler için zorunlu olmasa da, giriş bölümünde belirtilen hedeflere daha yakınlaşmak için kullanılabilirler. Buna göre, geliştirme ekiplerine, belirli kullanıcı ihtiyaçlarının teknik modellemesine başladıklarında büyük bir rol düşer, çünkü sistemin uzun vadeli çalışabilirliğini kolaylaştırabilecek, ancak hakkında daha az bilgi sahibi olabilecekleri teknikleri seçerken dikkatli olmaları gerekir. Kurumsal karar vericiler için bulut uyumlu çözümlere geçiş, sadece modernizasyon adına yeniliği benimsemekle ilgili değildir. Bu, teknik borcu en aza indirmeyi amaçlayan stratejik bir karardır – gelecekteki sistem yükseltmelerini, ölçeklenebilirliği ve bakımı engelleyebilecek optimal olmayan teknoloji seçimlerinin birikimi. Teknik borç, ERP sistemi uygulamalarında kritik bir husustur, çünkü toplam sahip olma maliyetini, sistem esnekliğini ve zamanla yeni özellikleri benimseme yeteneğini önemli ölçüde etkileyebilir.