Low Level Design
Desain tingkat rendah (LLD) adalah tahap penting dalam pengembangan perangkat lunak yang berfokus pada merinci arsitektur sistem secara detail. Tahap ini menerjemahkan desain tingkat tinggi (HLD) yang abstrak menjadi spesifikasi teknis yang konkret, memungkinkan pengembang untuk mulai menulis kode.
Langkah-langkah dalam LLD:
- Identifikasi Komponen: Membagi sistem menjadi modul-modul yang lebih kecil dan terdefinisi dengan baik.
- Merancang Antarmuka: Menentukan bagaimana modul-modul akan berinteraksi satu sama lain, termasuk parameter, nilai balik, dan protokol komunikasi.
- Memilih Algoritma: Memilih algoritma yang tepat untuk menyelesaikan tugas-tugas spesifik dalam setiap modul.
- Merancang Struktur Data: Menentukan struktur data yang akan digunakan untuk menyimpan dan mengelola informasi dalam setiap modul.
- Menentukan Implementasi Detail: Memilih bahasa pemrograman, pustaka, dan kerangka kerja yang akan digunakan untuk mengimplementasikan setiap modul.
- Dokumentasi: Mendokumentasikan semua keputusan desain secara rinci, termasuk diagram, tabel, dan deskripsi tekstual.
Contoh LLD dalam Aplikasi Kasir Point of Sales:
Komponen:
- Modul Manajemen Barang: Menangani penambahan, penghapusan, dan pembaruan informasi barang.
- Modul Keranjang Belanja: Mengelola item yang dipilih oleh pelanggan, menghitung total harga, dan menerapkan diskon.
- Modul Transaksi: Memproses pembayaran, mencetak struk, dan memperbarui stok barang.
- Modul Laporan: Menghasilkan laporan penjualan, riwayat transaksi, dan analisis data.
Antarmuka:
- Modul Manajemen Barang menyediakan API untuk menambahkan, menghapus, dan memperbarui informasi barang.
- Modul Keranjang Belanja berkomunikasi dengan Modul Manajemen Barang untuk mendapatkan informasi harga dan ketersediaan barang.
- Modul Transaksi berinteraksi dengan Modul Keranjang Belanja untuk mengambil item yang dibeli dan menghitung total harga.
- Modul Laporan mengakses data dari Modul Transaksi dan Modul Manajemen Barang untuk menghasilkan laporan.
Algoritma:
- Modul Manajemen Barang dapat menggunakan algoritma pencarian untuk menemukan barang dengan cepat.
- Modul Keranjang Belanja dapat menerapkan algoritma pengurutan untuk menampilkan item dalam urutan tertentu.
- Modul Transaksi dapat menggunakan algoritma diskon untuk menghitung harga akhir.
- Modul Laporan dapat menggunakan algoritma agregasi data untuk menghasilkan ringkasan penjualan.
Struktur Data:
- Modul Manajemen Barang dapat menyimpan informasi barang dalam database relasional.
- Modul Keranjang Belanja dapat menggunakan struktur data list untuk menyimpan item yang dibeli.
- Modul Transaksi dapat menyimpan data transaksi dalam file teks atau database.
- Modul Laporan dapat menggunakan struktur data grafik untuk memvisualisasikan data penjualan.
Implementasi Detail:
- Bahasa pemrograman yang dipilih dapat berupa Python, Java, atau C++.
- Pustaka dan kerangka kerja yang digunakan dapat bervariasi tergantung pada bahasa pemrograman dan fungsionalitas yang dibutuhkan.
Dokumentasi:
Dokumentasi LLD dapat dibuat menggunakan dokumen teks, diagram UML, atau alat bantu desain perangkat lunak lainnya.
Referensi
https://www.geeksforgeeks.org/difference-between-high-level-design-and-low-level-design/
https://repository.dinamika.ac.id/id/eprint/5054/15/14410100173-2020-UNIVERSITASDINAMIKA.pdf
https://eprints.poltektegal.ac.id/1049/1/LAPORAN%20TA%20MUCHAMAD%20YUSUP%60.pdf
https://eprints.poltektegal.ac.id/1049/2/JURNAL.pdf
Absen
Comments
Post a Comment