Posts

Showing posts from November, 2023

Tugas-7 Refactoring

Image
Nama : Muhammad Ismail NRP : 5025201223 Kelas : Evolusi Perangkat Lunak Sebelum Refactoring Pada kode di atas, terlihat bahwa fungsi getUsers() melakukan beberapa tugas sekaligus: Mengambil data users Melakukan filter Melakukan transformasi data Hal ini melanggar prinsip Single Responsibility dimana sebuah fungsi hanya boleh memiliki 1 tanggung jawab saja. Selain itu kode juga kurang modular. Sesudah Refactoring Setelah dilakukan refactoring: Fungsi digunakan hanya untuk satu tujuan saja sesuai prinsip SRP Kode lebih modular dengan memisahkan logic filter dan transform ke dalam class terpisah Lebih mudah dimaintain dan dikembangkan ke depannya Lebih modular dan reusable Mudah di test secara independen (loose coupling) Lebih mudah dikembangkan fitur dengan mengubah class tertentu saja

Tugas 6 - Impact Analysis

Image
Nama  : Muhammad Ismail NRP     : 5025201223 Tugas   : Impact Analysis pada Penerimaan Siswa Baru Pada Penerimaan siswa baru, terdapat berbagai modul salah satunya modul pendaftaran siswa, modul unggah berkas-berkas penting, modul penerimaan siswa. Perubahan pada Modul Penerimaan Siswa : Dalam penerimaan siswa baru khususnya jenjang SMA, Indonesia menerapkan sistem zonasi, di mana pada sistem tersebut penerimaan siswa dihitung berdasarkan jarak koordinat rumah dengan sekolah yang didaftarkan. Hal ini menjadikan dibutuhkannya perubahan pada tabel siswa dan juga sistem berikut: Modul Pendaftaran Siswa : Karena modul penerimaan siswa terjadi perubahan, maka pertukaran informasi pada tabel siswa juga harus diperbarui salah satunya lokasi koordinat dari rumah siswa tersebut. Selain dari itu, pengoptimalan dari adanya siswa baru dengan siswa lama menjadikan modul ini diharuskan untuk diperbarui.  Modul Unggah Berkas : Pada modul ini, siswa diharuskan juga mengupload posisi sesuai dengan ia b