EAS PBKK B

Framework

Nama : Maheswara Danendra Satriananda

NRP : 5025201060

Kelas : PBKK B


1. Sebutkan keuntungan dan kerugian penggunaan framework dalam membangun aplikasi.

Keuntungan penggunaan framework:

1) Efisiensi pengembangan: Framework menyediakan kerangka kerja yang sudah siap pakai, termasuk struktur dasar, komponen, dan fungsionalitas umum. Hal ini menghemat waktu dan upaya pengembangan karena tidak perlu memulai dari nol.

2) Standar industri: Framework sering kali didasarkan pada praktik terbaik industri dan standar pengembangan. Dengan mengikuti kerangka kerja tersebut, Anda dapat memanfaatkan pengetahuan umum dan pengalaman yang telah terbukti efektif.

3) Modularitas: Framework umumnya mempromosikan pendekatan modular dalam pengembangan aplikasi. Ini memungkinkan pemisahan logika bisnis, antarmuka pengguna, dan komponen lainnya menjadi unit terpisah, sehingga memudahkan pemeliharaan, pengujian, dan perluasan fitur.

4) Komunitas dan dokumentasi: Banyak framework memiliki komunitas yang aktif dan dokumentasi yang lengkap. Hal ini memudahkan kolaborasi dengan pengembang lain, memperoleh saran, dan memecahkan masalah yang mungkin Anda temui.

5) Keamanan: Beberapa framework menyediakan fitur keamanan bawaan, seperti perlindungan terhadap serangan umum, pengolahan data yang aman, dan pengujian keamanan yang terintegrasi.

Kerugian penggunaan framework:

1) Pembelajaran: Menggunakan framework baru memerlukan waktu untuk mempelajari konsep, aturan, dan sintaks yang spesifik. Ini bisa menghambat produktivitas awal jika Anda tidak memiliki pengalaman sebelumnya dengan framework tersebut.

2) Kurangnya fleksibilitas: Terkadang, framework mungkin memiliki batasan tertentu yang membatasi kebebasan pengembangan. Anda harus mematuhi struktur dan konvensi yang ditetapkan oleh framework, yang mungkin tidak selalu sesuai dengan kebutuhan proyek Anda.

3) Ketergantungan vendor: Jika Anda menggunakan framework yang dikembangkan oleh pihak ketiga, Anda akan bergantung pada vendor tersebut untuk pemeliharaan dan dukungan jangka panjang. Jika vendor tersebut tidak lagi mendukung framework tersebut, Anda mungkin menghadapi tantangan teknis dan keamanan.

4) Overhead kinerja: Beberapa framework dapat memiliki overhead kinerja yang lebih tinggi dibandingkan dengan pengembangan aplikasi langsung menggunakan bahasa pemrograman asli. Ini terjadi karena lapisan abstraksi tambahan yang ada dalam framework.

5) Kurva pembelajaran tim: Jika Anda bekerja dalam tim pengembangan, semua anggota tim harus menguasai framework yang sama. Jika ada anggota tim yang tidak terbiasa dengan framework tersebut, mungkin diperlukan waktu tambahan untuk mempelajarinya atau mencari solusi terkait.


2. Dalam framework mvc, apa tugas masing masing bagian? Berikan contoh penggunaanya

1) Model:

Tugas: Model bertanggung jawab untuk mengelola data aplikasi, termasuk logika bisnis, validasi data, dan interaksi dengan basis data. Model merepresentasikan struktur data yang digunakan oleh aplikasi.

Contoh penggunaan: Misalnya, dalam aplikasi toko online, Model dapat berisi kelas yang mengelola informasi produk, pengguna, dan transaksi. Model dapat menyediakan metode untuk menambahkan, mengedit, dan menghapus data tersebut.

2) View:

Tugas: View bertanggung jawab untuk menampilkan informasi kepada pengguna. Ini adalah bagian yang berhubungan dengan antarmuka pengguna (UI) aplikasi. View menerima data dari Model dan menghasilkan tampilan yang sesuai untuk ditampilkan kepada pengguna.

Contoh penggunaan: Dalam aplikasi toko online, View dapat berupa halaman web atau tampilan grafis yang menampilkan daftar produk, formulir pemesanan, atau halaman profil pengguna.

3) Controller:

Tugas: Controller berfungsi sebagai penghubung antara Model dan View. Controller menerima input dari pengguna melalui tindakan (action) yang diambil pengguna dan mengelola logika aplikasi berdasarkan input tersebut. Controller memperbarui Model sesuai dengan perintah pengguna dan memutakhirkan tampilan (View) yang relevan.

Contoh penggunaan: Dalam aplikasi toko online, Controller dapat menerima permintaan pengguna untuk menambahkan produk ke keranjang belanja, memproses pembayaran, atau mengatur profil pengguna. Controller berinteraksi dengan Model untuk menyimpan data yang relevan dan memperbarui tampilan yang sesuai di View.


3. Dengan menggunakan framework laravel buatlah deskribsi dan fitur  aplikasi sistem kehadiran utk instansi ITS.

Aplikasi Sistem Kehadiran untuk Instansi ITS yang dibangun dengan menggunakan Framework Laravel adalah sebuah solusi teknologi untuk memantau dan mengelola kehadiran staf dan karyawan di Institut Teknologi Sepuluh Nopember (ITS). Aplikasi ini membantu instansi ITS dalam mengelola data kehadiran, memantau absensi, dan menyediakan laporan terkait kehadiran staf dan karyawan secara efisien.

Fitur-fitur yang dapat diimplementasikan dalam aplikasi ini adalah sebagai berikut:

1) Manajemen Pengguna:
Registrasi pengguna: Pengguna dapat mendaftar ke dalam sistem dengan menggunakan email dan kata sandi, atau menggunakan akun media sosial seperti Google atau Facebook.
Otorisasi dan autentikasi: Sistem memberikan akses berdasarkan peran dan izin pengguna, misalnya admin, manajer, atau staf. Fitur autentikasi memastikan keamanan dalam mengakses data kehadiran.

2) Manajemen Data Karyawan:
Pendaftaran karyawan: Admin atau manajer dapat mendaftarkan karyawan baru ke dalam sistem dengan informasi pribadi seperti nama, jabatan, departemen, dan data kontak.
Pengaturan jadwal kerja: Admin atau manajer dapat mengatur jadwal kerja karyawan, termasuk jam masuk dan jam pulang yang sesuai.

3) Pencatatan Kehadiran:
Presensi harian: Karyawan dapat mencatat kehadiran harian dengan menandai masuk dan pulang secara manual atau menggunakan metode otomatis seperti penggunaan kartu identitas atau sidik jari melalui perangkat perekaman kehadiran (misalnya mesin absensi).
Izin dan cuti: Karyawan dapat mengajukan permohonan izin atau cuti melalui aplikasi, dan manajer dapat menyetujui atau menolak permintaan tersebut.

4) Pelaporan Kehadiran:
Laporan kehadiran harian, mingguan, atau bulanan: Admin atau manajer dapat menghasilkan laporan kehadiran karyawan berdasarkan rentang waktu tertentu. Laporan ini dapat mencakup informasi seperti jumlah hari kerja, hari libur, izin, dan absensi terlambat.
Integrasi email atau notifikasi: Sistem dapat mengirimkan pemberitahuan otomatis kepada manajer atau karyawan terkait informasi kehadiran, seperti pengingat masuk atau laporan kehadiran terbaru.


4. Tuliskan struktur tabelnya.

 Berikut adalah contoh struktur tabel untuk aplikasi sistem kehadiran:

a) Tabel Pengguna (Users):
     id (kunci primer)
     name
     email
     password
     role_id (kunci asing ke tabel Roles)

b) Tabel Role (Roles):
     id (kunci primer)
     name
     description

c) Tabel Karyawan (Employees):
     id (kunci primer)
     user_id (kunci asing ke tabel Pengguna)
     employee_number
     department_id (kunci asing ke tabel Departemen)

d) Tabel Departemen (Departments):
     id (kunci primer)
     name
     description

e) Tabel Jadwal Kerja (Work Schedules):
        id (kunci primer)
     employee_id (kunci asing ke tabel Karyawan)
     work_day (hari kerja)
     start_time (waktu mulai kerja)
     end_time (waktu selesai kerja)

f) Tabel Kehadiran (Attendances):
     id (kunci primer)
     employee_id (kunci asing ke tabel Karyawan)
     date (tanggal kehadiran)
     check_in_time (waktu masuk)
     check_out_time (waktu pulang)

g) Tabel Izin (Leaves):
     id (kunci primer)
     employee_id (kunci asing ke tabel Karyawan)
     start_date (tanggal mulai izin)
     end_date (tanggal akhir izin)
     leave_type (jenis izin)
     status (status izin)

Dalam struktur tabel di atas, tabel Pengguna (Users) dan tabel Role (Roles) digunakan untuk manajemen pengguna dan otorisasi akses ke dalam sistem. Tabel Karyawan (Employees) digunakan untuk menyimpan informasi karyawan, termasuk nomor karyawan dan departemen. Tabel Departemen (Departments) digunakan untuk mengelola informasi departemen dalam instansi ITS.

Tabel Jadwal Kerja (Work Schedules) digunakan untuk mengatur jadwal kerja karyawan, termasuk hari kerja, jam mulai, dan jam selesai kerja. Tabel Kehadiran (Attendances) mencatat informasi kehadiran harian karyawan, termasuk tanggal, waktu masuk, dan waktu pulang. Tabel Izin (Leaves) digunakan untuk mengelola permohonan izin karyawan, termasuk tanggal mulai, tanggal akhir, jenis izin, dan status izin.

Struktur tabel ini membantu dalam menyimpan dan mengelola data kehadiran karyawan secara terorganisir, serta mendukung fitur-fitur seperti pelaporan kehadiran, pengaturan jadwal kerja, dan manajemen izin.

Perlu dicatat bahwa ini hanya contoh struktur tabel dan dapat disesuaikan dengan kebutuhan dan kompleksitas aplikasi sistem kehadiran di instansi ITS.


5. Desain Bentuk Laporan



Komentar

Postingan populer dari blog ini

EAS MPPL B 5025201060

PPB - EAS PBB F

PPB - Jetpack Compose