Anda di halaman 1dari 2

Nama : Nasyarudin Latif NIM : J2F009054 1. Sebut dan jelaskan berbagai architecture style perangkat lunak!

Beberapa architecture style perangkat lunak: Repository Dalam repository architecture style, subsistem mengakses dan memodifikasi struktur data tunggal yang dinamakan repository. Subsistem bersifat independen dan hanya berinteraksi dengan repository. Aliran kontrol bisa diinisiasi baik dari repository maupun subsistem. Model/View/Controller (MVC) Dalam MVC architecture style, subsistem dibagi menjadi tiga tipe yang berbeda: subsistem model mengatur pusat pengetahuan, subsistem view menampilkannya pada pemakai, dan subsistem controller mengatur aliran interaksi dengan pemakai. Subsistem model dikembangkan sedemikian rupa sehingga tidak bergantung pada subsistem view dan controller. Apabila ada perubahan kondisi, maka akan ditampilkan pada subsistem view melalui protokol subscribe/notify. MVC merupakan pengembangan dari repository di mana model berfungsi sebagai struktur data pusat dan controller mengatur aliran kontrol. Client/Server Dalam client/server architecture style, sebuah subsistem, yang dinamakan server, menyediakan servis kepada instans dari subsistem lain yang dinamakan client, yang bertanggung jawab atas interaksi dengan pemakai. Permintaan servis biasanya dilakukan melalui mekanisme remote procedure call atau common object broker. Aliran kontrol baik dalam server maupun client bersifat independen, kecuali pada sinkronisasi untuk mengatur permintaan atau menerima hasil. Peer-to-peer Peer-to-peer architecture style adalan generalisasi dari client/server architectural style, di mana subsistem bisa bertindak sebagai client maupun server, maksudnya tiap-tiap subsistem bisa meminta atau menyediakan servis. Aliran kontrol dalam masing-masing subsistem bersifat independen kecuali pada sinkronisasi untuk permintaan. Three-tier Three-tier architecture style membagi subsistem ke dalam tiga layer: interface layer berisi semua objek yang berhubungan dengan pemakai termasuk window, form, web page, dsb.; application logic layer berisi semua objek kontrol dan entitas, yang mengatur processing, rule checking, dan notifikasi yang diperlukan oleh aplikasi; storage layer menjalankan fungsi storage, retrieval dan query pada objek persisten. Four-tier Four-tier architecture style adalah three-tier architecture style yang bagian interface layer-nya diuraikan menjadi presentation client layer dan presentation server layer. Presentation client layer terletak di dalam mesin pengguna, dan presentation server layer terletak di satu atau beberapa server. Arsitektur four-tier memungkinkan penggunaan objek presentasi yang sama pada presentation client yang berbeda dalam sebuah aplikasi. Pipe and Filter Dalam pipe and filter architecture style, subsistem memproses data yang diterima dari satu set input dan mengirim hasilnya ke subsistem lain melalui satu set output. Subsistem

tersebut dinamakan filter dan hubungan antar subsistem dinamakan pipe. Masing-masing subsistem hanya tahu isi dan format data yang diterima dari pipe input, bukan dari filter yang menghasilkannya. Masing-masing filter dieksekusi secara konkuren, dan disinkronisasi melalui pipe. Pipe and filter architecture style mudah dimodifikasi: filter bisa digantikan oleh filter yang lain atau diatur ulang untuk tujuan yang berbeda. 2. Mengapa layering sistem diperlukan? Jelaskan! Layering adalah proses mengelompokkan subsistem yang servisnya saling berkaitan. Hasil dari proses tersebut dinamakan layer. Tiap-tiap layer menggunakan servis dari layer yang lain. Layer dibuat terurut sedemikian rupa sehingga masing-masing layer hanya bergantung pada layer di bawahnya dan tak punya pengetahuan terhadap layer di atasnya. Susunan layer yang terurut ini membentuk sebuah dekomposisi hierarkis. Layer yang tidak bergantung pada layer yang lain dinamakan layer bawah dan layer yang tidak digunakan oleh layer yang lain dinamakan layer atas. Layering merupakan salah satu cara yang digunakan untuk mendekomposisi sistem. Dalam mendekomposisi suatu sistem, pertama-tama kita mempartisi sistem tersebut menjadi beberapa subsistem yang berbeda yang bertanggung jawab terhadap fungsi tertentu atau menjalankan node hardware tertentu. Apabila setelah dipartisi subsistem tersebut masih kompleks, maka masing-masing subsistem tadi didekomposisi ke dalam layer-layer hingga mereka cukup sederhana untuk dibuat oleh satu developer. Jadi fungsi layering adalah untuk membagi-bagi suatu subsistem menjadi layer-layer yang cukup sederhana untuk diterapkan oleh satu developer.

Anda mungkin juga menyukai