Anda di halaman 1dari 2

Penilai : Muhammad Sobri Maulana, S.

Kom, CEH, OSCP, OSCE


instruksi
1. Harap dicatat bahwa Anda harus mengunggah solusi sebelum batas waktu ke portal kursus

2. Silakan gunakan Python 3 untuk menjawab pertanyaan berikut jika Anda perlu menggunakan
Python. Tulis juga laporan/catatan singkat tentang tugas yang menjelaskan asumsi/pilihan
desain/fungsi Anda, dll. untuk memahami kode Anda dengan cara yang lebih baik. Ini juga
merupakan praktik yang baik untuk menggunakan komentar secara ekstensif dalam kode Anda,
sehingga akan mudah bagi orang lain untuk memahaminya.

3. Kode Python untuk menjawab pertanyaan dapat dikirimkan sebagai satu buku catatan jupyter
tunggal atau beberapa buku catatan jupyter. Saya selain mengirimkan notebook/notebook jupyter
Anda, harap juga mengekspor kode Python sebagai file dari notebook jupyter ( 'File' -> 'Download as'
-> 'Python (.py)' ) dan unggah kode Python yang diekspor file, selain notebook jupyter, seperti yang
telah kita lihat berkali-kali notebook jupyter gagal memuat karena ketidakcocokan versi/OS dll. Atau,
jika Anda menggunakan IDE lain (Integrated development environment), maka Anda juga dapat
mengirimkan file Anda kode sebagai satu file python tunggal (dengan ekstensi .py) yang berisi semua
kode sumber dari berbagai kelas/modul/fungsi dll. Anda juga dapat menambahkan semua file kode
(.py, jupyter notebook, dll.

Tugas Pemrograman Python


Sebagai bagian dari tugas ini, Anda perlu mengembangkan program menggunakan fitur berorientasi
objek dari bahasa Python untuk spesifikasi program berikut.

Spesifikasi Program
Mari kita bayangkan situasi hipotetis bahwa perguruan tinggi kita sekarang telah merencanakan
untuk memperkenalkan program Diploma baru untuk Ilmu Data dengan empat program berikut:

1. Kursus Pemrograman Python


2. 2. Kursus Penambangan Data dan Pembelajaran Mesin
3. 3. Kursus Analisis Visual
4. 4. Kursus Analisis Teks 1

Bayangkan Anda dipekerjakan sebagai pengembang utama untuk mengembangkan sistem untuk
mengelola Program Diploma Ilmu Data. Anda diminta untuk mengembangkan sistem (program)
dalam bahasa Python dengan memasukkan fitur-fitur pemrograman berorientasi objek secara
sepatutnya sehingga sistem akan mudah dirawat, di-debug dan juga untuk memperluas
fungsionalitas nanti jika diperlukan. Berikut ini adalah persyaratan utama program diploma untuk
Ilmu Data.

a) Untuk menjamin kualitas lulusan program ini, manajemen kursus telah memperkenalkan 5 tugas
wajib di setiap kursus. Tugas wajib dari setiap kursus dinilai sebagai Lulus atau Gagal. Untuk lulus
kursus, seorang siswa harus lulus setidaknya 3 dari 5 tugas wajib untuk kursus itu.

b) Agar berhasil lulus seluruh program diploma dalam Ilmu Data, seorang siswa harus lulus semua
mata kuliah secara individual, dengan memenuhi persyaratan lulus 3 dari 5 tugas wajib, di setiap
mata kuliah program diploma.
c) Selain itu, seorang mahasiswa juga dapat memperoleh ijazah dengan predikat istimewa, jika
mahasiswa tersebut lulus minimal 17 tugas wajib (dari total 20 tugas) dari semua mata kuliah. Harap
dicatat bahwa pilihan desain yang dipilih oleh koordinator kursus ini akan memastikan bahwa
seorang siswa, yang menginginkan perbedaan, harus lulus semua 5 tugas wajib dari setidaknya satu
kursus tunggal (dan 4 dari 5 tugas untuk 3 kursus yang tersisa) untuk memenuhi syarat untuk
perbedaan. Terakhir, jika beberapa persyaratan tidak jelas dari spesifikasi persyaratan di atas, harap
buat asumsi yang sesuai dan jelaskan/tentukan asumsi Anda tentang fungsionalitas dalam laporan.

Program Anda

Anda HARUS mengembangkan program menggunakan bahasa Python yang akan memenuhi
fungsionalitas yang ditentukan di atas. Berdasarkan pemahaman dan interpretasi Anda, ada banyak
cara untuk mengembangkan program tersebut untuk memenuhi spesifikasi persyaratan di atas. Oleh
karena itu, silakan gunakan kreativitas Anda untuk menghasilkan desain yang sesuai, yaitu kelas
mana yang akan berisi fungsionalitas mana, metode mana, dan sebagainya. Harap juga tetap fokus
utama Anda untuk menggunakan berbagai teknik dan praktik pemrograman yang baik yang telah
Anda pelajari dalam kursus ini. Misalnya, Anda harus menggunakan penanganan pengecualian yang
tepat dengan pesan kesalahan yang sesuai di tempat yang sesuai di mana Anda dapat
mengharapkan pengecualian dan kesalahan dalam program Anda. Hasil akhir dari implementasi
Anda harus berupa sekumpulan kelas Python dengan beberapa kode contoh untuk menguji kasus
penggunaan/skenario seperti

1. Menambah/menghapus kursus baru

2. Membuat dan menambahkan siswa ke kursus,

3. Penilaian tugas wajib yaitu lulus/gagal untuk siswa dll.

4. Untuk mendapatkan gambaran di tingkat program diploma/kursus untuk melihat berapa banyak
siswa yang lulus program dan sejenisnya

5. Kode tes untuk menunjukkan daftar siswa: a) yang lulus dengan perbedaan, b) lulus dan c) gagal.

Anda mungkin juga menyukai