ETS

Nama: Clarissa Luna Maheswari

NRP: 5025211003

Soal

1. Apakah perbedaan model analysis dengan model desain?

2. Jelaskan output proses Desain Aplikasi?

3. Visualisasikan Deskripsi dari aplikasi parkir berikut (Studi Kasus)

4. Buat HLD dan LLD dari rancangan desain aplikasi parkir (Studi Kasus)

5. Gambarkan Arsitektur dari Aplikasi Parkir yang akan dibangun (Studi Kasus)

6. Dokumentasikan dan Demokan dalam Video Youtube dari rancangan aplikasi yang telah dibangun

STUDI KASUS

Aplikasi Sistem Parkir

Aplikasi sistem parkir adalah perangkat lunak yang dirancang untuk mengelola tempat parkir dan pergerakan kendaraan di area tertentu. Sistem ini dapat digunakan di berbagai tempat, seperti:

  • Mal

  • Gedung perkantoran

  • Rumah sakit

  • Bandara

  • Tempat wisata

  • Universitas

Aplikasi sistem parkir menawarkan berbagai fitur dan manfaat, antara lain:

  • Memudahkan pengendara untuk menemukan tempat parkir yang tersedia

  • Mempercepat proses pembayaran parkir

  • Meningkatkan keamanan kendaraan

  • Menganalisis data penggunaan parkir

  • Meningkatkan pendapatan dari parkir


  1. Perbedaan antara model analisis dan model desain terletak pada fokus dan tujuan dari setiap tahap dalam proses pengembangan perangkat lunak. Model analisis berkaitan dengan pemahaman dan identifikasi kebutuhan pengguna serta persyaratan fungsional dan non-fungsional dari sistem yang akan dikembangkan. Ini melibatkan pengumpulan data, analisis kebutuhan, dan pemahaman mendalam tentang masalah yang akan diselesaikan oleh perangkat lunak. Sedangkan model desain merupakan tahap di mana konsep dan kebutuhan yang telah diidentifikasi dalam analisis diterjemahkan menjadi rancangan teknis yang siap diimplementasikan yang melibatkan pemilihan solusi teknis, desain arsitektur sistem, desain antarmuka pengguna, desain database, dan rincian teknis lainnya yang diperlukan untuk menghasilkan perangkat lunak yang berfungsi.

  2. Output dari proses desain aplikasi meliputi

    1. Blueprint Perangkat Lunak
      Dokumen yang menggambarkan secara rinci struktur keseluruhan dari aplikasi, termasuk komponen-komponen utama, hubungan antar komponen, dan arsitektur sistem secara keseluruhan.

    2. Diagram Arsitektur
      Representasi visual dari struktur sistem, seperti diagram alur data atau diagram kelas, yang memperlihatkan bagaimana komponen-komponen saling berinteraksi.

    3. Desain Antarmuka Pengguna (UI)
      Rancangan tampilan dan interaksi antarmuka pengguna, termasuk tata letak elemen-elemen UI, navigasi antar halaman, dan elemen visual lainnya.

    4. Desain Database
      Rancangan struktur database, termasuk tabel, relasi antar tabel, dan skema database lainnya yang diperlukan untuk menyimpan dan mengelola data aplikasi.

    5. Rincian Implementasi
      Dokumen atau spesifikasi teknis yang menjelaskan bagaimana desain akan diimplementasikan dalam kode pemrograman, termasuk pemilihan bahasa pemrograman, framework, dan teknologi lainnya.

    6. Dokumen Desain Lainnya
      Termasuk dokumentasi teknis tambahan, seperti spesifikasi antarmuka aplikasi pemrograman (API), petunjuk instalasi, dan dokumen pengguna untuk membantu pengembang dan pengguna memahami aplikasi.

  3. Untuk menyelesaikan permasalahan pada studi kasus, berikut ini adalah tambahan-tambahan fitur yang disertakan:

    1. Mempermudah Pencarian Tempat Parkir:

      1. Real-Time Parking Availability
        Pengguna dapat melihat peta dengan informasi ketersediaan tempat parkir secara langsung, menghemat waktu dan frustasi dalam mencari tempat kosong.

    2. Mempercepat Proses Pembayaran Parkir:

      1. Contactless Payment
        Pengguna dapat melakukan pembayaran dengan mudah dan cepat menggunakan QR code, tanpa perlu uang tunai atau tiket.

      2. Subscription Models (termasuk di poin menaikkan pendapatan parkir)
        Paket langganan bulanan atau tahunan tersedia bagi pengguna yang sering parkir, mengurangi kerumitan pembayaran.

    3.  Meningkatkan Keamanan Kendaraan

      1. CCTV Monitoring
        Kamera CCTV memantau area parkir secara real-time, membantu mencegah pencurian dan vandalisme.

      2. License Plate Recognition
        Sistem melacak dan mencatat plat nomor kendaraan menggunakan AI text recognition untuk membantu identifikasi kendaraan.

      3. Emergency Communication System
        Pengguna dapat meminta bantuan dengan segera dalam situasi darurat, memastikan respons dan keamanan yang cepat.

    4. Menganalisis Data Penggunaan Parkir

      1. Reports and Data Analytics
        Sistem menghasilkan laporan komprehensif tentang pola penggunaan parkir, memungkinkan pengambilan keputusan berdasarkan data untuk mengoptimalkan operasional parkir.

    5. Meningkatkan Pendapatan Parkir:

      1. Advertisement Space (Ruang Periklanan)
        Aplikasi dan area parkir dapat digunakan untuk menampilkan iklan bertarget, bisa dilakukan dengan cara bermitra dengan perusahaan lain.

      2. Valet Service Integration
        Layanan valet parking difasilitasi untuk menarik pelanggan premium.

      3. Electric Vehicles Charging Fees
        Pengguna dikenakan biaya untuk pengisian daya kendaraan listrik, melayani pasar EV yang saat ini sedang berkembang pesat di Indonesia.



Gambar I. Diagram Use Case

Berikut adalah alur penggunaan aplikasi sistem parkir sesuai diagram use-case yang diberikan:

  1. Login dan Registrasi

  1. Registrasi

    1. Aktor: Pengguna, Sistem

    2. Pengguna membuka aplikasi.

    3. Pengguna memilih opsi Registrasi.

    4. Pengguna memasukkan data pribadi (nama, email, nomor telepon, nomor kendaraan, dll).

    5. Sistem menyimpan data pengguna dan mengirim konfirmasi registrasi via email atau SMS.

  2. Login

    1. Aktor: Pengguna, Sistem

    2. Pengguna membuka aplikasi.

    3. Pengguna memasukkan email dan kata sandi.

    4. Sistem memverifikasi kredensial.

    5. Jika berhasil, pengguna diarahkan ke halaman utama aplikasi.

  1. Real-Time Parking Availability

    1. Aktor: Pengguna, Sistem

    2. Pengguna membuka halaman utama aplikasi.

    3. Sistem menampilkan peta dengan ketersediaan tempat parkir secara real-time.

  2. Contactless Payment

    1. Aktor: Pengguna, Sistem

    2. Pengguna memilih tempat parkir dan waktu parkir.

    3. Pengguna memilih opsi pembayaran.

    4. Pengguna memindai QR code untuk pembayaran.

    5. Sistem memproses pembayaran dan mengirim konfirmasi ke pengguna.

  3. CCTV Monitoring

    1. Aktor: Sistem Keamanan, Sistem

    2. CCTV diaktifkan di area parkir.

    3. Sistem mengirim feed CCTV secara real-time ke pusat keamanan.

    4. Sistem keamanan memantau area parkir.

  4. License Plate Recognition (LPR)

    1. Aktor: Sistem, Sistem Keamanan

    2. Kendaraan masuk ke area parkir.

    3. Sistem mengenali dan mencatat nomor plat kendaraan.

    4. Sistem mengirim data nomor plat ke pusat keamanan.

  5. Emergency Communication System

    1. Aktor: Pengguna, Sistem, Sistem Keamanan

    2. Pengguna menghadapi situasi darurat.

    3. Pengguna menekan tombol panic di aplikasi atau tombol fisik di area parkir.

    4. Sistem menerima sinyal darurat.

    5. Sistem mengirim notifikasi ke pusat keamanan dengan lokasi pengguna.

    6. Sistem keamanan menerima notifikasi dan menghubungi pengguna.

    7. Tim keamanan dikirim ke lokasi darurat.

    8. Sistem mencatat dan membuat laporan insiden.

  6. Report dan Data Analytics

    1. Aktor: Admin, Sistem

    2. Admin masuk ke dashboard aplikasi.

    3. Admin membuka menu laporan.

    4. Sistem menghasilkan laporan penggunaan parkir.

    5. Admin menganalisis data untuk pengambilan keputusan.

  7. Reservation System

    1. Aktor: Pengguna, Sistem

    2. Pengguna membuka aplikasi.

    3. Pengguna memilih tempat parkir dan waktu reservasi.

    4. Sistem mengonfirmasi reservasi dan mengirim detail pembayaran.

  8. Advertisement Space

    1. Aktor: Admin, Sistem

    2. Admin mengatur ruang iklan di aplikasi atau area parkir.

    3. Sistem menampilkan iklan kepada pengguna.

  9.  Valet Service Integration

    1. Aktor: Pengguna, Sistem

    2. Pengguna memilih layanan valet dalam aplikasi.

    3. Sistem mengatur jadwal dan lokasi penjemputan kendaraan.

  10. Subscription Models

    1. Aktor: Pengguna, Admin, Sistem

    2. Pengguna memilih opsi langganan bulanan atau tahunan.

    3. Admin mengatur paket langganan untuk perusahaan.

    4. Sistem memproses pembayaran dan mengaktifkan langganan.

  11. Electric Vehicle Charging Fees

  1. Aktor: Pengguna, Sistem

  2. Pengguna memilih stasiun pengisian daya untuk kendaraan listrik.

  3. Sistem menghitung dan memproses biaya pengisian daya.

  1. Fitur Fungsional
    Semua fitur yang disebutkan di nomor tiga.
    Fitur Non-fungsional

    1. Keamanan Sistem
      Memastikan data pengguna dan transaksi pembayaran aman.

    2. Kinerja Sistem
      Sistem harus mampu menangani banyak pengguna secara bersamaan, terutama selama jam sibuk.

    3. Reliabilitas
      Sistem harus stabil dan memiliki uptime yang tinggi.

    4. Usability
      Antarmuka pengguna harus intuitif dan mudah digunakan.

    5. Skalabilitas
      Sistem harus dapat di-scale up untuk menangani peningkatan jumlah pengguna dan kendaraan.

    6. Integrasi
      Sistem harus dapat diintegrasikan dengan perangkat dan layanan eksternal seperti CCTV, LPR, dan layanan pembayaran.

    7. Pemeliharaan
      Sistem harus mudah dipelihara dan diperbarui.

Asumsi Pengguna dan Kendaraan

  1. Total Pengguna Terdaftar: 5 juta pengguna

  2. Pengguna Aktif Harian (DAU): 1 juta pengguna

  3. Pengguna Aktif per Detik: ~12 pengguna/detik (dengan asumsi distribusi merata selama 24 jam)

  4. Total Tempat Parkir yang Dikelola: 500 ribu tempat parkir

  5. Rata-rata Transaksi Parkir per Menit: 10 ribu/menit

  6. Rata-rata Transaksi Parkir per Detik: ~167 transaksi/detik

  7. Transaksi Puncak: 2 * Rata-rata Transaksi per Menit = 20 ribu transaksi/menit

Estimasi Penyimpanan

  1. Data Pengguna:

    1. Setiap baris pengguna di database (termasuk detail pribadi, informasi kendaraan, dll.): 1 KB

    2. Total penyimpanan untuk pengguna: 5 juta pengguna * 1 KB/pengguna = 5 GB

  2. Data Tempat Parkir:

    1. Setiap entri tempat parkir (termasuk lokasi, status ketersediaan, dll.): 0.5 KB

    2. Total penyimpanan untuk tempat parkir: 500 ribu tempat parkir * 0.5 KB/tempat parkir = 250 MB (0.25 GB)

  3. Data Transaksi Parkir:

    1. Setiap catatan transaksi (termasuk ID pengguna, ID tempat parkir, stempel waktu, durasi, detail pembayaran, dll.): 0.5 KB

    2. Transaksi Harian: 10 ribu transaksi/menit * 1440 menit/hari = 14.4 juta transaksi/hari

    3. Penyimpanan untuk transaksi per hari: 14.4 juta transaksi/hari * 0.5 KB/transaksi = 7.2 GB/hari

    4. Penyimpanan untuk transaksi selama 3 tahun: 7.2 GB/hari * 365 hari/tahun * 3 tahun = 7.9 TB

  4. Data Tambahan (Analitik, Laporan, dll.):

    1. Rata-rata data per hari untuk analitik dan laporan: 1 GB

    2. Penyimpanan selama 3 tahun: 1 GB/hari * 365 hari/tahun * 3 tahun = 1.1 TB

Total Penyimpanan

  1. Data Pengguna: 5 GB

  2. Data Tempat Parkir: 0.25 GB

  3. Data Transaksi Parkir (3 tahun): 7.9 TB

  4. Analitik dan Laporan (3 tahun): 1.1 TB

Total  = 5 GB + 0.25 GB + 7.9 TB + 1.1 TB ≈ 9.25 TB

Dalam , berikut adalah tiga layanan utama yang dikelola:

  1. Client Services

Pengguna (pengendara) mengautentikasi diri untuk mencari tempat parkir. Setelah menemukan tempat parkir, mereka dapat memesan dan melakukan pembayaran melalui berbagai metode.

  1. Parking Admin Services

Pengelola parkir mengautentikasi diri dan mengakses semua data tempat parkir. Pengelola dapat melihat ketersediaan tempat parkir, mengelola data tempat parkir, serta menerima dan memproses reservasi.

  1. Security Services

Petugas keamanan mengautentikasi diri dan berinteraksi dengan Security Services untuk memantau situasi keamanan di area parkir. Layanan ini memberikan notifikasi jika terjadi insiden darurat dan memungkinkan petugas untuk merespon dengan cepat.

High Level Design

Berdasarkan asumsi dan fungsi yang sudah ditentukan, di bawah ini adalah High Level Design yang sudah digarap:


Gambar II. High Level Design

Low Level Design

Gambar III.  Low Level Design

  1. Gambar Arsitektur

Gambar IV. Architeture Design


6. Dokumentasi


Comments

Popular posts from this blog

Pertemuan 2: Prinsip Desain Software

Pertemuan 13: Desain System Aplikasi Instagram