rekayasa perangkata lunak terdistribusi - gunadarma

24
Rekayasa Perangkata Lunak Terdistribusi Nelly Sofi * source Andi Latifah Nabone

Upload: others

Post on 01-Mar-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Rekayasa Perangkata Lunak

Terdistribusi

Nelly Sofi

* source Andi Latifah Nabone

Arsitektur Multiprosesor

Arsitektur Client-Server

Arsitektur Objek Terdistribusi

CORBA

Materi yang akan dibahas

Sistem Terdistribusi

Hampir semua sistem berbasis-komputer yang besar, saat ini merupakan

sistem terdistribusi (sistem tersebar)

Kegiatan memproses informasi disitribusikan kepada sejumlah komputer

sebagai pengganti komputer tunggal

Rekayasa Perangkat Lunak Terdistribusi sekarang menjadi isu yang

penting

Sistem Personal yang tidak terdistribusi dan dirancang untuk berjalan pada

personel komputer atau workstation. Contoh : Word,Spreadsheet,grafis dll

Sistem embedded yang berjalan pada satu prosesor atau pada kelompok prosesor

yang terintegrasi

Sistem terdistribusi (tersebar) dimana perangkat lunak sistem berjalan pada

sekelompok prosesor yang bekerja sama dan terintegrasi secara longgar, dengan

dihubungkan oleh jaringan

Jenis-jenis Sistem

Pemakaian bersama sumber daya

Keterbukaan

Konkurensi

Skalabilitas

Toleransi kesalahan

Transparansi

Karakter Sistem Terdistribusi

Arsitektur Client-Server

Sistem dapat dianggap sebagai satu set layanan yg disediakan untuk Client.

Server penyedia layanan, server dan client dilakukan berbeda.

Arsitektur Objek Terdistribusi

Tidak ada perbedaan antara server dan client, sistem dapat dianggap sebagai

satu objek yang berinteraksi yang lokasinya tidak relevan. Tidak ada

perbedaan antara server dan client

Arsitektur Sistem Terdistribusi

Perangkat lunak yang dapat menangani bagian-bagian yang beragam agar dapat

berkomunikasi dan bertukar data

Istilah middleware mengacu kepada posisi ditengah-tengah dari software ini

diantara berbagai komponen sistem terdistribusi yang berbeda

Contoh :

Transaction processing monitors

Data convertors

Communication controllers

Middleware

Merupakan model sistem terdistribusi yang paling sederhana

Sistem terdiri dari sejumlah proses yang dapat (tapi tidak mesti) berjalan pada

beberapa prosesor yang terpisah

Model ini umum pada sistem real-time yang besar

Pendistribusian proses ke prosesor dapat ditentukan sebelumnya atau bisa juga

dikendalikan oleh dispatcher yang memutuskan proses yang mana dialokasikan ke

masing-masing prosesor

Arsitektur Multiprosesor

Model Aplikasi dimana sekumpulan layanan disediakan oleh Server dan

sekumpulan Client yang membutuhkan layanan tersebut

Klien tahu server dan server tidak perlu tahu client nya

Klient dan server berada pada proses logikal

Tidak harus ada pemetaan 1:1 antar proses dengan prosesor pada sistem

Arsitektur Client Server

Lapisan Presentasi

Berhubungan dengan penyajian informasi ke user dan dengan semua interaksi user

Lapisan Pemrosesan Informasi

Berhubungan dengan implementasi logika aplikasi

Lapisan Manajemen Data

Berhubungan dengan semua operasi database

Arsitektur Lapisan Berlapis

Model Thin-client

Pada model ini semua pemrosesan aplikasi dan manajemen data dilakukan pada

server. Klien bertanggung jawab untuk menjalankan perangkat lunak presentasi

Model Fat-client

Pada model ini, server hanya bertanggung jawab untuk manajemen data. Perangkat

lunak pada klien mengimplementasi logika aplikasi dan interaksi dengan user sistem

Thin Client dan Fat Client

Model ini merupakan model yang paling sederhana untuk digunakan ketika

sistem warisan (legacy) sentral dikembangkan menjadi arsitektur Client-Server.

Kekurangan terbesar dari model thin-client adalah bahwa model tersebut

menempatkan beban berat pemrosesan pada pada server dan jaringan

Model Thin Client

Menggunakan kekuatan pemrosesan yang tersedia dan mendistribusikan

pemrosesan logika aplikasi dan presentasi kepada klien

Server harus merupakan server transaksi yang menangani semua transaksi

database

Lebih rumit dibandingkan model thin client terutama aspek manajemen.

Aplikasi diinstal di semua client

Model Fat Client

Pada arsitektur three-tier , tiap lapisan arsitektur aplikasi dapat dieksekusi dengan

prosessor yang terpisah

Arsitektur ini mempunyai unjuk kerja yang lebih baik dibandingkan pendekatan thin-

client dan lebih sederhana mengelolanya dibandingkan pendekatan fat-client

Arsitektur yang dapat dikembangkan- bila demands bertambah , maka tinggal

menambahA more scalable architecture - as demands increase, extra servers can be

added

Arsitektur Three Tier

Pada model Client-Server sistem terdistribusi, klien dan server berbeda

Klien menerima layanan dari server dan tidak dari klien lainnya

Server dapat bertindak sebagai klien dan menerima layanan dari server lainnya

Klien tidak meminta layanan dari klien

Model ini membatasi fleksibilitas perancang sistem dalam arti perancang harus

memutuskan kapan layanan diberikan

Pendekatan yang lebih umum bagi sistem terdistribusi adalah menghilangkan

perbedaan antara klien dan server, dan merancang arsitektur sistem sebagai arsitektur

objek terdistribusi

Arsitektur Objek Terdistribusi

Sistem ini memungkinkan perancang sistem menunda keputusan mengenai dimana dan

bagaimana layanan harus disediakan

Model ini merupakan arsitektur yang sangat terbuka yang meungkinkan sumber day abaru

ditambahkan jika perlu

Sistem ini sangat fleksibel dan dapt dikembangkan dengan mudah

Rekonfigurasi sistem secara dinamis akan dimungkinkan dengan objek berimigrasi melintasi

jaringan bilamana diperlukan

Keuntungan Model Arsitektur

Terdistribusi

Sebagai model logika yang memungkinkan menstruktur dan mengorganisasikan

sistem. Dalam hal ini , yang perlu dipikirkan mengenai bagaimana menyediakan

fungsionalitas sistem hanya dalam hitungan layanan dan kombinasi layanan

Sebagai pendekatan yang fleksibel terhadap sistem klien-server. Dalam hal ini ,

model logika sistem merupakan model client-server, tetapi baik client maupun

server direalisasikan sebagai objek terdistribusi yang berkomunikasi melalui bus

perangkat lunak

Penggunaan Arsitektur Objek

Terdistribusi

Data mining adalah contoh dari sistem arsitektur objek terdistribusi

Data mining akan mencari hubungan dalam sejumlah database yang berbeda

Objek integrator masing-masing dapat menangani hubungan-hubungan khusus

dan mengumpulkan informasi dari semua database untuk mencoba

menyimpulkan hubungannya

Objek visualiser berinteraksi dengan objek integrator untuk menghasilkan

visualisasi atau laporan mengenai hubungan yang telah ditemui

Sistem Data Mining

CORBA adalah standar internasional untuk Object Request Broker - middleware -

untuk mengelola komunikasi diantara objek yang didistribusikan

Ada beberapa implementasi dari CORBA yang tersedia

DCOM [ Distributed Component Object Mode] adalah alternatif lain dari CORBA

yeng merupakan produk Microsoft

CORBA didefinisikan oleh The Object Management Group [OMG]

CORBA [Comman Object Request Broker

Architecture]

OMGmengusulkan agar aplikasi terdistribusi terbuat dari sejumlah komponen :

Objek Aplikasi : yang dirancang dan diimplementasikan untuk aplikasi ini

Objek Standar : yang didefinisikan oleh OMG untuk domain khusus. Misalnya untuk

keuangan/asuransi, e-comm, kesehatan dll.

Layanan CORBA : fundamental yang menyediakan layanan komputasi terdistribusi dasar

seperti direktori, manajemen sekuritas , dll.

Fasilitas CORBA horizontal, seperti user interface, fasilitas manajemen sistem dll.

Struktur Aplikasi

Objek CORBA merupakan enkapsulasi status dengan interface yang terdefinisi dengan baik dan

netral dalam hal bahasa yang dideskripsikan dalam IDL [interface definition language]

Model objek untuk objek aplikasi

Object Request Broker (ORB) yang menangani permintaan akan layanan objek

Satu set layanan objek yang merupakan layanan umum dan mungkin diperlukan oleh banyak

aplikasi terdistribusi

Satu set komponen umum, yang dibangun diatas layanan-layanan dasar yang mungkin

dibutuhkanoleh aplikasi ini.

Standar CORBA

Objek CORBA dapat dikomparasi , secara prinsip, dengan objek di dalam C++ dan Java

Kedua mesti terpisah dan dinyatakan dengan IDL

Oleh karenanya diperlukan pemetaan dari IDL ke bahasa pemrograman (C++, Java,

etc.)

Dengan demikian object yang ditulis dengan bahasa yang berbeda dapat

berkomunikasi satu dengan lainnya

Objek CORBA

Layanan Penamaan dan Layanan Pertukaran

Memungkinkan objek mengacu ke dan menemukan objek lain pada jaringan

Layanan Pengumuman

Memungkinkan objek memberitahu objek lain telah terjadi event

Layanan Transaksi

Mendukung transaksi atomic dan rollback (kembali ke asal) jika ada kesalahan

Layanan CORBA

TERIMA KASIH