EAS KPPL
Bayza Nawaz Axata (5025221241)
1. Fase Analisis dan Desain dalam Pengembangan Perangkat Lunak
a. Aktivitas dalam Fase Analisis:
- Pengumpulan Kebutuhan: Mengumpulkan informasi dari stakeholder untuk memahami kebutuhan bisnis dan teknis.
- Analisis Kebutuhan: Mengidentifikasi dan mendefinisikan kebutuhan sistem, termasuk fungsional dan non-fungsional.
- Modeling Kebutuhan: Membuat model seperti diagram alur data (DFD), use case, atau diagram aktivitas untuk merepresentasikan kebutuhan.
b. Aktivitas dalam Fase Desain:
- Perancangan Arsitektur: Menentukan struktur utama sistem, seperti modul, komponen, dan alur komunikasi.
- Perancangan Database: Merancang struktur data dan relasi antar tabel yang mendukung kebutuhan aplikasi.
- Perancangan Antarmuka Pengguna: Merancang tata letak dan elemen antarmuka pengguna.
- Perancangan Detail: Menentukan algoritma, logika program, dan struktur data spesifik untuk setiap modul.
c. Output:
- Fase Analisis: Dokumen Spesifikasi Kebutuhan Perangkat Lunak (SRS).
- Fase Desain:
- Diagram arsitektur sistem.
- Desain basis data.
- Mockup atau prototipe antarmuka pengguna.
- Desain modul dan algoritma.
2. Lima Tahap Utama dalam Model Waterfall
- Requirement Analysis: Mengumpulkan dan mendokumentasikan kebutuhan sistem.
- System Design: Merancang struktur dan komponen sistem berdasarkan kebutuhan.
- Implementation: Membuat kode program sesuai desain.
- Integration and Testing: Mengintegrasikan komponen dan menguji sistem untuk memastikan tidak ada bug.
- Deployment and Maintenance: Merilis sistem ke lingkungan produksi dan melakukan pemeliharaan.
Kelebihan:
- Struktur yang terorganisasi dan mudah dipahami.
- Cocok untuk proyek dengan persyaratan yang tetap dan jelas.
- Dokumentasi yang lengkap mempermudah pengembangan lebih lanjut.
Kekurangan:
- Kurang fleksibel terhadap perubahan persyaratan.
- Risiko tinggi karena pengujian dilakukan di akhir.
- Tidak ideal untuk proyek dengan ketidakpastian tinggi atau pengembangan iteratif.
3. Perbedaan antara Architectural Design dan Detailed Design
Architectural Design:
- Fokus pada struktur utama sistem, hubungan antar modul, dan teknologi yang digunakan.
- Contoh: Diagram arsitektur, definisi komponen utama.
Detailed Design:
- Fokus pada implementasi detail dari setiap modul atau komponen.
- Contoh: Algoritma spesifik, desain antarmuka kelas, dan logika program.
Alasan Kedua Desain Diperlukan:
- Architectural Design memberikan kerangka dasar sistem, memastikan konsistensi dan skalabilitas.
- Detailed Design memungkinkan pengembang untuk bekerja secara efisien pada bagian spesifik tanpa kehilangan konteks keseluruhan.
4. Studi Kasus: Sistem E-Commerce untuk Produk Digital
Pendekatan Rekayasa Perangkat Lunak:
Pengumpulan Kebutuhan (Requirement Analysis):
- Temui stakeholder untuk mendefinisikan kebutuhan fungsional seperti katalog produk, checkout, dan integrasi pembayaran.
- Kebutuhan non-fungsional seperti skalabilitas dan performa.
Pemilihan Metode Pengembangan:
- Gunakan Metode Agile untuk iterasi cepat, memudahkan perubahan kebutuhan.
- Buat backlog fitur yang disusun berdasarkan prioritas.
Perancangan Sistem:
- Arsitektur Mikroservices: Setiap layanan (auth, pembayaran, katalog, dll.) terpisah untuk skalabilitas.
- Cloud-Based Deployment: Gunakan layanan cloud seperti AWS atau GCP untuk mengatasi lonjakan musim.
- Desain database relasional dan cache untuk performa optimal.
Pengembangan dan Implementasi:
- Bangun backend dengan framework seperti Node.js atau Django.
- Gunakan React atau Vue.js untuk front-end.
- Integrasi dengan API pembayaran seperti Stripe atau Midtrans.
Pengujian:
- Unit Testing: Menguji setiap modul.
- Load Testing: Simulasikan lonjakan pengguna.
- Integration Testing: Pastikan setiap komponen berfungsi bersama.
Deployment:
- Rilis sistem secara bertahap (phased deployment) untuk meminimalkan risiko.
- Gunakan CI/CD untuk pembaruan otomatis.
Output yang Diharapkan:
- Sistem yang handal: Menangani lonjakan transaksi dengan latensi minimal.
- Antarmuka yang user-friendly: Memudahkan pengguna untuk membeli produk digital.
- Integrasi lengkap: Dengan metode pembayaran dan fitur analitik untuk pelaporan.
Komentar
Posting Komentar