PPL - Tugas 3 Software Architecture

Revanantyo Dwigantara

5025211113

PPL A

Arsitektur Aplikasi Perangkat Lunak

Arsitektur aplikasi perangkat lunak adalah proses mendefinisikan struktur sebuah aplikasi dengan mempertimbangkan aspek teknis dan operasional. Dalam pembuatan aplikasi, tiga komponen utama yaitu pengguna, bisnis, dan sistem saling berinteraksi dan mempengaruhi. Tujuan arsitektur perangkat lunak adalah menjembatani kebutuhan bisnis dan kebutuhan teknis melalui use cases yang telah dirancang. Arsitektur yang baik dapat mengurangi risiko dan beradaptasi dengan perubahan seiring waktu, dengan mempertimbangkan performa dan keamanan sebagai faktor penting dalam desain arsitektur aplikasi.

Aplikasi Perpustakaan Open Library Universitas Telkom

Aplikasi Perpustakaan Open Library Universitas Telkom adalah sebuah situs web yang menyediakan informasi terbuka tentang buku, karya ilmiah, dan jurnal. Fitur-fiturnya meliputi pencarian, katalog, dan reservasi buku. Namun, berdasarkan pengujian perangkat lunak non-fungsional, aplikasi tersebut memerlukan peningkatan dalam skalabilitas dan performa karena tidak dapat melayani permintaan dalam jumlah dan waktu tertentu sesuai dengan skenario yang ditentukan.

Penelitian ini bertujuan untuk mengimplementasikan arsitektur perangkat lunak dengan gaya arsitektur Microservices. Teknik evaluasi yang digunakan adalah pengujian perangkat lunak non-fungsional untuk mengukur batas pengguna yang dapat mengakses secara bersamaan. Peneliti mengumpulkan setiap fungsi dan proses dari sistem yang sudah ada, kemudian memisahkan setiap proses bisnis ke domain independen dengan menerapkan konsep domain-driven design. Setelah itu, dilakukan migrasi arsitektur perangkat lunak dari monolitik ke microservices dengan menerapkan konsep strangler pattern. Pengembangan berlanjut hingga tahap pengujian fungsional pada setiap modul dan pengujian non-fungsional sesuai dengan skenario yang telah ditentukan.


Hasil dari pengembangan arsitektur perangkat lunak menggunakan microservices adalah peningkatan performa organisasi dan fleksibilitas dalam memilih teknologi yang sesuai dengan masalah yang dihadapi.


Arsitektur Microservices

Arsitektur Microservices adalah pendekatan dalam arsitektur perangkat lunak yang terdiri dari sejumlah layanan yang saling berinteraksi. Setiap layanan dapat dikelola secara terpisah, memudahkan pemeliharaan dan pengujian. Keunggulan lain dari pendekatan ini adalah ketiadaan keterikatan yang erat antara layanan, kemampuan untuk dideploy secara independen, dan fokus pada kapabilitas bisnis tertentu. Dengan menggunakan arsitektur ini, aplikasi dapat lebih fleksibel, skalabel, dan mudah beradaptasi dengan perubahan.


Siklus Hidup Pengembangan Perangkat Lunak (SDLC)

Siklus Hidup Pengembangan Perangkat Lunak (SDLC) adalah serangkaian tahapan atau siklus dalam industri pengembangan perangkat lunak. SDLC melibatkan proses desain, pengembangan, dan pengujian perangkat lunak dengan tujuan menciptakan produk berkualitas tinggi.


Kerangka Kerja Penelitian

Dalam penelitian ini, penulis menggunakan kerangka kerja penelitian untuk mencapai efisiensi dan struktur. Kerangka kerja ini mengarahkan langkah-langkah yang diperlukan untuk menyelesaikan masalah yang sedang diteliti.


Use Case Diagram

Use Case Diagram adalah diagram yang menggambarkan fungsionalitas sistem serta kebutuhan yang diinginkan oleh pengguna. Pada aplikasi Open Library Universitas Telkom, terdapat beberapa fitur utama. Pertama, fitur login untuk proses autentikasi antara pengguna dan sistem. Kedua, fitur peminjaman buku yang memungkinkan pengguna untuk meminjam dan mengembalikan buku. Ketiga, fitur katalog buku yang menampilkan daftar dan detail buku yang ada di perpustakaan. Terakhir, fitur pencarian yang menampilkan daftar katalog buku yang mirip dengan buku yang dicari berdasarkan kata kunci yang dimasukkan oleh pengguna.


Pengujian Non-fungsional

Dari hasil pengujian non-fungsional setelah migrasi perangkat lunak, performa sistem mengalami peningkatan. Hal ini terlihat dari berkurangnya waktu rata-rata respons (Average Response Time) dan peningkatan jumlah pengguna maksimal yang bisa dilayani oleh sistem secara bersamaan. Gambar menunjukkan peningkatan signifikan pada waktu respons microservices dan jumlah pengguna puncak yang dapat mengakses sistem secara bersamaan.


Kesimpulan

Berdasarkan penelitian mengenai implementasi arsitektur perangkat lunak microservices pada aplikasi Open Library Universitas Telkom menggunakan gRPC, dapat disimpulkan bahwa ada beberapa cara untuk meningkatkan kecepatan dan skalabilitas sistem. Dalam penelitian ini, peneliti menerapkan konsep sistem terdistribusi ke dalam arsitektur perangkat lunak microservices. Kebebasan pemilihan teknologi dan pembagian layanan secara independen menghasilkan performa yang lebih optimal dibandingkan dengan sistem yang ada dan arsitektur perangkat lunak monolitik. Penerapan gRPC dilakukan pada setiap layanan yang berkomunikasi dengan layanan lainnya melalui gRPC client yang dipasang pada setiap layanan.

Komentar

Postingan populer dari blog ini

Tugas 4 - APSI - Seleksi dan Manajemen Proyek

Tugas 3 - APSI - Feasibility Study