Hizmet olarak platform – Platform as a Service (PaaS), üçüncü taraf bir sağlayıcının, kullanıcılara internet üzerinden genellikle uygulama geliştirme için gerekli olan donanım ve yazılım araçlarını sunduğu bir bulut bilgi işlem modelidir. Bir PaaS sağlayıcısı donanım ve yazılımı kendi altyapısında barındırır. Sonuç olarak PaaS, geliştiricilerin yeni bir uygulama geliştirmek veya çalıştırmak için şirket içi donanım ve yazılım kurmak zorunluluğunu ortadan kaldırır. PaaS, adından da anlaşılacağı gibi uygulamaları geliştirmek ya da özelleştirmek için bir platform sunar. PaaS, uygulamaların hızlı, basit ve uygun maliyetli geliştirilmesini, test edilmesini ve entegrasyonunu sağlar.
PaaS genellikle bir işletmenin tüm bilgi teknolojileri altyapısının yerini almaz. Bunun yerine, işletim sistemleri, sunucular, veri tabanları, ara katman yazılımı ve ağ donanımları gibi temel bulut altyapısı bileşenlerini birleştirme eğilimindedir. Bu işlevlerin her biri, servis sağlayıcıya aittir ve servis sağlayıcısı tarafından işletilir, yapılandırılır ve korunur. PaaS ayrıca veri tabanı yönetim sistemleri, programlama dilleri, kütüphaneler ve çeşitli geliştirme araçları dahil olmak üzere ek kaynaklar sunmaktadır. Bir PaaS sağlayıcısı, kullanıcıların uygulamaları ve veri kümelerini yükleyebilecekleri esnek ve optimize edilmiş bir ortam sunar. Kullanıcılar, temel altyapı ve hizmetleri oluşturmak ve sürdürmek yerine uygulamaları oluşturmaya ve çalıştırmaya odaklanabilirler. Birçok PaaS ürünü yazılım geliştirmeye yöneliktir. Bu platformlar, hesaplama ve depolama altyapılarının yanı sıra geliştiricilerin daha hızlı ve verimli bir şekilde yeni yazılımlar oluşturmasına yardımcı olan metin düzenleme, sürüm yönetimi, derleme ve test hizmetleri sunar. PaaS, hizmetleri genel, özel ve karma bulutlar aracılığıyla sağlanabilir. PaaS ekip iş birliği geliştirme, uygulama tasarımı ve geliştirme, uygulama testi ve dağıtımı, web servis entegrasyonu, bilgi güvenliği ve veri tabanı entegrasyonu gibi hizmetler içermektedir.
Geliştiriciler için çeşitli PaaS tipleri mevcuttur:
Genel PaaS – Public PaaS, genel bulutta (public cloud) kullanım için en uygun seçimdir. Genel PaaS, kullanıcının yazılım dağıtımını kontrol etmesine izin verirken, bulut sağlayıcı, işletim sistemleri, veri tabanları, sunucular ve depolama sistemi ağları dahil olmak üzere uygulamaların barındırılması için gerekli tüm diğer bilgi teknolojileri bileşenlerinin dağıtımını yönetir. Genel PaaS sağlayıcıları, geliştiricilerin işlerin altyapı kısmını oluşturmaya gerek kalmadan sunucu ve veri tabanlarını kurmalarını, yapılandırmalarını ve kontrol etmelerini sağlayan bir ara katman yazılımı sunar.
Özel PaaS – Private PaaS, özel veri merkezinin güvenliğini, uyumluluğunu, faydalarını ve potansiyel olarak düşük maliyetlerini korurken, genel PaaS’ın çevikliğini sunmayı amaçlamaktadır. Özel PaaS genellikle kullanıcının güvenlik duvarında bulunan ve şirket içi veri merkezinde tutulan bir cihaz veya yazılım olarak sunulur. Özel PaaS, her türlü altyapı üzerinde geliştirilebilir ve şirketin özel bulutu içinde çalışabilir. Özel PaaS, bir kuruluşun geliştiricilere daha iyi hizmet etmesine, iç kaynak kullanımının geliştirilmesine izin verir. Özel PaaS, geliştiricilerin şirket uygulamalarını dağıtmalarına ve yönetmelerine izin verirken, aynı zamanda sıkı güvenlik ve gizlilik gereksinimlerine de uyar.
Karma PaaS – Hybrid PaaS, genel PaaS ile özel PaaS’ı birleştirerek şirketlere, genel PaaS tarafından sağlanan sınırsız kapasite esnekliğini ve özel PaaS’taki dahili bir altyapıya sahip olma avantajlarını kazandırır.
İletişim PaaS (CPaaS) – Communication PaaS, geliştiricilerin uygulamalarına altyapıya ve ara yüzlere ihtiyaç duymadan gerçek zamanlı iletişim eklemelerini sağlayan bulut tabanlı bir platformdur. Bu işlevler için özel olarak oluşturulan uygulamalarda gerçek zamanlı iletişim gerçekleşir. Örnekler arasında Skype, FaceTime, WhatsApp vb. uygulamalar bulunmaktadır.
CPaaS, kullanıcılara standart tabanlı uygulama, programlama ara yüzleri, yazılım araçları, önceden oluşturulmuş uygulamalar ve örnek kodlar dahil olmak üzere gerçek zamanlı iletişim özelliklerinin oluşturulması için eksiksiz bir geliştirme çerçevesi sunar.
CPaaS sağlayıcıları ayrıca destek ve ürün belgeleri sağlayarak geliştirme süreci boyunca kullanıcılara yardımcı olur. Bazı sağlayıcılar, farklı masaüstü ve mobil platformlarda uygulama oluşturmaya yardımcı olabilecek kütüphanelerin yanı sıra yazılım geliştirme kitleri de sunmaktadır.
Mobil PaaS (mPaaS) – Mobile PaaS, mobil uygulamaların yapılandırılması için ücretli bir entegre geliştirme ortamının kullanır. mPaaS’de kodlama becerileri gerekli değildir. MPaaS bir web tarayıcısı aracılığıyla sunulur ve genellikle genel bulut, özel bulut ve şirket içi depolamayı destekler. Hizmet, genellikle dahil edilen cihaz sayısına ve desteklenen özelliklere göre değişen, aylık ücretlendirmeyle kiralanır. MPaaS, kullanıcılara GPS, sensörler, kameralar, mikrofon gibi özelliklere doğrudan erişim ve HTML5 veya yerel uygulamaların geliştirilmesini basitleştirmelerini sağlayan, nesneye yönelik bir sürükle bırak ara yüzü sunmaktadır.
Açık PaaS- OpenPaaS takvim, kişiler ve posta uygulamaları dahil olmak üzere faydalı web uygulamaları sağlayan ücretsiz, açık kaynaklı bir iş birliği platformudur. OpenPaaS, kullanıcıların, özellikle karma bulutlardaki kurumsal iş birliği uygulamalarına yönelik bir PaaS teknolojisi geliştirmek amacıyla yeni uygulamaları hızlı bir şekilde dağıtmalarını sağlamak için tasarlanmıştır.
PaaS çözümleri, mobil uygulamaların geliştirilmesinde sıklıkla kullanılmaktadır. Bununla birlikte PaaS, neredeyse her cihazda çalıştırılabilecek bir uygulama oluşturma yeteneğine sahip esnek ve dinamik bir çözüm sunduğundan birçok geliştirici ve şirket, platformlar arası uygulamalar oluşturmak için PaaS’i tercih etmektedir. PaaS ayrıca bir şirketin ürün geliştirme metodolojilerine uyması için uygulama yaşam döngüsü yönetimi özelliklerinin yanı sıra spesifik özellikler sunar. Model ayrıca DevOps ekiplerinin, kesinti sağlamadan güncelleme ekleyen bulut tabanlı sürekli entegrasyon araçları eklemelerine izin vermektedir.
PaaS, bir uygulamanın pazara sunulma süresini kısaltmak için bakım görevlerini otomatikleştirir veya tamamen ortadan kaldırır. Ek olarak, PaaS, ölçeklendirilebilir altyapıyı yönetme yükünü azaltmaya yardımcı olur. PaaS, yük dengeleme, ölçeklendirme ve dağıtma karmaşıklığını ortadan kaldırır. Bu görevleri kontrol eden geliştiriciler yerine, PaaS sağlayıcıları sorumluluk alır.