UNIVERSITAS AMIKOM YOGYAKARTA
FAKULTAS ILMU KOMPUTER
PROGRAM STUDI SISTEM INFORMASI

RPS-S1SI-SI084
RENCANA PEMBELAJARAN SEMESTER
MATA KULIAH (MK) KODE Rumpun MK BOBOT (sks) SEMESTER Tanggal Penyusunan
BAHASA PEMROGRAMAN I SI084 Data Structure, Algorithm, and Complexity 2 2 2 27 Feb 2024
Pengesahan Dosen Pengembang RPS Koordinator RMK Ka PRODI

Agung Nugroho, M.Kom.

Agung Nugroho, M.Kom.

Anggit Dwi Hartanto, M.Kom
Capaian Pembelajaran CPL-PRODI yang dibebankan pada MK
CPL10 Mampu mengimplementasikan desain grafis, struktur data dan algoritma, dasar-dasar sistem komputasi, serta sistem operasi dan jaringan pada suatu studi kasus sebagai dasar aplikasi interaktif atau sistem informasi
CPL12 Mampu menjelaskan pemahaman mengenai konsep desain grafis, struktur data dan algoritma, dasar-dasar sistem komputasi, serta sistem operasi dan jaringan sebagai dasar aplikasi interaktif atau sistem informasi
Capaian Pembelajaran Mata Kuliah (CPMK)
CPMK29 Mengimplementasikan struktur data dan algoritma pada suatu studi kasus sebagai dasar sistem informasi
CPMK39 Menjelaskan pemahaman mengenai konsep struktur data dan algoritma sebagai dasar sistem informasi
Kemampuan akhir tiap tahapan belajar (Sub-CPMK)
sub.cpmk.SI084.CPMK29.1 Mampu bekerja sama tim untuk membuat aplikasi dengan menerapkan pemrograman Kotlin
sub.cpmk.SI084.CPMK29.2 Mampu bertindak sebagai junior programmer dalam suatu proyek aplikasi
sub.cpmk.SI084.CPMK39.1 Mampu menjelaskan pemahaman konsep pemrograman Kotlin
sub.cpmk.SI084.CPMK39.2 Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming)
sub.cpmk.SI084.CPMK39.3 Mampu menjelaskan pemahaman konsep debugging dan testing serta mengimplementasikannya.
Korelasi CPMK terhadap Sub-CPMK
CPMK39 sub.cpmk.SI084.CPMK39.1
sub.cpmk.SI084.CPMK39.2
sub.cpmk.SI084.CPMK39.3
CPMK29 sub.cpmk.SI084.CPMK29.1
sub.cpmk.SI084.CPMK29.2
Deskripsi Singkat MK Perkuliahan diselenggarakan sebanyak 28 kali pertemuan dalam satu semester, yang terdiri dari 14 kali pertemuan teori dan 14 pertemuan praktikum. Ditambah 2 kali pertemuan yang dikhususkan untuk pelaksanaan UTS (Ujian Tengah Semester) dan UAS (Ujian Akhir Semester) Perkuliahan diawali dengan menjelaskan menjelaskan konsep pemrograman Kotlin dan konsep OOP (Object Oriented Programming), materi yang dipelajari, referensi, tata cara perkuliahan, rincian tugas, serta penilaian akhir. Tugas kuliah akan diberikan secara individu dan jika berkelompok maka 1 kelompok terdiri dari maksimal 5 orang. Praktikum menggunakan tools mandiri (install aplikasi sesuai dengan kebutuhan pada perangkat masing-masing sesuai petunjuk dosen). Perkuliahan dilakukan secara sinkronisasi menggunakan aplikasi video konferensi dan asinkronisasi menggunakan video rekaman atau penjelasan dalam bentuk lain, tugas serta kuis yang di-upload pada aplikasi LMS (Learning Management System) atau Google Classroom.
Bahan Kajian : Materi Pembelajaran Konsep Pemrograman Kotlin yang akan dipelajari oleh mahasiswa meliputi: pengenalan pemrograman & Kotlin, Kotlin Fundamentals (Tipe Data & Operator), Control Flow (If, When, While, For), Arrays & Collections (List, Set, Map), Functions, Scope Functions, Exception, dan Coroutines Konsep OOP atau Pemrograman Berorientasi Object yang akan dipelajari oleh mahasiswa meliputi: Class & Object (Constructor, Attribut, Method), Inheritance, Interface, Abstract Class, Encapsulation (Modifier), Polymorphism (Overloading, Overriding)
Pustaka Utama
  • 1. Kotlinlang, Kotlin Language Documentation. 2021. JetBrains, : Diakses 10 Januari 2022 dari https://www.jetbrains.com/opensource/kotlin/
Pendukung
  • 2. Programiz, Learn Kotlin Programming, Parewa Labs, 2021 : Diakses 10 Januari 2022. Darihttps://www.programiz.com/kotlin-programming/guide
  • 3. Akbar, M.A., Aljundi, M.I Pesantren Udacoding, Kotlin Zero to Hero, Penerbit Al Qolam, 2018. Tersedia dari http://perpustakaan.yudharta.ac.id/katalog/index.php?p=show_detail&id=8198
  • 4. Tutorial Kotin, Nugroho, A. 2021. Diakses 11 Desemnber 2021. Tersedia di : https://drive.google.com/file/d/17xiR0ycftLqPlTqyiXep7vlIMExIFX7L/view?usp=sharing
Dosen Pengampu Stevi Ema Wijayanti, M.Kom, Agung Nugroho, M.Kom, Deni Kurnianto Nugroho, M.Eng.
Mata Kuliah Syarat Algoritma dan Struktur Data, Pemrograman Terstruktur(SI018)
Pertemuan Ke Kemampuan akhir tiap tahapan belajar (Sub-CPMK) Penilaian Bentuk Pembelajaran; Metode Pembelajaran; Penugasan Mahasiswa; Materi Pembelajaran Bobot Penilaian
Indikator Kriteria & Teknik Luring Daring
1 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu membedakan antara istilah program, pemrograman, dan bahasa pemrograman 2. Mampu menghafal beberapa keyword dalam Kotlin Kriteria
Ketepatan Jawaban
Teknik
Tanya Jawab
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=90 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=90 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Perkenalan dan Dasar Pemrograman Kotlin
Sub Topik
1. Perkenalan profil dosen 2. Rencana Pembelajaran Semester (RPS) 3. Pengertian dan perbedaan antara program, pemrograman, bahasa pemrograman, dan programer 4. Pengenalan sintak-sintak dasar dalam bahasa pemrograman kotlin 5. Pengenalan tools yang akan digunakan dalam pembuatan program
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 1-15
  • [4] Hal: 1-30
1
2 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin Mampu membuat program sederhana menggnakan Kotlin Kriteria
Ketepatan Jawaban
Teknik
Tanya Jawab
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Praktikum,Praktikum Online,[PR=50 Menit]
Topik
Dasar Pemrograman Kotlin
Sub Topik
1. Dasar pemrograman Kotlin Contoh program menggunakan Kotlin
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 1-15
  • [4] Hal: 1-30
1
3 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori variabel 2. Mampu membedakan antara variabel mutable dan variabel immutable, serta jenis-jenis tipe data 3. Mampu menjelaskan teori operator 4. Mampu membedakan antara jenis-jenis operator 5. Mampu menjelaskan kelas input data dari keyboard 6. Mampu menjelaskan perbedaan antara kelas input data dari keyboard Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis variabel dan operator
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Variabel, Tipe Data, Operator, dan Kelas Input Data
Sub Topik
1. Variabel dan jenisnya 2. Tipe data dan jenisnya 3. Operator dan jenisnya 4. Kelas input data dari keyboard (ReadLine, Scanner, BufferedReader)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 5-15
  • [4] Hal: 3-30
1
4 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu mendeklarasikan variabel (mutable & immutable) dan tipe data 2. Mampu mendeklarasikan jenis-jenis operator 3. Mampu membuat program menggunakan variabel dan operator 4. Mampu mendeklarasikan kelas input data dari keyboard Kriteria
Kesesuaian sintaks dan output yang diharapkan
Teknik
Tugas variabel dan operator
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Variabel, Tipe Data, Operator, dan Kelas Input Data
Sub Topik
1. Variabel dan jenisnya 2. Tipe data dan jenisnya 3. Operator dan jenisnya 4. Kelas input data dari keyboard (ReadLine, Scanner, BufferedReader)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 5-15
  • [4] Hal: 3-30
1
5 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori control flow 2. Mampu membedakan antara percabangan dan perulangan dalam control flow Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis variabel dan operator
Pemahaman materi mandiri,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Control Flow (Percabangan dan Perulangan)
Sub Topik
1. Control flow (percabangan dan perulangan) 2. Percabangan meliputi if, if-else, if-else-if, when 3. Perulangan meliputi for, while, do-while
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 9-25
  • [4] Hal: 15-31
1
6 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu mendeklarasikan control flow yang meliputi percabangan dan perulangan 2. Mampu membuat program menggunakan control flow Kriteria
Kesesuaian sintaks dan output yang diharapkan
Teknik
Tugas membuat program control flow
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Control Flow (Percabangan dan Perulangan)
Sub Topik
Studi kasus program : 1. Control flow (percabangan dan perulangan) 2. Percabangan meliputi if, if-else, if-else-if, when 3. Perulangan meliputi for, while, do-while
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 9-25
  • [4] Hal: 15-31
1
7 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori array dan collections (list, set, map) 2. Mampu membedakan antara array dan collections (list, set, map) Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis array dan collections
Pemahaman materi mandiri,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kuis,[K=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kuis,[K=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Array & Collections
Sub Topik
1. Array 2. Collections (list, set, map)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 12-25
  • [4] Hal: 22-31
1.5
8 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu mendeklarasikan array dan collections (list, set, map) 2. Mampu membuat program menggunakan array dan collections Kriteria
Kesesuaian sintaks dan output yang diharapkan
Teknik
Tugas membuat program menggunakan collections (list, set, map)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Array & Collections
Sub Topik
Studi kasus program 1. Array 2. Collections (list, set, map)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 12-25
  • [4] Hal: 22-31
1.5
9 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori function 2. Mampu membedakan antara jenis-jenis function Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis function
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kuis,[K=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kuis,[K=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Function
Sub Topik
1. Function 2. Komponen function (nama, parameter, tipe nilai balik, argument, default argument, named argument, vararg)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 23-25
  • [4] Hal: 27-36
1.5
10 sub.cpmk.SI084.CPMK29.1-Mampu bekerja sama tim untuk membuat aplikasi dengan menerapkan pemrograman Kotlin 1. Mampu mendeklarasikan dan menentukan nilai dalam setiap komponen function 2. Mampu membuat program menggunakan function Kriteria
Kesesuaian sintaks dan output yang diharapkan
Teknik
Tugas membuat program menggunakan function
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Function
Sub Topik
Studi kasus program 1. Jenis-jenis function meliputi returning functions, unit-returning functions, single expression functions, extension functions, infix functions, operator functions, tailrec functions, lambda
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 23-25
  • [4] Hal: 27-36
1.5
11 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori scope function 2. Mampu membedakan antara jenis-jenis scope functioni( with, run, let, also, dan apply) Kriteria
Kesesuaian mendeklarasikan jenis-jenis jenis-jenis scope functioni( with, run, let, also, dan apply)
Teknik
Tugas membuat program menggunakan scope function (with, run, let, also, dan apply)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Scope Function
Sub Topik
1. Scope function (with, run, let, also, apply) 2. Exception (try, catch, finally, throw) 3. Studi kasus program
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 23-25
  • [4] Hal: 27-36
2.5
12 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu mendeklarasikan jenis-jenis scope function yang meliputi with, run, let, also, dan apply 2. Mampu mendeklarasikan jenis-jenis exception yang meliputi try, catch, finally, dan throw 3. Mampu membuat program menggunakan scope function dan exception Kriteria
Kesesuaian sintaks dan output yang diharapkan
Teknik
Tugas membuat program menggunakan scope function
Kuliah,Proses Belajar,[PB=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Praktikum,Tugas Take Home,[TH=70 Menit]
Topik
Scope Function
Sub Topik
Studi kasus program : Scope function (with, run, let, also, apply)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 23-25
  • [4] Hal: 27-36
2.5
13 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori exception 2. Mampu membedakan antara jenis-jenis exception (try, catch, finally, dan throw) Kriteria
Kesesuaian mendeklarasikan jenis-jenis exception yang meliputi try, catch, finally, dan throw
Teknik
Tugas membuat program menggunakan exception
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Scope Function
Sub Topik
Studi kasus program : Exception (try, catch, finally, throw)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 23-25
  • [4] Hal: 27-36
2
14 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin Ketepatan menjawab soal responsi : Kotlin Fundamentals (Tipe Data & Operator), Control Flow (If, When, While, For), Arrays & Collections (List, Set, Map), Functions, Scope Functions, Exception Kriteria
Ketepatan jawaban responsi sesuai perintah soal
Teknik
Responsi
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Responsi,Tugas Responsi,[TR=90 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Responsi,Tugas Responsi,[TR=90 Menit]
Topik
Responsi
Sub Topik
Kotlin Fundamentals (Tipe Data & Operator), Control Flow (If, When, While, For), Arrays & Collections (List, Set, Map), Functions, Scope Functions, Exception
3
15 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin Ketepatan menuliskan jawaban sesuai perintah soal Kriteria
Ketepatan jawaban ujian sesuai perintah soal
Teknik
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit]
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit]
Topik
Materi pertemuan 1 sampai pertemuan 14
Sub Topik
Seluruh materi yang telah dipelajari mulai dari pertemuan 1 sampai pertemuan 14
20
16 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu menjelaskan konsep Object Oriented Programming (OOP) 2. Mampu membedakan antara class dan objek Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis Object Oriented Programming (OOP)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kulis Langsung,[KL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kulis Langsung,[KL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
OOP, Class dan object
Sub Topik
1. Konsep Object Oriented Programming (OOP) 2. Class dan object (constructor, attribut, method) 3. Studi kasus program
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 42-50
  • [4] Hal: 38-45
1
17 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu mendeklarasikan class dan object dalam konsep OOP 2. Mampu membuat program sederhana menggunakan konsep OOP Kriteria
Kesesuaian mendeklarasikan class dan object dalam konsep OOP
Teknik
Tugas membuat program class dan object dalam konsep OOP
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Laporan Praktikum,[LP=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Laporan Praktikum,[LP=70 Menit]
Topik
OOP, Class dan object
Sub Topik
Studi kasus program : 1. Konsep Object Oriented Programming (OOP) 2. Class dan object (constructor, attribut, method)
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 42-50
  • [4] Hal: 38-45
1
18 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu menjelaskan teori inheritance 2. Mampu menjelaskan teori interface dan abstract class 3. Mampu membedakan antara interface dan abstract class Kriteria
Kesesuaian mendeklarasikan Inheritance, Interface, Abstract class
Teknik
Tugas membuat program menggunakan interface dan abstract class
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Inheritance, Interface, dan Abstract Class
Sub Topik
1. Inheritance 2. Interface 3. Abstract class 4. Studi kasus program
  • [3] Hal: 42-50
  • [4] Hal: 38-45
2.5
19 sub.cpmk.SI084.CPMK29.1-Mampu bekerja sama tim untuk membuat aplikasi dengan menerapkan pemrograman Kotlin 1. Mampu mendeklarasikan inheritance 2. Mampu membuat program menggunakan inheritance 3. Mampu mendeklarasikan interface dan abstract class 4. Mampu membuat program menggunakan interface dan abstract class Kriteria
Kesesuaian mendeklarasikan interface dan abstract class
Teknik
Tugas membuat program menggunakan interface dan abstract class
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Inheritance, Interface, dan Abstract Class
Sub Topik
Studi kasus program 1. Inheritance 2. Interface 3. Abstract class
  • [3] Hal: 42-50
  • [4] Hal: 38-45
2.5
20 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu menjelaskan teori enkapsulasi 2. Mampu membedakan antara jenis-jenis modifier dalam enkapsulasi (private, public, protected, internal) Kriteria
Kesesuaian mendeklarasikan Enkapsulasi dan modifier (private, public, protected, internal)
Teknik
Tugas membuat program menggunakan Enkapsulasi dan modifier (private, public, protected, internal)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Enkapsulasi, Modifier
Sub Topik
Enkapsulasi dan modifier (private, public, protected, internal)
  • [3] Hal: 42-52
  • [4] Hal: 38-55
2.5
21 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu mendeklarasikan enkapsulasi 2. Mampu membuat program menggunakan enkapsulasi Kriteria
Kesesuaian mendeklarasikan enkapsulasi dan polimorfisme
Teknik
Tugas membuat program menggunakan enkapsulasi
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Ceramah Langsung,[C=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Enkapsulasi, Modifier
Sub Topik
Studi kasus program : 1. Enkapsulasi dan modifier (private, public, protected, internal)
  • [3] Hal: 42-62
  • [4] Hal: 38-55
2.5
22 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu mendeklarasikan polimorfisme (overloading, overriding) 2. Mampu membuat program menggunakan polimorfisme (overloading, overriding) Kriteria
Kesesuaian mendeklarasikan Polimorfisme
Teknik
Tugas membuat program menggunakan polimorfisme (overloading, overriding)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Polimorfisme
Sub Topik
Studi kasus program : 1. Polimorfisme (overloading, overriding)
  • [3] Hal: 42-62
  • [4] Hal: 38-55
2.5
23 sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) 1. Mampu mendeklarasikan polimorfisme (overloading, overriding) 2. Mampu membuat program menggunakan polimorfisme (overloading, overriding) Kriteria
Kesesuaian mendeklarasikan Polimorfisme
Teknik
Tugas membuat program menggunakan polimorfisme (overloading, overriding)
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Polimorfisme
Sub Topik
Studi kasus program : 1. Polimorfisme (overloading, overriding)
  • [3] Hal: 42-62
  • [4] Hal: 38-55
2.5
24 sub.cpmk.SI084.CPMK39.3-Mampu menjelaskan pemahaman konsep debugging dan testing serta mengimplementasikannya. 1. Mampu menjelaskan konsep debugging dan testing 2. Mampu membedakan antara debugging dan testing Kriteria
Ketepatan jawaban kuis sesuai perintah soal
Teknik
Kuis debugging dan testing program
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Kulis Langsung,[KL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Kuliah,Kulis Langsung,[KL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Debugging dan Testing
Sub Topik
1. Debugging 2. Testing
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 102-103
  • [4] Hal: 85-88
1
25 sub.cpmk.SI084.CPMK39.3-Mampu menjelaskan pemahaman konsep debugging dan testing serta mengimplementasikannya. 1. Mampu melakukan debugging dan testing program Kriteria
Kesesuaian melakukan debugging dan testing program
Teknik
Tugas melakukan debugging dan testing program
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum,[P=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Debugging dan Testing
Sub Topik
Studi kasus program 1. Debugging 2. Testing
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 102-103
  • [4] Hal: 85-88
1
26 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin 1. Mampu menjelaskan teori coroutines Kriteria
Kesesuaian mendeklarasikan coroutines
Teknik
Tugas membuat menggunakan coroutines
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Coroutines
Sub Topik
1. Coroutines
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 42-65
  • [4] Hal: 55-68
2.5
27 sub.cpmk.SI084.CPMK29.2-Mampu bertindak sebagai junior programmer dalam suatu proyek aplikasi 1. Mampu mendeklarasikan coroutines 2. Mampu membuat program menggunakan teori coroutines Kriteria
Kesesuaian membuat program menggunakan coroutines
Teknik
Tugas membuat program menggunakan coroutines
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Tugas Responsi,[TR=90 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Praktikum,Praktikum Online,[PR=70 Menit]
Praktikum,Video Pembelajaran,[VA=20 Menit]
Penugasan,Tugas Take Home,[TH=70 Menit]
Topik
Coroutines
Sub Topik
Studi kasus program : 1. Coroutines
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 42-65
  • [4] Hal: 55-68
2.5
28 sub.cpmk.SI084.CPMK29.1-Mampu bekerja sama tim untuk membuat aplikasi dengan menerapkan pemrograman Kotlin sub.cpmk.SI084.CPMK29.2-Mampu bertindak sebagai junior programmer dalam suatu proyek aplikasi 1. Mampu menjelaskan proses perancangan aplikasi android 2. Mampu membuat bagan/diagram dalam proses perancangan aplikasi android Kriteria
Kesesuaian membuat diagram dalam proses perancangan aplikasi android
Teknik
Tugas membuat aplikasi android menggunakan Kotlin sesuai rancangan
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Kuliah,Proses Belajar,[PB=60 Menit]
Penugasan,Tugas Langsung,[TL=30 Menit]
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit]
Topik
Perancangan Aplikasi Android dengan Kotlin
Sub Topik
1. Proses perancangan aplikasi android 2. Perancangan aplikasi android menggunakan kotlin
  • [1] Hal:
  • [2] Hal:
  • [3] Hal: 155-172
  • [4] Hal: 231-252
4
29 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) Ketepatan menjawab soal responsi : Kotlin Fundamentals (Tipe Data & Operator), Control Flow (If, When, While, For), Arrays & Collections (List, Set, Map), Functions, Scope Functions, Exception OOP (Class & Object (Constructor, Attribut, Method), Inheritance, Interface, Abstract Class, Encapsulation (Modifier), Polymorphism (Overloading, Overriding)) Kriteria
Ketepatan jawaban responsi sesuai perintah soal
Teknik
Responsi
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Responsi,Tugas Responsi,[TR=90 Menit]
Kuliah,Persiapan Perkuliahan,[P=10 Menit]
Responsi,Tugas Responsi,[TR=90 Menit]
Topik
Responsi
Sub Topik
Kotlin Fundamentals : (Tipe Data & Operator), Control Flow (If, When, While, For), Arrays & Collections (List, Set, Map), Functions, Scope Functions, Exception OOP (Class & Object (Constructor, Attribut, Method), Inheritance, Interface, Abstract Class, Encapsulation (Modifier), Polymorphism (Overloading, Overriding)
10
30 sub.cpmk.SI084.CPMK39.1-Mampu menjelaskan pemahaman konsep pemrograman Kotlin sub.cpmk.SI084.CPMK39.2-Mampu menjelaskan pemahaman konsep OOP (Object Oriented Programming) Ketepatan menuliskan jawaban sesuai perintah soal Kriteria
Ketepatan jawaban ujian sesuai perintah soal
Teknik
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit]
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit]
Topik
Materi pertemuan 16 sampai pertemuan 29
Sub Topik
Materi pertemuan 16 sampai pertemuan 29
20

Teknik Penilaian CPMK

CPL MK CPMK Partisipasi Kuis Tugas Praktikum Tugas Teori (Individu) Responsi Tes Tulis (UTS) Tes Tulis (UAS)
CPL10 BAHASA PEMROGRAMAN I CPMK29 Y Y Y
CPL12 BAHASA PEMROGRAMAN I CPMK39 Y Y Y Y Y Y Y

Prosedur Penilaian CPMK

1. Komponen Penilaian CPMK
CPL CPMK Sub-CPMK Detail Penugasan (Teknik Penilaian) Bobot % Kriteria Penilaian
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tanya Jawab 1 Ketepatan Jawaban
CPL10 CPMK29 sub.cpmk.SI084.CPMK39.1 Tanya Jawab 1 Ketepatan Jawaban
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Kuis variabel dan operator 1 Ketepatan jawaban kuis sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas variabel dan operator 1 Kesesuaian sintaks dan output yang diharapkan
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Kuis variabel dan operator 1 Ketepatan jawaban kuis sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat program control flow 1 Kesesuaian sintaks dan output yang diharapkan
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Kuis array dan collections 1.5 Ketepatan jawaban kuis sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat program menggunakan collections (list, set, map) 1.5 Kesesuaian sintaks dan output yang diharapkan
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Kuis function 1.5 Ketepatan jawaban kuis sesuai perintah soal
CPL10 CPMK29 sub.cpmk.SI084.CPMK29.1 Tugas membuat program menggunakan function 1.5 Kesesuaian sintaks dan output yang diharapkan
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat program menggunakan scope function (with, run, let, also, dan apply) 2.5 Kesesuaian mendeklarasikan jenis-jenis jenis-jenis scope functioni( with, run, let, also, dan apply)
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat program menggunakan scope function 2.5 Kesesuaian sintaks dan output yang diharapkan
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat program menggunakan exception 2 Kesesuaian mendeklarasikan jenis-jenis exception yang meliputi try, catch, finally, dan throw
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Responsi 3 Ketepatan jawaban responsi sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 20 Ketepatan jawaban ujian sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Kuis Object Oriented Programming (OOP) 1 Ketepatan jawaban kuis sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program class dan object dalam konsep OOP 1 Kesesuaian mendeklarasikan class dan object dalam konsep OOP
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program menggunakan interface dan abstract class 2.5 Kesesuaian mendeklarasikan Inheritance, Interface, Abstract class
CPL10 CPMK29 sub.cpmk.SI084.CPMK29.1 Tugas membuat program menggunakan interface dan abstract class 2.5 Kesesuaian mendeklarasikan interface dan abstract class
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program menggunakan Enkapsulasi dan modifier (private, public, protected, internal) 2.5 Kesesuaian mendeklarasikan Enkapsulasi dan modifier (private, public, protected, internal)
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program menggunakan enkapsulasi 2.5 Kesesuaian mendeklarasikan enkapsulasi dan polimorfisme
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program menggunakan polimorfisme (overloading, overriding) 2.5 Kesesuaian mendeklarasikan Polimorfisme
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.2 Tugas membuat program menggunakan polimorfisme (overloading, overriding) 2.5 Kesesuaian mendeklarasikan Polimorfisme
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.3 Kuis debugging dan testing program 1 Ketepatan jawaban kuis sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.3 Tugas melakukan debugging dan testing program 1 Kesesuaian melakukan debugging dan testing program
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1 Tugas membuat menggunakan coroutines 2.5 Kesesuaian mendeklarasikan coroutines
CPL10 CPMK29 sub.cpmk.SI084.CPMK29.2 Tugas membuat program menggunakan coroutines 2.5 Kesesuaian membuat program menggunakan coroutines
CPL12 CPMK39 sub.cpmk.SI084.CPMK29.1, sub.cpmk.SI084.CPMK29.2 Tugas membuat aplikasi android menggunakan Kotlin sesuai rancangan 4 Kesesuaian membuat diagram dalam proses perancangan aplikasi android
CPL10 CPMK29 sub.cpmk.SI084.CPMK39.1, sub.cpmk.SI084.CPMK39.2 Responsi 10 Ketepatan jawaban responsi sesuai perintah soal
CPL12 CPMK39 sub.cpmk.SI084.CPMK39.1, sub.cpmk.SI084.CPMK39.2 20 Ketepatan jawaban ujian sesuai perintah soal
Total 100
2. Penilaian CPMK
CPL MK CPMK Partisipasi Kuis Tugas Praktikum Tugas Teori (Individu) Responsi Tes Tulis (UTS) Tes Tulis (UAS) Total
CPL10 BAHASA PEMROGRAMAN I CPMK29 1% 0% 6.5% 0% 10% 0% 0% 17.5%
CPL12 BAHASA PEMROGRAMAN I CPMK39 1% 7% 13% 18.5% 3% 20% 20% 82.5%
100%