Skip to main content

Pertemuan 10 - Desain Arsitektur

 Hi, Assalamualaikum Warahmatulahi Wabarakatuh.

Bismillahirahmanirahim.

Kali ini aku bakal share penjelasan materi mata kuliah RPL Pertemuan 10 yaitu mengenai Desain Arsitektur.

Semoga Bermanfaat! ✨

1.     Konsep Desain Arsitektur

Perancangan arsitektur ialah tahap pertama dalam proses perancangan PL, yang dimulai dengan perancangan data kemudian berlanjut pada penurunansatu atau lebih struktur arsitektural sistem.

Arsitektur sistem/PL adalah struktur sistem/PL yang menggabungkan komponen PL, menggabungkanproperti yang tampak dari komponen tersebut, dan mendeskripsikan hubungan antar komponen.

Output dari perancangan arsitektur berupa model arsitektur yang menggambarkan bagaimana sistem diatur sebagai satu set komponen yang saling berkomunikasi.

2.     Arsitektur Perangkat Lunak

Arsitektur PL mencakup:

a.     Komponen bangunan yang berbeda dapat diintegrasikan menjadi suatu bentuk keseluruhan yang bersifat kohesif.

b.     Bangunan yang dibuat sesuai dengan lingkungannya.

c.     Bangunan yang dibangun sesuai dengan kegunaannya.

d.     Tekstur, warna dan material pembentuknya dikombinasikan untuk membuat tampilan yang bagus.

e.     Perancangan pencahayaan, template, dan garis batas merupakan suatu bentuk seni,

Arsitektur PL merupakan representasi yang memungkinkan untuk:

a.     Melakukan analisis terhadap efektivitas perancangan dan disesuaikan dengan kebutuhan yang dinyatakan sebelumnya.

b.     Melakukan pertimbangan alternatif arsitektural pada tahap dimana perubahan rancangan dapat dilakukan dengan cara yang relatif mudah.

c.     Mengurangi risiko yang berhubungan dengan konstruksi PL.

Alasan arsitektur PL:

a.     Representasi arsitektur PL adalah sesuatu yang memungkinkan terjadinya komunikasi di antara semua pihak yang tertarik pada pengembangan sistem berbasis komputer.

b.     Arsitektur yang dibuat di awal perancangan akan memiliki efek yang menentukan pada semua pekerjaan RPL selanjutnya.

c.     Arsitektur menggambarkan model yang relatif kecil dan mudah dipahami, dan menggambarkan bagaimana sistem distrukturkan dan bagaimana komponen di dalamnya saling bekerja sama.

Sasaran dari deskripsi arsitektural:

a.     Untuk menetapkan kerangka kerja konseptual dan kosa kata yang digunakan selama perancangan arsitektur PL.

b.     Untuk menyediakan panduan yang rinci pada waktu merepresentasikan deskripsi arsitektural

c.     Untuk memandu praktek perancangan yang baik

Pola deskripsi keputusan arsitektur:

a.     Permasalahan Perancangan Deskripsikan permasalahan perancangan arsitektural yang akan diselesaikan.

b.     Penyelesaian Menentukan pendekatan yang dipilih untuk menyelesaikan permasalahan yang bekaitan dengan perancangan.

c.     Kategori Spesifikasi kategori perancangan yang akan diselesaikan permasalahannya, seperti perancangan data, struktur isi dan komponen, integrasi, presentasi.

d.     Asumsi-asumsi Indikasikan asumsi saat menentukan keputusan. Misalnya standar teknologi, pola yang tersedia, permasalahan yang berkaitan dengan sistem/PL

e.     Alternatif-alternatif Secara singkat deskripsikan alternatif yang akan dipertimbangkan dan mengapa ditolak

f.      Argumen Jelaskan mengapa memilih penyelesaian di atas dan alternatif-alternatif lainnya.

g.     Keputusan yang berhubungan Keputusan terdokumentasi yang berhubungan dengan keputusan yang diambil

h.     Implikasi Indikasikan konsekuensi perancangan akibat penentuan keputusan. Apakah penyelesaian akan berakibat pada perancangan lainnya?

i.      Perhatian yang berhubungan Adakah kebutuhan lain yang berhubungan dengan keputusan yang diambil?

j.      Produk kerja Indikasikan dimana keputusan yang diambil akan tercermin dalam deskripsi arsitektur

k.     Catatan Rujukan catatan tim lainnya yang sebelumnya telah digunakan untuk membuat keputusan.

Beberapa pertimbangan dalam keputusan Arsitektur:

a.     Adakah arsitektur aplikasi generik yang dapat bertindak sebagai template untuk sistem yang sedang dirancang?

b.     Bagaimana sistem akan didistribusikan ke sejumlah perangkat keras?

c.     Pola atau gaya arsitektur apa yang digunakan?

d.     Pendekatan fundamental apa yang digunakan untuk menyusun sistem?

e.     Bagaimana komponen struktural dalam sistem akan terdekomposisi menjadi sub-komponen?

f.      Strategi yang akan digunakan untuk mengontrol pengoperasian komponen dalam sistem

g.     Organisasi arsitektur apa yang terbaik untuk memberikan persyaratan sistem non-fungsional?

h.     Bagaimana desain arsitektur akan dievaluasi?

i.      Bagaimana arsitektur sistem didokumentasikan?

3.     Tampilan Arsitektural

a.     Tampilan Logis Abstraksi dalam sistem sebagai objek atau kelas objek.

b.     Tampilan Proses Menunjukkan bagaimana (pada saat run-time) sistem terdiri dari proses yang saling berinteraksi.

c.     Tampilan Pengembangan PL diuraikan untuk pengembangan, yaitu menunjukkan detail dalam komponen yang akan diimplementasikan oleh pengembang tunggal atau tim pengembang.

d.     Tampilan Fisik Menunjukkan perangkat keras sistem dan bagaimana komponen PL didistribusikan di seluruh sistem.

4.     Gaya Arsitektur

Gaya arsitektur mendeskripsikan kategori sistem yang mencakup:

a.     Kumpulan komponen, seperti sistem basis data dan modul-modul yang melaksanakan fungsi tertentu yang diperlukan oleh sistem.

b.     Penghubung (konektor) yang memungkinkan komunikasi, koordinasi, dan kerja antar komponen.

c.     Batasan yang mendefinisikan bagaiman komponen dapat iintegrasikan untuk membentuk suatu sistem/PL.

d.     Model semantik yang memungkinkan perancang sistem memahami properti keseluruhan sistem.

Gaya dan Struktur Arsitektur (Persyaratan Non-Fungsional):

a.     Kinerja (Performance) Arsitektur harus dirancang agar semua komponen dapat digunakan pada berbagai komputer/prosesor, dan mendistribusikan di seluruh jaringan.

b.     Keamanan (Security) Menggunakan struktur berlapis untuk melindungi aset yang paling penting di lapisan terdalam, dengan tingkat validasi keamanan yang tinggi.

c.     Keamanan (Safety) Operasi yang terkait dengan keselamatan terletak di salah satu komponen tunggal atau komponen kecil. Gaya dan struktur arsitektur (persyaratan nonfungsional)

d.     Ketersediaan (Availability) Arsitektur harus dirancang untuk menyertakan komponen redundan sehingga dimungkinkan saat mengganti dan memperbarui komponen tanpa menghentikan sistem.

e.     Pemeliharaan (Maintainability) Arsitektur sistem harus dirancang menggunakan komponen mandiri yang dapat diubah dengan mudah. Struktur data bersama harus dihindari.

Struktur Dasar Arsitektur:

Arsitektur PL merepresentasikan suatu struktur dimana beberapa kumpulan entitas (komponen) dihubungkan dengan sejumlah relasi (konektor).

Komponen dan konektor dihubungkan dengan properti yang dapat membedakan jenis komponen dan konektor yang digunakan.

a.     Struktur Fungsional :

Komponen merepresentasikan fungsi atau entitas.

Konektor merepresentasikan antarmuka untuk melewatkan data ke suatu komponen.

Properti mendefinisikan sifat dari komponen dan mengorganisasikan antarmuka.

b.     Struktur Implementasi :

Komponen berbentuk paket, kelas, objek, prosedur, fungsi, metode, dll, yang merupakan sarana untuk mengemas fungsionalitas komponen pada berbagai peringkat abstraksi.

Konektor meliputi kemampuan untuk melewatkan data dan kendali, berbagi data, menggunakan, dan menginstansiasi.

Properti pada komponen fokus pada karakteristik kualitas, seperti kemampuan untuk maintenance dan reuse yang dihasilkan saat struktur diimplementasikan.

c.     Struktur Konkurensi :

*       Komponen merepresentasikan unit-unit konkurensi yang terorganisasi sebagai pekerjaan paralel (thread).

*       Konektor mencakup sinkronisasi, prioritas, mengirim data, dan menjalankan proses/fungsi.

*       Properti mencakup prioritas, kemampuan untuk meramalkan, dan waktu eksekusi.

d.     Struktur Fisik :

*       Komponen merupakan perangkat keras fisik.

*       Konektor merupakan antarmuka antar komponen perangkat keras.

*       Properti berkaitan dengan kapasitas, bandwidth, kinerja, dan atribut lainnya.

e.     Struktur Pengembangan :

* Mendefinisikan komponen, produk kerja, dan sumber informasi lainnya.

Konektor merepresentasikan relasi antar produk kerja.

Properti mengidentifikasi karakteristik tiap-tiap item.

5.    Pola Arsitektur (Architectural Patterns)

a.     Lapisan Arsitektur (Layered Architecture) : Pemahaman tentang pemisahan dan independensi sangat penting untuk desain arsitektur karena memungkinkan perubahan secara lokal. Menambahkan tampilan baru atau mengubah tampilan yang ada dapat dilakukan tanpa perubahan apa pun pada data dalam model.

Lapisan atas : menyediakan fasilitas antarmuka pengguna.

Lapisan aplikasi : komponen fungsionalitas aplikasi dan komponen utilitas.

Lapisan ketiga: manajemen antarmuka pengguna dan menyediakan otentikasi dan otorisasi pengguna.

Lapisan terendah: PL pendukung sistem (basis data dan OS).

b.     Arsitektur Repositori (Repository Architecture) : Bagaimana satu set komponen yang saling berinteraksi dapat berbagi data. Model ini cocok untuk aplikasi di mana data dihasilkan oleh satu komponen dan digunakan oleh yang lain. Tidak perlu mentransmisikan data secara eksplisit dari satu komponen ke komponen lainnya. Tetapi komponen harus beroperasi di sekitar model data repositori yang disepakati. Pola repositori berkaitan dengan struktur statis dari suatu sistem dan tidak menunjukkan organisasi run-time.

c.     Client–Server Architecture : Sebuah sistem yang mengikuti pola client-server diatur sebagai satu set layanan server, dan client yang mengakses dan menggunakan layanan. Komponen utama dari model ini adalah:

Server memberikan layanan ke komponen lain. Contoh: server menawarkan layanan pencetakan, server file yang menawarkan layanan manajemen file, dan server kompilasi yang menawarkan layanan kompilasi bahasa pemrograman.

* Client yang menggunakan layanan yang ditawarkan oleh server.

Jaringan yang memungkinkan client untuk mengakses layanan.

Arsitektur client-server dianggap sebagai arsitektur sistem terdistribusi, tetapi model logis dari layanan independen yang berjalan pada server terpisah dapat diimplementasikan pada satu komputer.

Penggunaan yang efektif dapat dilakukan dari sistem jaringan dengan banyak prosesor terdistribusi. Sangat mudah untuk menambahkan server baru dan mengintegrasikannya dengan seluruh sistem atau mengupgrade server secara transparan tanpa mempengaruhi bagian lain dari sistem.

d.     Pipe and Filter Architecture : Model dari sistem run-time di mana transformasi secara fungsional memproses input dan menghasilkan output. Aliran data bergerak secara berurutan (seperti dalam pipa). Setiap langkah pemrosesan diimplementasikan sebagai transformasi. Transformasi dapat dilakukan secara berurutan/paralel. Data diproses oleh transformasi per-item-nya atau dalam satu batch. Pipe digunakan untuk melewati aliran teks dari satu proses ke proses lainnya. Filter digunakan pada transformasi untuk menyaring data.

6.     Arsitektur Aplikasi

Sistem aplikasi dimaksudkan untuk memenuhi kebutuhan bisnis yang memiliki banyak kesamaan dan menggunakan aplikasi tertentu.

Arsitektur aplikasi dapat diimplementasikan kembali ketika mengembangkan sistem baru, tetapi untuk banyak sistem bisnis, penggunaan kembali aplikasi dimungkinkan tanpa implementasi ulang.

a.     Sistem Pemrosesan Transaksi (Transaction Processing Systems)

Aplikasi pemrosesan transaksi adalah aplikasi yang berpusat pada database yang memproses permintaan pengguna untuk informasi dan memperbarui informasi dalam basis data. Merupakan jenis sistem bisnis interaktif yang paling umum, di mana pengguna membuat permintaan asynchronous untuk layanan transaksi basis data adalah urutan operasi yang diperlakukan sebagai unit tunggal, dan semua operasi dalam transaksi harus diselesaikan sebelum perubahan basis data dibuat permanen. Dari perspektif pengguna, transaksi adalah setiap urutan operasi yang koheren yang memenuhi tujuan, seperti menemukan jadwal perkuliahan.

Sistem pemrosesan transaksi dapat diatur sebagai arsitektur 'pipe and filter' dengan komponen sistem sebagai input, pemrosesan, dan output. Misal: pelanggan menarik uang tunai dari ATM. Sistem ini terdiri dari dua komponen PL ATM dan PL pemrosesan akun di server basis data bank. Komponen I/O diimplementasikan sebagai PL di ATM dan komponen pemrosesan adalah bagian dari server database bank.

b.     Sistem Informasi

Semua sistem yang melibatkan interaksi dengan basis data dapat dianggap sebagai sistem informasi berbasis transaksi. Sistem informasi memungkinkan akses yang terkontrol ke basis informasi yang besar. Seperti katalog perpustakaan, jadwal penerbangan, atau catatan pasien di rumah sakit. Sebagai contoh dari instantiation model berlapis. Contoh Sistem Informasi:

Sistem dimodelkan menggunakan pendekatan berlapis di mana lapisan atas mendukung antarmuka pengguna dan lapisan bawah adalah database sistem. Lapisan komunikasi pengguna menangani semua I/O dari antarmuka pengguna, dan lapisan pencarian informasi untuk mengakses dan memperbarui database.

c.     Sistem Pemrosesan Bahasa (Language Processing Systems) merupakan sistem di mana maksud pengguna dinyatakan dalam bahasa formal (seperti Java). Memproses ke dalam bahasa formal, kemudian menafsirkan representasi secara internal. Sistem pemrosesan bahasa dengan compiler, yang menerjemahkan bahasa program tingkat tinggi ke dalam kode mesin. Sistem pemrosesan bahasa juga menerjemahkan bahasa alami atau buatan ke dalam representasi bahasa lain, dan bahasa pemrograman dapat mengeksekusi kode yang dihasilkan.


 

Comments

Popular posts from this blog

Tugas 03 Web Programming - Pertemuan 6 - Semester 3

Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Tugas 03 mata kuliah Web Programming Pertemuan 6. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan Input & Output :     Script formregistrasi.php : <html> <head>      <title>Form Registrasi</title> </head>      <h1>Form Registrasi</h1> <form action="dataregistrasi.php" method="POST">      <br>Isi data dibawah ini :</br> <table border="0" width="500">      <tr><td>Nama</td> <td> </td> <td><input type="text"name="name" size="22"placeholder="Masukan Nama"></td>   </tr>      <tr><td>Alamat</td> <...

Tugas 04 Web Programming - Pertemuan 7 - Semester 3

  Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Tugas 04 mata kuliah Web Programming Pertemuan 7. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan Input & Output :     Script  tugas04.php  : <html> <head>      <title>Tugas 04</title> </head> <body>      <h1><center>Rumus - Rumus</center></h1>     <form action="tugas04-2.php" method="POST"> <center><table border = "2"></center> <pre>      <td>Nilai 1</td>      <td><input name="A" type="text" id="nA" size="20" border="2" value=""/><br/></td>      </t...

Latihan Form Input Output Data Web Programming - Pertemuan 5 - Semester 3

Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Latihan Form Input Output Data mata kuliah Web Programming Pertemuan 5. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan Input & Output : Script  forminputkomentar.php : <html> <head>             <title>Form Komentar</title> </head> <body>             <h1>BUKU TAMU</h1>             <P>Komentar dan Saran Anda Sangat Kami Butuhkan<br/>Untuk Meningkatkan Kualitas Situs Kami</P> <hr width="100%"/> <form action="tampilkomentar.php" method="POST"> <pre>  ...