metode pengembangan perangkat lunak lifecycle untuk mengembangkan solusi
berbasis SOA, atau solusi dengan menggunakan prinsip
berorientasi layanan, SOMA mendefinisikan teknik kunci dan menjelaskan peran pada
sebuah proyek SOA dan Work Breakdown Structure (WBS). SOMA sendiri dikemukakan
oleh IBM (IBM Global Services, 2004, p2-3). WBS meliputi tugas, input dan hasil output,
serta prescriptive guidance yang diperlukan untuk rincian
analisis, desain, implementasi, dan deployment of services, komponen, dan flow yang
dibutuhkan untuk membangun lingkungan SOA kuat dan dapat digunakan kembali.
Metode SOA dalam SOMA meliputi tujuh fase utama ditunjukkan pada Gambar Fractal
phases menjelaskan kapabilitas yang dapat disesuaikan dengan kebutuhan dalam
berbagai situasi. SOMA mengaplikasikan metode komponen dengan cara
rekursif kepada dirinya sendiri dalam rilis kecil atau siklus iterasi, dan juga fokus pada
pengelolaan resiko teknis dan menghasilkan perangkat lunak yang berguna secara bisnis.)
Realisasinya, sebagai contoh pengembangan semua tahap.
https://media.neliti.com/media/publications/165970-ID-studi-kasus-implementasi-service-
oriente.pdf
Kemampuan SOA yang dapat memenuhi kebutuhan bisnis yang memerlukan unit pendukung
yang fleksibel dan menjadi jembatan yang mengintegrasikan bisnis dan layanan dengan
menggunakan teknologi yang sudah ada, membuat BNI akhirnya mempertimbangkan untuk
mulai mengadopsi SOA dari IBM pada Desember 2006. Implementasi SOA di BNI kemudian
dijalankan secara bertahap dan berkelanjutan.
Secara garis besar implementasi SOA ini dilakukan dalam empat fase.
Saat ini, BNI telah mengalihkan layanan Internet banking, mobile banking dan ATM-nya ke
dalam infrastruktur SOA. Inilah yang membuat bank ini mampu menambahkan dengan cepat
fitur-fitur baru ke pembagai saluran elektroniknya.
Tahap selanjutnya dari proyek ini adalah mengimplementasi WebSphere Service Register
&Repository, yang akan mengatur berbagai jenis layanan. Tool ini berfungsi mengelola gudang
layanan yang sudah didefinisikan dan digunakan di BNI.Peranti lunak ini juga dapat melacak
versi dari program tertentu. Jika tim pengembangan bisnis meminta Divisi TI membuat aplikasi
baru untuk sebuah produk baru, hal pertama yang dilakukan programmer adalah memeriksa
apakah ada layanan yang dapat digunakan kembali – dengan atau tanpa modifikasi – sebelum
mereka memutuskan untuk membuat program (aplikasi) baru.
Manfaat :
Proses pengembangan sistem TI dipercepat dari sekitar tiga bulan menjadi satu bulan hingga
dua minggu.
Dari sisi time to market, BNI dapat mengirim produk baru ke pasar rata-rata 60% lebih cepat dari
sebelumnya. Untuk penambahan fitur produk yang sudah ada, development time-nya bisa lebih
cepat rata-rata 70%. Dari sisi utilisasi sumber daya, bisa ditingkatkan hingga 50%.
Pengembangan aplikasi menjadi lebih terarah dan terdefinisi sejak awal.
Perhitungan cost-benefit aplikasi yang hendak dikembangkan lebih akurat.
Memperkecil kesenjangan antara unit bisnis dan unit TI.
Pertumbuhan fungsionalitas bisnis Credit Suisse yang tidak bisa lagi didukung oleh
infrastruktur IT telah mendorong dikenalkannya sebuah arsitektur yang terintegrasi
berdasarkan Service-Oriented Architecture (SOA) ke dalam perusahaan. Pindah dari sistem
mainframe ke arsitektur berorientasi layanan (SOA) yang menggunakan layanan web
menarik dilakukan, tetapi menakutkan (Rodriguez et al., 2013). Implementasi SOA pun
diterapkan pada level organisasi
Source: https://ekajogja.com/arsip/definisi/rest-representational-state-transfer/
Keuntungan REST
bahasa dan platform agnostic, lebih sederhana/simpel untuk dikembangkan ketimbang SOAP
mudah dipelajari, tidak bergantung pada tools
ringkas, tidak membutuhkan layer pertukaran pesan (messaging) tambahan
secara desain dan filosofi lebih dekat dengan web
Kelemahan REST
REST (Representional State Transfer) adalah suatu arsitektur metode komunikasi yang
menggunakan protokol HTTP untuk pertukaran data dan metode ini sering diterapkan
dalam pengembangan aplikasi. Dimana tujuannya adalah untuk menjadikan sistem yang
memiliki performa yang baik, cepat dan mudah untuk di kembangkan (scale) terutama
dalam pertukaran dan komunikasi data.
API (Application Protocol Interface) adalah kumpulan dari subroutine definitions,
protocol dan juga tools untuk berkomunikasi data antar aplikasi software.
Jadi bisa diartikan bawah REST itu adalah salah satu dari desain arsitektur di
dalam API
2. Rest API dapat digunakan secara internal dan external. Rest API lebih
terbuka dan terdokumentasi. SOA / XML lebih sering di pakai untuk kasus
internal, dan kadang-kadang di pakai di kasus external
4. Rest API dan SOA harus di jaga ketat (agar informasi tidak tersebar), di
monitor status nya dan di audit.
5. Rest API dan SOA bergantung pada aplikasi dan jasa yang di kelola oleh
developer, organisasi, dan providers (supplier?). Jika terjadi perubahan, maka
harus di monitor dan di jaga kualitas data nya, karena perubahan yang kurang
cocok akan memberik dampak yang kurang sesuai terhadap Rest API dan
SOA.
6. Rest API dan SOA memiliki lifecyle yang mempunyai lifespan yang Panjang.
Harus mempunyai alat-alat yang mendukung development cycle.
7. REST API biasanya berhubungan dengan JSON sedangkan SOA biasanya berhubungan
dengan XML dan SOAP, SOA juga lebih dari sebuah protocol.
8. Rest API dapat digunakan untuk kasus eksternal dan internal, Bisa dikatakan REST API lebih
open dan terdokumentasi. SOA dan XML lebih banyak digukanan untuk kasus internal, tetapi
mereka juga lazim dalam skenearo B2B eksternal.
9. REST API biasanya berhubungan dengan JSON, tetapi ada juga protocol lain seperti web-
sockets, MQTT, dll.
10. REST API dan SOA harus memiliki sekuritas yang aman, termonitor, ter-orkestra, termediasi dan
teraudit.
11. REST API dan SOA keduanya adalah services tetapi tergantung dari aplikasi dan services yang
dikelola oleh developer, organisasi dan beberapa vendor. Untuk mengubahnya harus lebih
dimanaged ulang karena akan ber-impact pada services yang lain. Arsitektur seperti security,
compliance, policy, monitoring dan analisa adalah sama.
12. REST API dan SOA memiliki lifecycle yang harus dikelola jika sudah memiliki rencana. Untuk
mengelolanya dibutuhkan tools
Source:
https://www.i-3.co.id/2018/04/20/oracle-service-oriented-architecture-soa/
https://medium.com/@kiddy.xyz/restful-api-apaan-tuh-dbcfa434761e
https://ngide.net/posts/apa-itu-rest-api
https://www.akana.com/blog/api-vs-soa-are-they-different