No Code / Low Code Uygulama Geliştirme Kavramları

×

Hata mesajı

  • Notice: _bootstrap_glyphicons() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 771 satırı) içinde Undefined index: 3.0.
  • Warning: _bootstrap_glyphicons() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 777 satırı) içinde array_merge(): Argument #1 is not an array.
  • Warning: _bootstrap_glyphicons() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 781 satırı) içinde array_merge(): Argument #1 is not an array.
  • Warning: _bootstrap_glyphicons() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 841 satırı) içinde array_merge(): Argument #1 is not an array.
  • Warning: _bootstrap_icon() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 875 satırı) içinde in_array() expects parameter 2 to be array, null given.
  • Warning: _bootstrap_icon() (/var/www/html/sites/all/themes/bootstrap/includes/common.inc dosyasının 875 satırı) içinde in_array() expects parameter 2 to be array, null given.
İstanbul Şubesi

No Code / Low Code, temel düzeyde veya hiç kod yazmadan uygulama geliştirmek ve hızlıca kullanıma sunulabilmek demektir. Bu yeni yazılım geliştirme yaklaşımı günümüzde kullanım alanını arttırmaktadır. Karmaşık ve bütünleşik yapılarda geleneksel çözümler kullanılmaya devam etse de gelişen platformlar bu karmaşık alanlar içinde gelecek için çözüm sağlama potansiyeline sahiptir.

Yazılım dünyası hızla gelişmeye devam ediyor. Her geçen sene ortaya çıkan yeni yazılım dilleri, mimari yaklaşımlar, karmaşık problemlerimize hızlı ve bütünleşik çözümler getiriyor.

Yazılım dünyasına girmek isteyen ancak bilgisayar bilimleri, yazılım mühendisliği ve elektronik haberleşme gibi alanlarda eğitim almamış kişiler için yoğun çalışma gerektiren bir gelişim süreci mevcut. Süreçleri anlamlandırmak, teknik bilgiyi edinmek, deneyim kazanmak ve bunları bir araya getirerek günlük yaşamda karşılaşılan sorunlara çözümler üretmek yoğun emek ve süreç gerektirmekte.

Süreç, şirketler tarafında da benzer şekilde ilerlemekte, bir yazılım projesi geliştirmek için, nitelikli insan kaynağı, donanım kaynağı ve lisans ücretleri ortaya çıkmakta. Aynı zamanda, kurulan mimari yapı ve seçilen dil gibi etkenler ile yapılan iş üzerinden geri dönüşler ve revizyonlarda ciddi zaman ve maliyet yükleri de oluşabilmektedir.

No Code / Low Code Nedir?

No Code / Low Code, temel düzeyde veya hiç kod yazmadan uygulama geliştirmek ve hızlıca kullanıma sunulabilmek demektir. Bu yeni yazılım geliştirme yaklaşımı günümüzde kullanım alanını arttırmaktadır. Karmaşık ve bütünleşik yapılarda geleneksel çözümler kullanılmaya devam etse de gelişen platformlar bu karmaşık alanlar içinde gelecek için çözüm sağlama potansiyeline sahiptir.

No Code / Low Code platformlar geleneksel program geliştirme süreçlerinin aksine görsel modeller ve sürükle bırak gibi hızlı çözümler ile algoritmamızı oluşturmaya olanak tanımaktadır.  Burada kritik nokta, veri tabanları, mimari yapılar, implementasyon (uygulamaya almak) gibi konular ile uğraşmadan doğrudan yazılım geliştirmeye zemin sağlamasıdır.

Sürükle bırak yapısı ile program geliştirme platformlarının birçoğu iş süreçlerinin yazılıma dönüştürülmesi mantığı ile çalışmaktadır. Bu da platformların içeriğinde BPM (Business Process Management – İş Süreci Yönetimi) modüllerinin yer almasını sağlar. Ancak yine de birçok Low Code platformu esneklik yaratmak amacıyla belirli düzeyde kod yazmaya ve programa müdahale etmeye müsaade eder.

Burada No Code platformlar Excel – Access gibi temel programları kullanabilen kullanıcıların uygulama geliştireceği kolaylıkta yapılarken, Low Code platformlar istenildiğinde arka planda çalışan kod dizinine de müdahale olanağı tanır.

Güvenlik

Yazılım geliştirenler için önemli bir nokta da güvenlik sorunudur. Bu platformlarda uygulamanın güvenlik sorumluluğu, uygulamayı geliştiren kişide değil platformu sağlayan yazılım geliştirici firmadadır. Bu ise riski paylaştırmayı ve daha kolay yönetmeyi sağlar.

Geliştirme platformları ISO27001, BS7799, ITIL ve COBIT standartlarını temel almaktadır.

Yapı

Low Code geliştirme platformları genelde iki farklı yaklaşım ile bizlere çözüm üretirler, bunlar model bazlı ve veri tabanı bazlı yaklaşımlardır. Model bazlı yaklaşımda temel, belirlenen iş modelidir. Bu iş modeline uygulamanın mimarisi kurulur. Veri tabanı bazlı yaklaşımda ise yapılacak işe uygun veri tabloları oluşturulur ve bu tablolar arası ilişkisel yapılar ile işlemler gerçekleştirilir.

Yeni Kavramlar

No Code / Low Code kavramlarının hayatımıza girişi ile yazılım geliştirici (Software Developer) yanında yeni mesleki kavramlar da hayatımıza girmiştir. Bunlar vatandaş geliştirici ve vatandaş veri analistidir. Vatandaş geliştirici (citizen developer), yazılım bilgisi olmayan veya temel düzeyde bilgisi olan kişilerdir. Vatandaş veri analisti (citizen data scientist) ise yazılım bilgisi olmayan, temel düzeyde veri yapıları ve sorgu mantığını bilen kişilerdir.

Platform Seçimi

No Code / Low Code geliştirme yaklaşımında öncelik platform seçimidir. Bazı platformlar bulut ortamında çalışmakta olup her yerde uygulama geliştirmeye izin verirken bazı uygulamalar ise bilgisayar üzerine kurulu olarak çalışmaktadır. Bir diğer ayrım noktası ise seçilecek platformun kod yazımına ne düzeyde izin verdiğidir. Bazı platformlar geliştirilen uygulamanın arka planında yarattığı kodlara müdahale olanağı vererek daha fazla özelleştirme yapılmasına imkân tanımaktadır.

Son olarak bir diğer önemli seçim kriteri ise entegrasyon desteğidir. Birçok platform kolay entegrasyon sağlaması amacıyla hazır yapılar sağlamaktadır. Bu özellik, özellikle bağlı yapıların giderek çoğaldığı günümüzde, geliştireceğimiz uygulamaların sürekliliği ve verimli kullanımı açısında değerli bir seçim kriteridir.

Kullanım Alanları

No Code / Low Code yaklaşımı kişisel web sitesi, kişisel uygulamalar vb. geliştirmeleri yanında KOBİ ve kurumsal şirketler için de esnek ve hızlı çözümler sağlamaktadır. Şirket içinde ihtiyaca uygun bir CRM uygulaması oluşturulabilir, stok takibi için bir veri tabanı yapısı yaratılabilir veya mevcut uygulamalar arası bağlantıyı sağlamak için bir entegrasyon veri tabanı geliştirebilir.

Sonuç

No Code / Low Code yaklaşımları gelişimini sürdürmeye devam ediyor. Özellikle yazılım yetkinliklerinin avantaj sağladığı günümüzde, uzmanlık alanları doğrudan yazılım ve IT sektörü olmayan ancak bu konuda bir düzeyde bilgi birikimi olan mekatronik mühendisliği ve endüstri mühendisliği gibi disiplinlerde yer alan bireyler için hızlı ve optimize çözümler sağlanmaktadır.

Yapılan araştırmalara göre 2024 yılına kadar geliştirilen tüm yazılımların yaklaşık %65’inin No Code / Low Code platformlar kullanılarak yapılması planlanıyor.

No Code / Low Code platformlarının gelişiminin devam etmesine karşın yazılım mühendisliği, bilgisayar mühendisliği gibi uzmanlık alanları ile yazılım gelişimi ve IT teknolojileri olan kişiler varlıklarını sürdürecektir. Karmaşıklık düzeyi yüksek ve entegre çalışan, kullanıcı ile etkileşime giren uygulamaların geliştirilmesi, ihtiyaç duyulan bilgi ve tecrübe nedeniyle bu disiplinler tarafından geliştirilmeye devam edecek.

Kaynaklar

[1] Gartner 8.8.2019 - Magic Quadrant for Enterprise Low-Code Application Platforms
[2] https://www.nocode.tech/
[3] https://blog.amplexor.com/opentext-appworks-making-low-code-case-management-possible

Yazar: Can Doğan Olgun – Makina Mühendisi
MMO İstanbul Şubesi Mekatronik Komisyonu Üyesi