Download - Rpl 010 - perancangan arsitektural
Proses perancangan awal untuk mengidentifikasisubsistem ini dan menetapkan kerangka kerja untukcontrol dan komunikasinya.
Proses perancangan arsitektur berhubungan denganpenetapan kerangka kerja strukturdasar untuk suatusistem. Proses ini melibatkan identifikasi komponen-komponn utamadan komunikasi antar komponen-komponen tersebut.
Keuntungan Perancangan Arsitektur Perangkat Lunak• Komunikasi stakeholder.
Arsitektur merupakan presentasi tingkat tinggi dari sistem yang dapat digunakansebagai fokus pembahasan oleh stakeholder.
• Analisa Sistem.
Analisa sistem dilakukan untuk membuat keputusan perancangan arsitekturalyang memiliki efek sangat besar mengenai kinerja, keandalan, dan kemampuandapat dipelihara.
• Pemakaian ulang berskala besar.
Arsitektur dapat ditransfer melintasi sistem dengan persyaratan yang sama dandengan demikian dapat mendukung pemakaian ulang perangkat lunak berskalabesar.
• Penstrukturan sistem.
Sistem distruktur menjadi sejumlah subsistem utama dimana suatu
subsistem merupakan unit perangkat lunak yang indepnden.
Komunikasi antar subsistem juga dimodelkan.
• Pemodelan control.
Menetapkan hubungan control antar bagian-bagian sistem.
• Dekomposisi modular.
Setiap subsistem diuraikan menjadi modul-modul selain itu harusditentukan tip emodul dan interkoneksinya.
Proses Umum Perancangan
Arsitektural
Model Arsitektur yang dapat
Dikembangkan
• Model struktur taktis, yang menunjukkan subsistem-subsistem
yang dikembangkan sebagai unit yang terpisah.
• Model proses dinamis, yang menunjukkan bagaimana sistem
diorganisasi menjadiproses-proses pada saat run-time. Organisasi
ini bisa berbeda dari mode statis.
• Model interface, yang mendefinisikan layanan yang disediakan
oleh setiap subsistemmelalui interface umum.
• Model hubungan, yang menunjukkan hubungan aluran datadiantara subsistem-subsistem.
Yang dipengaruhi oleh Sistem Arsitektur• Kinerja, merupakan persyaratan kritis yang berarti arsitektur harus
dirancang untuk melokalisasi operasi-operasi kritis dalam subsistem.
• Kemanan harus dibuat untuk melindungi aset-aset yang penting dan
validasi keamanan juga harus dibuat.
• Keselamatan ini berhubungan dengan pengurangan biaya dan masalah
validasi keamanan dan disediaknnya sistem proteksi yang berhubungan
• Kemampuan dipelihara
Jika kemampuan dipelihara merupakan persyaratan kritis, maka arsitektur
sistem harus dirancang dengan menggunakan komponen kecil dan berdiri
sendiri, yang dapat diganti dengan segera.
PERANCANGAN ARSITEKTURAL
• Penstrukturan Sistem
• Model Kontrol
• Dekomposisi Modular
• Arsitektur Spesifik-Domain
Penstrukturan Sistem
• Model Repositori
• Model Client-Server
• Model Mesin Abstrak
Model Repositori (Media Penyimpanan)
Semua data bersama disimpan pada database pusat sehingga dapat
diakses oleh semua subsistem
Contoh :
Toolset yang ter integrasi
Editor desainGenerator
Kode
Penerjemah desain
Editor program
Analis desainGenerator
laporan
Repositori proyek
Keuntungan & Kerugian Repositori
• Repositori yang dipakai bersama merupakan cara yang lebih efesien sebab dengancara ini
tidak perlu ada transmisi data secara eksplisit antar sitem.
• Subsistem harus menyetujuai model data repository.Karena akan sulit jikamengintegrasikan
subsistem baru jika model datanya tidak sesuai dengan sistem yang ada.
• Subsistem yang menghasilkan data tidak perlu mempermaslahkan bagaimana data dipakai
oleh sub sistem lain.
• Evolusi mungkin sulit karena informasi dengan volume besar dibangkitkan dari model data yang
disetujui.
• Tersentralisasinya kegiatan seperti backup, keamanan, control akses, dan pemulihan error.
• Subsistem yang berbeda bisa memiliki persyartan yang berbeda untuk keamanan,recovery, dan
backup. Model repository memaksakan kebjakan yang sama untuksemua subsistem.
• Tidak mudah untuk mendistribusikan repository ke sejumlah mesin, karena mungkin ada
redudansi data dan ketidakkonsistenan.
Model Client-Server
model sistem terdistribusi yang menunjukkan bagaimana data dan
pemrosesan didistribusikan pada sejumlah prosessor
Contoh :
Sistem perpustakaan film & gambar
Jaringan dengan bandwidth lebar
Klien 1 Klien 2 Klien 3 Klien 4
Server katalog
Katalog
Server video
File klip video
Server gambar
Foto terdigitasi
Server hiperteks
Web hiperteks
Komponen dan Keuntungan Model Client-Server
Komponen Utama :
• Satu set server stand alone yang memberikan layanan ke subsistem yang
lain.
• Satu atau lebih set klient yang meminta layanan yang diberikan oleh
server. Klien-klien ini biasanya adalah subsistem. Teradapat beberapa
instance program klien yangdieksekusi secara bersama
Keuntungan :
• Arsitektur sistem yang terdistribusi
• Tidak sukar untuk menambahkan server baru dan mengintegrasikan
dengansistem atau mengaupgrade server tanpa mempengaruhi bagian
lain dari sistem
Model Mesin AbstrakModel mesin abstrak dari arsitektur atau biasa disebut model berlapis memodelkan
interfacing subsistem . Pendekatan lapisan mendukung pengembangan sistem
inkremental. Sementara satu lapisan dikembangkan , beberapa layanan yang diberikan
oleh lapisan tersebut dapat disediakan oleh user.
Model mesin abstrak dari manajemen vesi
Manajemen versi
Manajemen objek
Sistem database
Sistem operasi
Model Kontrol
Model untuk penstrukturan system membahas bagaimana system diuraikan
menjadi subsistem-subsistem. Model control pada tingkatarsitektural
berkenaan dengan aliran control antara subsistem.
1. Kontrol tersentralisasi. Satu subsistem memiliki tanggung jawab
menyeluruh kontrol, dan memulai serta menghentikan subsistem-
subsistem lain.Mode control tersentralisasi digolongkan dalam 2 kelas
yaitu : Model call-return dan Model manajer
2. Control berbasis-event. Bukan informasi control yang disatukan dengan
subsistem, melainkan setiap subsistem dapat menanggapi event yang
dibangkitkan secara eksternal.
Kontrol tersentralisasi
Program utama
Rutin 1
Rutin 1.1 Rutin 1.2
Rutin 2 Rutin 3
Rutin 3.1 Rutin 3.2
Kontroler sistem
Proses sensor
Proses akulator
Penanganan kesalahan
Interface user
Proses komputasi
1. Model call-return. 2. Model manajer
Sistem Event-Driven (dikendalikan event)
Model control Event-Driven dikendalikan oleh event yang dibangkitkan
secaraeksternal. Event tidak hanya berarti sinyal biner. Event bisa
merupakan sinyal yang dapatmengambil nilai berapapun Ada dua
model Event-Driven yaitu:
• Model Broadcast
Pada model ini suatu event melakukan penyiaran (broadcast) event
ke semuasubsistem. Setiap subsistem akan meneriam event
tersebut.
• Model interrupt-driven
Model ini digunakan pada sistem real time dimana interrupt
eksternal dideteksi olehsebuah interrupt handler. Interup-interupt ini
akan diteruskan ke komponen lainuntuk diolah.
1. Model broadcast
2. Model interrupt-driven
Penanganan (handler) event dan message
Subsistem 1 Subsistem 2 Subsistem 3 Subsistem 4
Dekomposisi Modular
Setelah arsitektur selesai dibuat dilanjutkan dengan proses perancangan
arsitekturalyaitu menguraikan (dekomposisi) subsistem menjadi modul-
modul. Ada dua model yangdapat digunakan untuk dekomposisi modul yaitu:
1. Model Berorientasi Objek, dimana sistem diuraikan menjadi serangkaian
objekyang berkomunikasi.
2. Model Aliran Data, sistem diuraikan menjadi modul-modul fungsional yang
menerima input dan mentransformasikan menjadi data output. Ini disebut
jugapendekatan pipeline.Pada model berorientasi objek, modul adalah
objek dengan status privat dan operasiyang didefinisikan pada stataus
tersebut. Pada model aliran data, modul merupakan transformasi
fungsional
Model ObjekModel berorientasi objek menstruktur sistem menjadi serangkaian
objek yangterhubung dengan interface. Objek memanggil layanan yang
diberikan oleh objek lain.
Sistem pemrosesan faktur
Kelebihan & Kelemahan Model Objek
Keuntungan :
• Karena objek-objek terkopel (coupled) secara longgar, maka
implementasi objekdapat dimodifikasi tanpa mempengaruhi objek
lainnya.
• Objek merupakan gambaran dari dunia nyata sehingga sistem
lebih mudahdimengerti.
• Objek dapat digunakan ulang (reusable).
Kelemahan :
• Dalam memakai layanan, objek harus mengacu nama dan
interface ke objek lainsecara eksplisit.
• Jika ada perubahan maka akan mengakibatkan dampak bagi user
objek yang lain.
• Kadang-kadangentitas yang kompleks susah direpresentasikan
sebagai objek.
Model Aliran Data
Pada model aliran data (Data Flow Diagram) transformasi memproses
input menjadi output
Sistem pemrosesan faktur
Kelebihan & Kelemahan Model AliranData
Kelebihan :
• Mudah dimengerti karena sistem dilihat dari sudut
input dan output sistem.
• Mendukung pemakaian ulang
• Urutan proses sistem lebih mudah dipahami
Kelemahan:
• Butuh format secara umum
• Lebih sulit menggabungkan dengan format GUI
Arsitektur Spesifik Domain
Model-model arsitektural di atas adalah model umum. Model-model tersebut
dapat diterapkan pada banyak kelas aplikasi. Selain model umum, model-
model arsitektural yang spesifik bagi suatu domain aplikasi juga dapat
digunakan.
Ada dua tipe model arsitektural spesifik model:
• Model generik, yang merupakan abstraksi dari sejumlah sistem riil. Model
ini meng-kapsulasi karakteristik utama dari sistem-sistem ini.
• Model referensi, yang lebih abstrak dan mendeskpsikan kelas sistem yang
lebih besar. model-model ini merupakan cara menginformasikan kepada
perancang mengenai struktur umum kelas sistem tersebut.
Tidak ada perbedaan yang jelas antara tipe-tipe model ini, dan model generic
kadang-kadang juga dapat berfungsisebagai model referensi.
Model GenericYang mungkin merupakan contoh yang paling terkenal dari model arsitektural
generik adalah model compiler. Saat ini telah diakui secara umum bahwa
compiler harus mencakup modul-modul berikut ini:
• Penganalisaan leksikal, yang mengambil token bahasa input dan
merubahnya mebjadi bentuk internal tertentu.
• Table symbol, dibuat oleh penganalisa leksikal, yang menyimpan informasi
mengenai nama dan tipe yang dipakai pada program.
• Penganalisaan sintaks, yang memeriksa sintaks bahasa yang di komplikasi.
Penganalisa ini menggunakan grammar yang terdefenisi dari bahasa
tersebutdan membuat phon sintaks.
• Pohon sintaks, merupakan struktur internal yang merepresentasikan program
yang dikomplikasi.
• Penganalisa sematik yang memakai informasi dari pohon sintaks dan tab
symbol untuk memeriksa kebenaran sematik program input.
• Generator kode yang menjalani pohon sintaks dan membangkitkan kode
mes.
Arsitektur Referensi
Model arsitektural generic merefleksikan arsitektur system yang ada.
Sebaliknya, model referensi biasanya diturunkan dari studi domain
aplikasi. Model ini mempresentasikan arsitektur yang ideal yang
mencakup semua fitur yang dapat dimiliki sistem.
Fungsi utamanya adalah untuk berperan sebagai cara membandingkan
sistem yang berbeda pada domain. Model referensi ini menyediakan
vocabulary (kosakata) untuk perbandingan. Model ini juga berfungsi
sebagai standar terhadap apa saja yang dievaluasi sistem.
Arsitektur referensi menggunakan tujuh lapisan OSI untuk interkoneksi
sistem terbuka