Apakah perbedaan model analysis dengan model desain?
Perbedaan utama antara model analisis dan model desain terletak pada fokus dan tahapan yang dilakukan dalam proses pengembangan sistem informasi. Berikut ini adalah penjelasan lebih rinci mengenai perbedaan keduanya:
- Model Analisis:
Fokus utama adalah memahami kebutuhan bisnis dan mendefinisikan persyaratan fungsional yang harus dipenuhi oleh sistem.
Melibatkan identifikasi masalah, studi kelayakan, pengumpulan data, dan analisis kebutuhan pengguna.
Menghasilkan spesifikasi kebutuhan fungsional dan non-fungsional yang menggambarkan apa yang harus dilakukan oleh sistem.
Menggunakan teknik seperti pemodelan use case, pemodelan data, dan pemodelan proses bisnis.
- Model Desain:
Fokus utama adalah merancang solusi teknis yang memenuhi persyaratan fungsional dan non-fungsional yang telah didefinisikan dalam tahap analisis.
Melibatkan perancangan arsitektur sistem, basis data, antarmuka pengguna, dan komponen-komponen sistem lainnya.
Menghasilkan spesifikasi desain teknis yang menggambarkan bagaimana sistem akan diimplementasikan secara terperinci.
Menggunakan teknik seperti pemodelan struktur data, perancangan antarmuka, dan perancangan arsitektur perangkat lunak.
Secara umum, model analisis memberikan gambaran tentang apa yang harus dilakukan oleh sistem, sedangkan model desain menentukan bagaimana sistem akan dibangun secara teknis untuk memenuhi persyaratan yang telah diidentifikasi. Kedua model ini saling terkait dan merupakan tahapan penting dalam siklus pengembangan sistem informasi yang efektif.
Jelaskan output proses Desain Aplikasi?
Output dari proses desain aplikasi adalah sekumpulan dokumen yang merinci bagaimana aplikasi akan dibangun dan dioperasikan. Dokumen-dokumen ini mencakup berbagai elemen desain yang dibutuhkan untuk mengembangkan perangkat lunak yang sesuai dengan kebutuhan pengguna dan spesifikasi yang telah ditetapkan. Berikut adalah beberapa output umum dari proses desain aplikasi:
Spesifikasi Desain:
Dokumen yang merinci desain keseluruhan aplikasi, termasuk deskripsi umum, tujuan, dan cakupan sistem.
Detail arsitektur sistem, termasuk komponen-komponen utama, hubungan antar komponen, dan aliran data.
Diagram aliran data (DFD) atau model lainnya yang menggambarkan aliran informasi dalam sistem.
Deskripsi kebutuhan fungsional dan non-fungsional yang harus dipenuhi oleh desain.
Desain Arsitektur:
Diagram arsitektur sistem yang menunjukkan komponen utama, lapisan aplikasi, dan interaksi di antara mereka.
Rancangan sistem distribusi jika aplikasi akan diimplementasikan dalam lingkungan terdistribusi.
Detail tentang infrastruktur teknologi yang akan digunakan, seperti platform, database, dan alat pengembangan.
Desain Antarmuka Pengguna:
Wireframe atau prototipe antarmuka pengguna yang menunjukkan tata letak elemen-elemen antarmuka dan aliran navigasi.
Desain grafis, termasuk warna, jenis huruf, ikon, dan elemen desain visual lainnya.
Spesifikasi interaksi pengguna, seperti animasi, efek transisi, dan perilaku responsif.
Desain Database:
Skema database yang merinci struktur tabel, atribut, dan hubungan antar entitas.
Desain indeks, kunci, dan constraint database yang diperlukan untuk performa dan integritas data.
Model entitas-relasi (ER) atau diagram lain yang menggambarkan struktur dan hubungan dalam database.
Desain Komponen dan Logika Bisnis:
Rancangan komponen perangkat lunak, termasuk kelas, modul, atau layanan yang akan dibuat.
Detail logika bisnis atau algoritma yang akan digunakan dalam aplikasi, seperti algoritma pencarian, pengolahan data, dll.
Diagram aktivitas, diagram urutan, atau diagram lain yang menjelaskan alur logika aplikasi.
Dokumentasi Teknis:
Dokumentasi teknis yang merinci cara menggunakan, mengelola, dan memelihara aplikasi.
Petunjuk instalasi dan konfigurasi yang diperlukan untuk mengimplementasikan aplikasi.
Dokumentasi API (Application Programming Interface) jika aplikasi menawarkan antarmuka pemrograman untuk integrasi dengan sistem lain.
Visualisasikan Deskripsi dari aplikasi parkir berikut (Studi Kasus)
Jawab :
Berikut merupakan visualisasi dari aplikasi parkir :
High Level Design (HLD)
A. Kebutuhan
Kebutuhan Fungsional
a. Manajemen Tempat Parkir:
Menambahkan, menghapus, dan mengubah informasi tempat parkir
Menentukan jenis tempat parkir (misalnya, mobil, motor, VIP)
Menetapkan tarif parkir untuk setiap jenis tempat parkir
Melacak ketersediaan tempat parkir secara real-time
b. Manajemen Kendaraan:
Mendaftarkan kendaraan yang masuk dan keluar dari area parkir
Menerbitkan tiket parkir
Memproses pembayaran parkir
Menangani pelanggaran parkir
c. Manajemen Pengguna:
Menambahkan, menghapus, dan mengubah informasi pengguna
Menetapkan peran dan hak akses pengguna
Melacak aktivitas pengguna
d. Pelaporan:
Menghasilkan laporan pendapatan parkir
Menghasilkan laporan penggunaan parkir
Menghasilkan laporan pelanggaran parkir
Kebutuhan Non-fungsional
a. Keamanan:
Melindungi data pengguna dari akses tidak sah
Mencegah penipuan dan pencurian
b. Ketersediaan:
Sistem harus tersedia 24/7
Sistem harus dapat diakses dari berbagai perangkat
c. Skalabilitas:
Sistem harus dapat menangani jumlah pengguna dan kendaraan yang besar
Sistem harus bisa diadaptasi untuk memenuhi kebutuhan yang berubah
d. Kinerja:
Sistem harus responsif dan efisien
Sistem harus mampu menangani beban puncak
Persyaratan Tambahan
a. Integrasi dengan Sistem Lain:
Sistem harus bisa diintegrasikan dengan sistem kontrol akses
Sistem harus bisa diintegrasikan dengan sistem pembayaran elektronik
b. Dukungan Multi-bahasa:
Sistem harus mendukung beberapa bahasa
c. Aksesibilitas:
Sistem harus dapat diakses oleh penyandang disabilitas
B. Asumsi Kapasitas
Untuk memperkirakan skala sistem dan kebutuhan penyimpanan, berikut adalah beberapa asumsi yang dibuat dengan fokus pada satu tempat parkir:
Satu tempat parkir
Pengguna aktif harian = 1000
Pengguna aktif per detik = 0,01 pengguna/detik (sekitar)
Rata-rata kendaraan masuk per menit = 100
Rata-rata kendaraan keluar per menit = 100
Rata-rata transaksi pembayaran per menit = 50
Estimasi Penyimpanan
Jika diasumsikan:
Setiap entri pengguna dalam basis data adalah 1 KB (dengan alamat, informasi profil, dll.)
Setiap tempat parkir memerlukan ruang penyimpanan sekitar 100 MB untuk detail tempat parkir, pengaturan tarif, dll.
Setiap transaksi pembayaran memerlukan sekitar 1 KB ruang penyimpanan.
Total penyimpanan yang diperlukan:
1000 pengguna x 1 KB per pengguna = 1 MB
1 tempat parkir x 100 MB = 100 MB
100 transaksi pembayaran per menit = 144.000 transaksi per hari (sekitar)
144.000 transaksi per hari x 1 KB per transaksi = 144 MB per hari
Jika data transaksi pembayaran dipertahankan selama 1 tahun:
144 MB per hari x 365 hari = 52,56 GB per tahun
C. Komponen yang Diperlukan
Berikut adalah komponen penting dari sistem aplikasi parkir:
a. Antarmuka Pengguna (User Interface): Pengguna berinteraksi dengan sistem melalui aplikasi seluler, situs web, atau kios parkir.
b. Pemantauan Ketersediaan Tempat Parkir (Parking Availability Monitoring): Melacak ketersediaan tempat parkir secara real-time dan memberikan informasi kepada pengguna.
c. Layanan Pendaftaran Kendaraan (Vehicle Registration Service): Mendaftarkan kendaraan yang masuk dan keluar dari area parkir, menghasilkan tiket parkir, dan memasukkan data ke dalam basis data.
d. Sistem Pembayaran (Payment System): Memproses pembayaran parkir melalui berbagai metode pembayaran.
e. Manajemen Pelanggaran Parkir (Parking Violation Management): Mengelola pelanggaran parkir seperti parkir di tempat yang tidak sesuai atau melebihi batas waktu.
f. Layanan Administrasi (Administration Services): Memungkinkan admin untuk mengelola informasi tempat parkir, pengguna, dan aktivitas pengguna, serta membuat laporan dan analisis data.
g. Layanan Keamanan (Security Services): Melindungi data pengguna dari akses tidak sah dan mencegah penipuan atau pencurian di area parkir.
h. Integrasi Sistem (System Integration): Memungkinkan integrasi dengan sistem kontrol akses dan pembayaran elektronik untuk meningkatkan keamanan dan kenyamanan pengguna.
i. Layanan Pemantauan Kinerja (Performance Monitoring Service): Memantau kinerja sistem untuk memastikan responsif dan efisiensi, serta menangani beban puncak.
j. Layanan Pelaporan (Reporting Service): Menghasilkan laporan pendapatan parkir, penggunaan parkir, dan pelanggaran parkir untuk memberikan wawasan kepada administrator dan pemangku kepentingan lainnya.
Low Level Design (LLD)
A. Teknologi
Lingkungan Pengembangan:
Sistem Operasi: Linux (Ubuntu) atau Windows 10/11
IDE (Integrated Development Environment): Visual Studio Code, IntelliJ IDEA, atau Eclipse
Bahasa Pemrograman:
Backend:
Java dengan framework Spring Boot atau Jakarta EE
Python dengan framework Django atau Flask
Node.js dengan framework Express.js
PHP dengan framework Laravel atau CodeIgniter (opsional)
Frontend:
HTML, CSS, JavaScript (ES6+)
Framework JavaScript: React.js, Angular, atau Vue.js
Basis Data:
MySQL atau PostgreSQL untuk basis data relasional
MongoDB untuk basis data NoSQL (jika diperlukan fleksibilitas skema)
Server:
Apache HTTP Server atau Nginx untuk server web
Apache Tomcat atau Jetty (opsional, untuk aplikasi Java)
Express.js (opsional, untuk aplikasi Node.js)
Framework dan Library Tambahan:
Backend:
Spring Security (untuk keamanan)
Hibernate atau Spring Data JPA (untuk akses basis data)
JWT (JSON Web Tokens) untuk otentikasi API
Frontend:
Redux atau Context API untuk manajemen state
Axios atau Fetch API untuk permintaan HTTP
Bootstrap, Material-UI, atau Tailwind CSS untuk desain responsif
Alat Pengembangan Tambahan:
Git untuk kontrol versi
Postman atau Insomnia untuk menguji API
Docker untuk kontainerisasi aplikasi
JUnit atau TestNG untuk pengujian otomatis (Java)
PyTest atau unittest untuk pengujian otomatis (Python)
B. Database
-- Parking Spots Table CREATE TABLE TempatParkir ( id INT AUTO_INCREMENT PRIMARY KEY, nama_tempat VARCHAR(100) NOT NULL, jenis_tempat ENUM('mobil', 'motor', 'VIP') NOT NULL, tarif DECIMAL(10, 2) NOT NULL );
-- Users Table CREATE TABLE Pengguna ( id INT AUTO_INCREMENT PRIMARY KEY, nama_pengguna VARCHAR(100) NOT NULL, email VARCHAR(100) NOT NULL UNIQUE, kata_sandi VARCHAR(100) NOT NULL, peran ENUM('admin', 'pengguna') NOT NULL, tempat_parkir_id INT, FOREIGN KEY (tempat_parkir_id) REFERENCES TempatParkir(id) );
-- Vehicles Table CREATE TABLE Kendaraan ( id INT AUTO_INCREMENT PRIMARY KEY, plat_nomor VARCHAR(20) NOT NULL, jenis_kendaraan ENUM('mobil', 'motor') NOT NULL, waktu_masuk DATETIME NOT NULL, waktu_keluar DATETIME, biaya DECIMAL(10, 2), tempat_parkir_id INT, FOREIGN KEY (tempat_parkir_id) REFERENCES TempatParkir(id) );
-- Parking Transactions Table CREATE TABLE TransaksiParkir ( id INT AUTO_INCREMENT PRIMARY KEY, waktu_transaksi DATETIME NOT NULL, jenis_transaksi ENUM('masuk', 'keluar') NOT NULL, kendaraan_id INT NOT NULL, FOREIGN KEY (kendaraan_id) REFERENCES Kendaraan(id) );
-- Parking Violations Table CREATE TABLE PelanggaranParkir ( id INT AUTO_INCREMENT PRIMARY KEY, waktu_pelanggaran DATETIME NOT NULL, keterangan VARCHAR(255), kendaraan_id INT NOT NULL, FOREIGN KEY (kendaraan_id) REFERENCES Kendaraan(id) );
-- User Activities Table CREATE TABLE AktivitasPengguna ( id INT AUTO_INCREMENT PRIMARY KEY, waktu_aktivitas DATETIME NOT NULL, aktivitas VARCHAR(255) NOT NULL, pengguna_id INT NOT NULL, FOREIGN KEY (pengguna_id) REFERENCES Pengguna(id) );
B. Design Interface
Gambarkan Arsitektur dari Aplikasi Parkir yang akan dibangun (Studi Kasus)
Arsitektur Aplikasi Parkir
Berikut adalah arsitektur yang direncanakan untuk pembangunan aplikasi parkir:
a. Backend:
Menggunakan bahasa pemrograman Java dengan framework Spring Boot.
Menjamin keamanan melalui Spring Security.
Menggunakan Spring Data JPA untuk akses ke basis data.
API diotentikasi dengan JSON Web Tokens (JWT).
b. Web Server:
Sistem Operasi: Linux (Ubuntu) atau Windows 10/11.
Server Web: Apache HTTP.
Server Basis Data: MySQL.
c. Frontend:
Menggunakan HTML, CSS, dan JavaScript (ES6+).
Framework JavaScript: React.js.
Manajemen keadaan dilakukan dengan Redux.
Menggunakan Axios untuk permintaan HTTP.
d. Alat Pengembangan Tambahan:
Menggunakan Git untuk kontrol versi.
Menggunakan Postman atau Insomnia untuk pengujian API.
Menggunakan Docker untuk kontainerisasi.
Pengujian otomatis menggunakan JUnit untuk backend dan React Testing Library untuk frontend (opsional).
Aplikasi Starbuck Robby Ulung Pambudi 5025211042 PPL - A Starbucks, perusahaan kopi yang terkenal di dunia, dikenal dengan pengalaman pelanggan yang luar biasa dan penawaran yang inovatif. Untuk tetap menjadi yang terdepan dalam industri kopi yang kompetitif dan mempertahankan reputasinya, Starbucks secara konsisten memprioritaskan pemahaman terhadap pelanggan dan kebutuhan mereka. Salah satu 3 utama yang digunakan Starbucks untuk mencapai hal ini adalah pemetaan perjalanan pelanggan. Strategi Pemetaan Perjalanan Pelanggan Starbucks memulai inisiatif pemetaan perjalanan pelanggan yang komprehensif, yang bertujuan untuk mengidentifikasi titik-titik masalah dalam pengalaman pelanggannya dan mengembangkan solusi untuk mengatasi masalah ini. Perusahaan ini menggunakan pendekatan lintas fungsi, yang melibatkan tim dari berbagai departemen seperti pemasaran, operasional gerai, dan pengembangan produk, untuk memastikan pemahaman menyeluruh tentang ...
Nama : Christian Kevin Emor NRP : 5025211153 Kelas : PPL A Rancangan Desain Instagram Link Refrensi : Refrensi Tugas Instagram adalah platform media sosial yang memungkinkan pengguna untuk berbagi foto dan video, serta mengikuti dan berinteraksi dengan pengguna lain melalui fitur seperti likes, komentar, dan direct messaging. Aplikasi ini juga menawarkan fitur Stories, Reels, dan IGTV untuk konten video yang lebih panjang dan berbagi momen sehari-hari. Spesifikasi Kebutuhan / Requirements Fungsional: Pendaftaran dan login pengguna Unggah dan berbagi foto/video Fitur komentar dan like Mengikuti dan diikuti oleh pengguna lain Pesan langsung (Direct Messaging) Pencarian dan eksplorasi konten Fitur Stories, Reels, dan IGTV Notifikasi aktivitas pengguna Non-Fungsional: Skalabilitas untuk menangani jutaan pengguna Ketersediaan tinggi untuk akses 24/7 Latensi rendah untuk respons cepat Keamanan data pengguna dan enkripsi Konsistensi kuat untuk pembaruan data secara real-time...
Komentar
Posting Komentar