Power Platform ile Production Uygulamaları Nasıl Geliştiriyorum
Power Platform genelde hızlı uygulama geliştirme aracı olarak anlatılır.
Bu doğru.
Ama benim tek kullanma sebebim bu değil.
Asıl ilginç olan şey şu:
Gerçek kullanıcıları, gerçek verileri ve gerçek sonuçları olan sistemler kurabiliyorsun — platformun dışına çıkmak zorunda kalmadan.
Ve eğer dışına çıkman gerekirse de, seni kısıtlamıyor.
Çoğu Uygulama UI Yüzünden Bozulmaz
Birçok Power Apps projesi aynı şekilde başlar:
Canvas açılır, birkaç ekran tasarlanır, veri kaynağı bağlanır ve her şey çalışıyor gibi görünür.
Sonra bir noktada işler tuhaflaşmaya başlar.
Kırık değildir. Ama sağlam da değildir.
Bu durumun UI ile ilgisi çoğu zaman yoktur.
Asıl problem genelde şuralarda olur:
- belirsiz veri modeli
- farklı yerlere dağılmış iş mantığı
- ne yaptığı tam takip edilemeyen flow’lar
- sonradan eklenmiş rol ve yetkilendirme yapıları
UI suçlanır çünkü görünür olan odur.
Ama problem neredeyse her zaman yapısaldır.
Asıl İş Dataverse’te Başlar
Her şeyin oturmaya başladığı nokta, Dataverse’i sadece bir veri deposu olarak görmemeye başladığın andır.
Orası sadece verinin durduğu yer değil.
Sistemin şekillendiği yer.
İlişkiler, isimlendirme, yapı — hatta entity’leri nasıl böldüğün gibi küçük kararlar bile zamanla büyür.
İyi tasarlanmış bir model:
- UI’yi sadeleştirir
- flow’ları öngörülebilir hale getirir
- yapılan değişikliklerin sistemi kırmasını engeller
Zayıf bir model ise tam tersini yapar.
Bunu hemen fark etmezsin.
Ama mutlaka hissedersin.
Canvas Apps Sanılandan Çok Daha Güçlü
Canvas Apps çoğu zaman sadece bir UI katmanı gibi görülür.
Ben o şekilde kullanmıyorum.
Canvas:
- state’in yönetildiği
- kullanıcı davranışının şekillendiği
- anlık kararların verildiği yer
İyi tasarlandığında sadece veri göstermez —
sistemin nasıl çalışacağını da belirler.
Ve evet, düşündüğünden çok daha ileriye götürülebilir.
Dinamik ekranlar, koşullu mantık, role göre davranışlar…
Canvas içinde oldukça kompleks etkileşimler kurabilirsin.
Bir Süre Sonra “Low-Code” Tartışması Anlamsızlaşıyor
Bir noktadan sonra low-code vs code tartışması önemini kaybediyor.
Çünkü yaptığın şey aslında şu: → bir sistem kurmak
Bazen bu sistem tamamen Power Platform içinde kalır:
- Dataverse modeli yönetir
- Canvas etkileşimi sağlar
- Power Automate süreçleri yürütür
Ve bu yeterlidir.
Bazı durumlarda ise entegrasyon gerekir:
- mevcut şirket sistemleri
- API’ler
- dış servisler
O noktada platformu genişletirsin:
- web resource’lar
- PCF component’leri
- özel entegrasyonlar
Bu, platform yetersiz olduğu için değil,
gerçek dünyadaki sistemlerin izole olmadığı için.
Flow’lar Sessizce Kırılır
Power Automate genelde hafife alınır.
Basit görünür.
Ama production’da ciddi sorumluluk taşır.
Onay süreçleri, arka plan işlemleri, zincirleme akışlar…
Kritik mantığın büyük kısmı burada olur.
Ve bir şey bozulduğunda, çoğu zaman sessiz bozulur.
Asıl risk de burada.
Flow’ları doğru tasarlamazsan:
- neyin çalışıp çalışmadığını takip edemezsin
- gizli bağımlılıklar oluşur
- sistem fark edilmeden aksar
Bu yüzden bakış açın değişir:
- bu adım fail olursa ne olur?
- bu işlem iki kere çalışırsa ne olur?
- çalıştığını nasıl doğrularım?
O noktada “automation” olmaktan çıkar,
sistemin bir parçası haline gelir.
Asıl Değişim Teknik Değil, Zihinsel
En büyük fark teknik değil.
Şu noktaya geldiğinde başlar:
“Bu ekranı nasıl yaparım?” yerine
“Bu sistem nasıl davranmalı?” diye düşünmeye başladığında
Bu değişim her şeyi etkiler:
- veri modelini
- etkileşim tasarımını
- iş mantığının yerini
Artık ekran değil, sistem düşünmeye başlarsın.
Neden Hâlâ Power Platform Kullanıyorum
Kolay olduğu için değil.
Hızlı olduğu için de değil.
Şu yüzden:
- uçtan uca sistem kurabiliyorum
- hızlı iterasyon yapabiliyorum
- gerektiğinde derinleşebiliyorum
İstersen tamamen platform içinde kalıp sağlam bir sistem kurarsın.
İstersen genişletip daha büyük bir ekosisteme bağlarsın.
Asıl değer bu esneklik.
Sonuç
Power Platform bir kısayol değil.
Bir sistem kurma ortamı.
Fark, platformda değil.
Onu nasıl kullandığında.