Final Project Pemrograman Berbasis Kerangka Kerja
Nama : Fathin Muhashibi Putra
NRP : 5025211229
Kelas : PBKK - A
Final Project Pemrograman Berbasis Kerangka Kerja
- Cari paper yang berhubungan dengan aktivitas pembuatan perangkat lunak/ aplikasi menggunakan framework.
Jawab :
Berikut merupakan referensi paper yang saya gunakan :
Link Paper : https://teknosi.fti.unand.ac.id/index.php/teknosi/article/download/2314/pdf
Berdasarkan referensi yang sudah didapatkan,
- Buatlah deskripsi studi kasus aplikasi ditinjau dari MVC nya(individu)
Jawab :
Kerja Praktik (KP) merupakan mata kuliah wajib yang harus diambil oleh mahasiswa. Mata kuliah tersebut mengharuskan mahasiswa/i untuk melakukan kegiatan magang pada suatu instansi/lembaga/perusahaan. Proses pelaksanaan KP dibagi atas beberapa tahapan, yaitu: tahap pendaftaran, tahap pelaksanaan, tahap seminar serta tahap pengumpulan laporan. Seluruh tahapan tersebut telah dilakukan secara online dengan menggunakan Sistem Informasi Manajemen Kerja Praktik (SIMKP). SIMKP adalah sistem informasi berbasis website yang digunakan untuk mengelola dan mengawasi pelaksanaan Kerja Praktik. SIMKP tersebut dibangun secara khusus dan sesuai dengan alur pelaksanaan kerja praktik. Namun, terdapat permasalahan pada SIMKP saat digunakan untuk pengelolaan KP. Saat SIMKP digunakan pada periode pertama KP, sistem berjalan dengan baik tanpa ada kendala yang berarti. Hingga pada saat SIMKP digunakan untuk pengelolaan KP periode kedua, terdeteksi permasalahan yang menyebabkan SIMKP tidak dapat digunakan. Permasalahan tersebut diantaranya yaitu:
1) Adanya ketidaksesuaian data peserta dengan data kelompok.
2) Proses absensi dan bimbingan tidak dapat digunakan.
3) Fitur penilaian tidak dapat digunakan
4) Fitur pengumpulan laporan tidak dapat digunakan.
Untuk itu pengembangan aplikasi ini menggunakan framework codeigniter dengan
mengikuti kaidah penulisan kode yang ada di codeigniter yaitu
kaidah MVC (Model View Controller). Komponen pada kaidah MVC dapat dijelaskan sebagai berikut:
a. Model
Model berisi kode program yang bertugas menangani
database. Model berfungsi untuk mengelola data seperti
proses input, update dan delete data. Model tidak
terhubung secara langsung dengan bagian view.
- Deskripsi Studi Kasus: Pada deskripsi studi kasus, Model dapat diidentifikasi sebagai bagian dari sistem yang menangani database dan operasi terkait data, seperti validasi pendaftaran, pengelolaan laporan, dan pengumpulan nilai.
- Kaitan dengan Aplikasi: Dalam pengembangan Sistem Informasi Manajemen Kerja Praktik (SIMKP), Model mungkin terkait dengan komponen sistem yang menangani penyimpanan data mahasiswa, kelompok, laporan, dan nilai. Penggunaan MySQL sebagai Database Management System (DBMS) juga dapat diidentifikasi sebagai bagian dari Model.
b. View
View mengatur keseluruhan tampilan pada sistem, view
berupa kode atau skrip html dan beberapa bahasa lainnya.
- Deskripsi Studi Kasus: View dalam deskripsi studi kasus ini mencakup tampilan antarmuka pengguna (user interface) seperti halaman login, profil, agenda, pendaftaran kelompok, pendaftaran kerja praktik, dan lainnya.
- Kaitan dengan Aplikasi: Tampilan antarmuka halaman-halaman tersebut adalah bagian dari View. View bertanggung jawab untuk menampilkan informasi kepada pengguna dan menerima input dari mereka. Dalam konteks MVC, View berperan dalam menampilkan data dari Model kepada pengguna.
c. Controller
Controller berisi kode program yang menghubungkan
antara model dan view. Controller berisi perintahperintah untuk memproses data.
- Deskripsi Studi Kasus: Controller pada deskripsi studi kasus ini dapat diidentifikasi dari proses-proses yang mengatur alur bisnis seperti pendaftaran, validasi, dan pengumpulan data.
- Kaitan dengan Aplikasi: Pada pengembangan SIMKP, Controller mungkin terkait dengan logika bisnis yang mengelola interaksi antara pengguna (melalui View) dan data (melalui Model). Contoh tugas Controller termasuk validasi pendaftaran, penentuan pembimbing, proses absensi, dan pengelolaan penilaian.
Dengan menerapkan pola desain MVC, pengembangan aplikasi dapat lebih terstruktur dan mudah dipelihara. Model mengelola data, View menangani presentasi dan antarmuka pengguna, sedangkan Controller mengelola logika bisnis dan interaksi antara Model dan View. Keseluruhan arsitektur ini membantu memisahkan tanggung jawab, memudahkan pengembangan dan pemeliharaan aplikasi.
- Buatlah rancangan umum arsitektur atau fitur yang ada dalam aplikasi (individu)
Jawab :
Berikut rancangan umum arsitektur dari pengembangan aplikasi ini :
Untuk cara kerja atau alur codeigniter dapat dilihat pada gambar di bawah.
Pada gambar tersebut dapat dilihat alur framework codeigniter bekerja:
a. Setiap permintaan atau request yang dilakukan oleh
pengguna akan diarahkan ke halaman index.php oleh
sistem
b. Selanjutnya, routing yang ada akan menentukan alur request pengguna. Jika halaman sebelumnya ada dalam cache, maka sistem akan melakukan langkah selanjutnya.
c. Jika routing mengarahkan ke caching, sistem akan menampilkan halaman yang tersimpan dalam cache.
d. Jika routing diarahkan ke security, maka seluruh data pengguna akan difilter dan selanjutnya diarahkan ke controller.
e. Controller akan memanggil model, libraries, helpers serta tools laiinya yang dibutuhkan oleh halaman yang pengguna minta.
f. Sistem selanjutnya akan menampilkan view sesuai permintaan pengguna.
g. Halaman yang telah diakses oleh pengguna akan disimpan ke dalam cache, sehingga jika terdapat request yang sama sistem akan menampilkan data dari cache secara langsung.
Selain itu, aplikasi ini mencakup beberapa fitur berikut :
- Fitur Pendaftaran dan Login
- Fitur Pendaftaran Kelompok
- Fitur Pendaftaran Kerja Praktik
- Fitur Pendaftaran Seminar
- Fitur Penjadwalan kegiatan
- Fitur Absensi dan bimbingan
- Fitur rekomendasi tempat
- Fitur Rekapitulasi nilai akhir
- Fitur Pengkategorian peserta berdasar tahun akademik mahasiswa dan periode
pelaksanaan KP
- Fitur Sistem Penilaian
- Fitur Menu rekomendasi tempat pelaksanaan KP
- Fitur Notifikasi atau pemberitahuan pendaftaran
baru untuk koordinator
- Fitur atau menu statistik yang berisi informasi
grafik persebaran wilayah KP, data jumlah user serta data
mahasiswa yang belum melaksanakan KP
- Rancang desain databasenya (individu)
Jawab :
Dalam konteks Sistem Informasi Manajemen Kerja Praktik (SIMKP), desain database menjadi fondasi kritis untuk mengelola informasi terkait peserta, kelompok, absensi, penilaian, dan dokumen laporan. Struktur database yang cermat dan terorganisir akan mendukung efisiensi pengelolaan data selama seluruh siklus Kerja Praktik, memastikan integritas data dan kemudahan akses untuk berbagai proses, mulai dari pendaftaran hingga pengumpulan hasil. Desain database SIMKP perlu mempertimbangkan hubungan antartabel yang saling terkait untuk merefleksikan alur kerja dan kebutuhan informasi yang spesifik pada setiap tahap pelaksanaan Kerja Praktik. Berikut untuk CDM/PDM database aplikasi ini :
dari CDM/PDM database di atas terdapat beberapa tabel (menyimpan atribut data masing-masing) berikut:
- Tabel bimbingan
- Tabel mahasiswa
- Tabel dosen
- Tabel jadwal
- Tabel kelompok
- Tabel pendaftaran'
- Tabel laporan
- Tabel rekom_tempat
- Tabel nilai_bimbingan
- Tabel periodeKP
- Tabel absensi
- Tabel seminar
- Tabel nilai_seminar
Berhubungan dengan itu dibuat juga Use Case Diagram sebagai berikut :
- Buat desain front end (individu)
- Tentukan Control yang akan mengandle logika back end. (individu)
Jawab :
Dalam pengembangan aplikasi SIMKP (Sistem Informasi Manajemen Kerja Praktik), kontrol (control) yang akan menghandle logika backend melibatkan beberapa komponen berikut:
1. Controller dalam Framework MVC: Jika pengembangan menggunakan pola arsitektur Model-View-Controller (MVC), kontrol utama berada dalam bagian Controller. Misalnya, saat menggunakan framework Codeigniter, kontrol backend akan terletak dalam berbagai kontroler yang bertanggung jawab atas alur logika dan pengelolaan data.
2. API Controllers: Aplikasi SIMKP berkomunikasi dengan layanan atau sistem eksternal melalui API. API controllers akan menjadi kontrol utama yang menangani permintaan dari frontend atau antarmuka pengguna, memproses data, dan berinteraksi dengan sumber daya eksternal.
3. Interaksi dengan Database: Kontrol backend akan mengatur operasi-operasi yang terkait dengan basis data, seperti penyimpanan, pengambilan, dan pembaruan data terkait Kerja Praktik. Pada penerapnnya aplikasi ini menggunakan Database Management System (DBMS) MySql
yang umum digunakan karena bersifat open source serta mampu
menangani data dalam jumlah yang besar. Berikut untuk CDM/PDM database aplikasi ini.
4. Logika Bisnis: Kontrol backend juga mencakup implementasi logika bisnis terkait pengelolaan Kerja Praktik. Ini termasuk proses-proses seperti pendaftaran, pelaksanaan, seminar, penilaian, dan pengumpulan laporan, dll. Proses bisnis yang digunakan dapat dilihat pada gambar berikut.
Berdasarkan proses bisnis tersebut,
maka dapat diidentifikasi kebutuhan pengguna yang diusulkan.
Kebutuhan fungsional menggambarkan kebutuhan yang harus
ada dalam sistem sehingga sistem dapat berjalan sesuai yang
diharapkan. Berikut ini adalah kebutuhan pengguna dalam Sistem
Informasi Manajemen Kerja Praktik:
5. Keamanan: Kontrol backend juga bertanggung jawab untuk menerapkan keamanan aplikasi, termasuk autentikasi pengguna, otorisasi, dan perlindungan terhadap serangan keamanan seperti SQL injection atau cross-site scripting.
Dengan mengintegrasikan semua komponen ini, kontrol backend akan memastikan bahwa aplikasi SIMKP berjalan dengan lancar, menjalankan logika bisnis dengan benar, dan menyediakan layanan yang diperlukan untuk pengelolaan efektif Kerja Praktik.
- Implementasikan rancangan yang sudah dibuat menggunakan Framework NET, CI ataupun Framework Google.
Jawab :
Dokumentasi
Anggota:
1. M. Armand Giovani (5025211054)
2. Irsyad Fikriansyah Ramadhan (5025211149)
3. Fathin M. Putra (5025211229)
Referensi: Link
- Buat video presentasinya, upload di youtube, dan didokumentasikan di blog.
Jawab :
Comments
Post a Comment