Pertemuan 13 KPPL (E) - 20/11/2024
Kelompok 7 KPPL E
Nama (NRP):
- Amelia Nova Safitri (5025231041)
- Tarisha Falah Basuki (5025231043)
Tugas Pertemuan 13
Latihan :
- Berdasarkan SRS dan Use Case Smart Home pada minggu lalu buatlah Analysis Modelnya.
- Analysis Model, Use Case Diagram, Activity Diagram, dan Class Diagram
- Lengkapi Analysis Model yang dibuat dengan Behavioral Element.
- Pengerjaan bisa secara kelompok, maksimal 2
Analysis Model untuk studi kasus Smart Home pada minggu lalu
1. Use Case Diagram
2. Activity Diagram
- Kamera CCTV secara terus-menerus memantau area rumah
- Ketika gerakan terdeteksi, sistem melakukan analisis
- Sistem memutuskan apakah gerakan tersebut mencurigakan
- Jika ya, sistem merekam video dan mengaktifkan mode siaga
- Mengirim notifikasi "Camera Alert" ke smartphone pengguna
- Pengguna dapat memilih untuk:
- Melihat rekaman
- Memanggil keamanan
- Mengabaikan notifikasi
- Deteksi gerakan otomatis
- Penilaian tingkat ancaman
- Notifikasi instan
- Opsi respons pengguna
3. Class Diagram
- Seorang pengguna dapat mengontrol satu atau lebih perangkat pintar.
- Seorang pengguna dapat memantau status dari satu atau lebih sensor.
- Seorang pengguna dapat menerima nol atau lebih notifikasi dari sistem.
- Seorang pengguna dapat memiliki satu atau lebih log aktivitas.
- Seorang administrator sistem dapat mengelola nol atau lebih pengguna.
- User: Representasi dari pengguna rumah yang dapat login, logout, dan menggunakan sistem untuk mengontrol perangkat. Pengguna juga bisa mendapatkan notifikasi dan melihat log aktivitas.
- AdministratorSistem: Bertugas mengelola data pengguna dan melakukan pemeliharaan sistem secara keseluruhan, termasuk menambah atau menghapus pengguna.
- Perangkat: Objek rumah pintar seperti lampu, kunci pintu, atau mesin kopi, yang dapat dihidupkan, dimatikan, atau dikontrol fungsinya oleh pengguna.
- Sensor: Digunakan untuk mendeteksi situasi tertentu, seperti keberadaan gerakan, asap, atau perubahan suhu, dan memberikan informasi tersebut kepada pengguna.
- Notifikasi: Memberikan pemberitahuan kepada pengguna terkait aktivitas di rumah pintar, seperti alarm yang berbunyi atau perangkat yang dinyalakan/dimatikan.
- LogAktivitas: Menyimpan catatan aktivitas yang dilakukan oleh pengguna, seperti perangkat yang dinyalakan atau dimatikan, serta interaksi dengan sistem.
4. Behavioral Element
A. Pola Komunikasi (Communication Patterns)
- Event-Driven Communication
- Sistem merespons peristiwa secara real-time
- Contoh: Deteksi gerakan → Notifikasi instan
- Menggunakan mekanisme publish-subscribe
- Komunikasi Antar Komponen
- Protokol komunikasi: WiFi, Bluetooth Low Energy (BLE), MQTT untuk pesan ringan
- Enkripsi end-to-end untuk keamanan data
B. Alur Kendali (Control Flow)
- Manajemen Kondisi
- State Machine untuk setiap perangkat
- Transisi status perangkat yang jelas
- Contoh state Light: OFF, ON, DIMMING
- Aturan Eksekusi Perintah
```
if (user_authorization == valid):
if (device_connected == true):
execute_command()
else:
send_connection_error()
else:
deny_access()
```
C. Manajemen Status (State Management)
- Device State Tracking
- Rekam status real-time setiap perangkat
- Logging perubahan status
- Mempertahankan konsistensi status
- Siklus Hidup Perangkat (Device Lifecycle):
- Discover
- Pair
- Activate
- Monitor
- Deactivate
D. Penanganan Error (Error Handling)
- Mekanisme Fallback
- Alternatif manual jika sistem gagal
- Contoh: Kunci pintu manual, Tombol fisik lampu
- Strategi Recovery
```python
def handle_device_failure(device):
try:
reconnect(device)
except ConnectionError:
log_error(device)
notify_user(device)
activate_backup_system()
```
E. Pola Integrasi (Integration Mechanisms)
- API Integration
- RESTful APIs
- Webhook untuk notifikasi
- Standar komunikasi terbuka
- Protokol Keamanan
- OAuth 2.0 untuk autentikasi
- JWT untuk otorisasi
- Enkripsi AES-256
F. Arsitektur Sistem
- Microservices
- Layanan terpisah untuk:
- Manajemen Pengguna
- Kontrol Perangkat
- Keamanan
- Notifikasi
- Scalability Pattern (Horizontal Scaling):
- Tambah node untuk beban tinggi
- Load balancing
- Cache distributed
G. Skenario Interaksi Kompleks
- Contoh Skenario: Mode Tidur
- When "Good Night" Command Received:
- Matikan semua lampu
- Kunci pintu
- Aktifkan alarm keamanan
- Atur suhu ideal
- Nonaktifkan perangkat tidak perlu
- Prioritas Perintah
- Perintah keamanan memiliki prioritas tertinggi
- Dapat meng-override perintah lain
H. Pertimbangan Keamanan Lanjutan
- Multi-Factor Authentication
- Kombinasi: Suara, Sidik jari, Lokasi geografis
- Anomali Detection
- Machine Learning untuk deteksi aktivitas mencurigakan
- Adaptive security rules
Kesimpulan Behavioral Elements
🔑 Kunci Utama:
- Responsif
- Aman
- Fleksibel
- Dapat di-scale
- User-friendly
Rekomendasi Implementasi
1. Gunakan event-driven architecture
2. Implementasi robust error handling
3. Fokus pada keamanan berlapis
4. Desain modular
5. Sediakan mekanisme manual backup
Dengan menggunakan Analysis Model, kita dapat memiliki gambaran yang sangat jelas dan terstruktur tentang alur proses, objek-objek utama, serta interaksi yang terjadi di dalam aplikasi Smart Home. Pendekatan ini memungkinkan kita untuk memahami bagaimana setiap elemen dalam sistem, seperti pengguna, perangkat pintar, sensor, layanan notifikasi, dan log aktivitas, saling berhubungan dan berfungsi secara bersama-sama. Selain itu, model ini memberikan panduan yang komprehensif dalam merancang dan mengimplementasikan sistem dengan efisiensi yang lebih tinggi, sekaligus meminimalkan potensi kesalahan dalam tahap pengembangan. Dengan pemahaman yang mendalam terhadap proses kerja sistem, kita dapat lebih mudah melakukan pengujian terhadap fungsionalitas, mengidentifikasi area yang memerlukan perbaikan, serta memastikan bahwa sistem berjalan sesuai dengan kebutuhan pengguna dan spesifikasi yang telah ditentukan. Analisis model juga membantu dalam mendukung komunikasi yang lebih efektif di antara anggota tim pengembang, sehingga seluruh pihak memiliki pemahaman yang sama terkait tujuan dan cara kerja sistem.
Comments
Post a Comment