Universitas Negeri Surabaya
Fakultas PSDKU
Program Studi S1 Informatika (Kampus Kabupaten Magetan)

Kode Dokumen

SEMESTER LEARNING PLAN

Course

KODE

Rumpun MataKuliah

Bobot Kredit

SEMESTER

Tanggal Penyusunan

Struktur Data

5521404009

Mata Kuliah Wajib Program Studi

T=4

P=0

ECTS=6.36

2

31 Januari 2025

OTORISASI

Pengembang S.P

Koordinator Rumpun matakuliah

Koordinator Program Studi




Bonda Sisephaputra, M.Kom




Bonda Sisephaputra, M.Kom




BONDA SISEPHAPUTRA

Model Pembelajaran

Project Based Learning

Program Learning Outcomes (PLO)

PLO program Studi yang dibebankan pada matakuliah

PLO-5

Mampu menganalisis persoalan computing yang kompleks untuk mengidentifikasi solusi pengelolaan proyek teknologi bidang informatika/ilmu komputer dengan mempertimbangkan wawasan perkembangan ilmu trandisiplin

PLO-7

Mampu mengimplementasikan pengetahuan cara kerja sistem komputer untuk memecahkan masalah teknologi informasi

PLO-11

Mampu mengimplementasikan kebutuhan computing dengan mempertimbangkan berbagai metode/algoritma yang sesuai

Program Objectives (PO)

PO - 1

Mahasiswa mampu menjelaskan sejarah dan konsep algoritma dan struktur data, mengasosiasikan dan membedakan hubungan antara algoritma dan struktur data, dan mampu mencontohkan atau mengilustrasikan implementasi algoritma dan strutkur data pada perangkat lunak.

PO - 2

Mahasiswa mampu mengaplikasikan input, process, dan output serta merancang algoritma untuk menyelesaikan kasus sederhana menggunakan notasi algoritma seperti kalimat deskriptif, flowchart, dan pseudo code.

PO - 3

Mahasiswa mampu menjelaskan jenis-jenis dan perbedaan bahasa pemrograman dan mampu menggunakan bahasa pemrograman Python, mulai dari instalasi, menulis kode, dan menjalankan kode.

PO - 4

Mahasiswa mampu menjelaskan tentang tipe data, operator, variabel, dan nilai serta mampu mengaplikasikan tipe data, operator, variabel, dan nilai tersebut pada bahasa pemrograman Python.

PO - 5

Mahasiswa mampu menganalisis konsep algoritma runtutan, percabangan, dan perulangan serta mampu mengaplikasikan algoritma-algoritma tersebut pada bahasa pemrograman Python

PO - 6

Mahasiswa mampu menjelaskan konsep struktur data array, tupple, dan linked list serta mengaplikasikan pengolahan data array, tupple, dan linked list menggunakan bahasa pemrograman Python

PO - 7

Mahasiswa mampu menjelaskan konsep struktur data stack dan queue serta mengaplikasikan pengolahan data stack, queue menggunakan bahasa pemrograman Python

PO - 8

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pencarian (searching) dan mampu menghasilkan aplikasi pencarian sederhana menggunakan bahasa pemrograman Python

PO - 9

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pengurutan (sorting) dan mampu menghasilkan aplikasi pengurutan sederhana menggunakan bahasa pemrograman Python

PO - 10

Mahasiswa mampu menjelaskan konsep algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem

Matrik PLO-PO

 
POPLO-5PLO-7PLO-11
PO-1  
PO-2  
PO-3  
PO-4  
PO-5  
PO-6  
PO-7  
PO-8  
PO-9  
PO-10  

Matrik PO pada Kemampuan akhir tiap tahapan belajar (Sub-PO)

 
PO Minggu Ke
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
PO-1
PO-2
PO-3
PO-4
PO-5
PO-6
PO-7
PO-8
PO-9
PO-10

Deskripsi Singkat Mata Kuliah

Mata kuliah Struktur Data merupakan salah satu mata kuliah dasar dalam bidang ilmu komputer yang mempelajari cara mengorganisir, menyimpan, dan mengelola data secara efisien. Dalam mata kuliah ini, mahasiswa akan diperkenalkan pada berbagai jenis struktur data, baik yang sederhana maupun kompleks, serta algoritma yang digunakan untuk memanipulasi struktur data tersebut. Bahasa pemrograman yang digunakan dalam praktikum dan proyek adalah Python.

Pustaka

Utama :

  1. Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
  2. Benjamin Baka. *Python Data Structures and Algorithms*.2017

Pendukung :

Dosen Pengampu

Bonda Sisephaputra, M. Kom.

Azis Suroni, S.Kom., M.Kom.

Minggu Ke-

Kemampuan akhir tiap tahapan belajar
(Sub-PO)

Penilaian

Bantuk Pembelajaran,

Metode Pembelajaran,

Penugasan Mahasiswa,

 [ Estimasi Waktu]

Materi Pembelajaran

[ Pustaka ]

Bobot Penilaian (%)

Indikator

Kriteria & Bentuk

Luring (offline)

Daring (online)

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

1

Minggu ke 1

Mahasiswa mampu menjelaskan sejarah dan konsep algoritma dan struktur data, mengasosiasikan dan membedakan hubungan antara algoritma dan struktur data, dan mampu mencontohkan atau mengilustrasikan implementasi algoritma dan strutkur data pada perangkat lunak.

Partisipasi dalam diskusi, pemahaman konsep.

Kriteria:

Keaktifan dalam diskusi


Bentuk Penilaian :
Aktifitas Partisipasif
Kuliah interaktif, diskusi kelompok
4x50

Materi: Pengantar Algoritma dan Struktur Data
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
3%

2

Minggu ke 2

Mahasiswa mampu mengaplikasikan input, process, dan output serta merancang algoritma untuk menyelesaikan kasus sederhana menggunakan notasi algoritma seperti kalimat deskriptif, flowchart, dan pseudo code

Tugas praktis, kuis.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Kuliah, demonstrasi kode, latihan praktis.
4x50

Materi: Input, Proses, Output, Flowchart
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
3%

3

Minggu ke 3

Mahasiswa mampu menjelaskan jenis-jenis dan perbedaan bahasa pemrograman dan mampu menggunakan bahasa pemrograman Python, mulai dari instalasi, menulis kode, dan menjalankan kode.

Tugas praktis, kuis.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Praktik / Unjuk Kerja
Kuliah, latihan praktis, tugas individu.
4x50

Materi: Bahasa pemrograman, Instalasi Program
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
3%

4

Minggu ke 4

Mahasiswa mampu menjelaskan jenis-jenis dan perbedaan bahasa pemrograman dan mampu menggunakan bahasa pemrograman Python, mulai dari instalasi, menulis kode, dan menjalankan kode.

Tugas kelompok, partisipasi.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Kuliah, demonstrasi, latihan kelompok.
4x50

Materi: Bahasa Pemrograman dan Instalasi Program
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
5%

5

Minggu ke 5

Mahasiswa mampu menjelaskan tentang tipe data, operator, variabel, dan nilai serta mampu mengaplikasikan tipe data, operator, variabel, dan nilai tersebut pada bahasa pemrograman Python.

Tugas praktis, kuis.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Kuliah, diskusi, latihan praktis.
4x50

Materi: tipe data, operator, variabel, dan nilai tersebut pada bahasa pemrograman Python.
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
3%

6

Minggu ke 6

Mahasiswa mampu menganalisis konsep algoritma runtutan, percabangan, dan perulangan serta mampu mengaplikasikan algoritma-algoritma tersebut pada bahasa pemrograman Python

Tugas praktis, kuis.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Kuliah, demonstrasi, latihan individu.
4x50

Materi: algoritma runtutan, percabangan, dan perulangan
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
5%

7

Minggu ke 7

Mahasiswa mampu menjelaskan konsep struktur data array, tupple, dan linked list serta mengaplikasikan pengolahan data array, tupple, dan linked list menggunakan bahasa pemrograman Python

Tugas kelompok, kuis.

Kriteria:

Ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Kuliah, diskusi, latihan kelompok.
4x50

Materi: Array dan Link List
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

8

Minggu ke 8

Mahasiswa dapat menunjukkan pemahaman yang baik tentang materi yang telah dipelajari.

Ujian Tengah Semester (UTS)

Kriteria:

Hasil Ujian


Bentuk Penilaian :
Tes
UTS
4x50

Materi: Pertemuan 1-7
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

9

Minggu ke 9

Mahasiswa mampu menjelaskan konsep struktur data stack dan queue serta mengaplikasikan pengolahan data stack, queue menggunakan bahasa pemrograman Python

Tugas praktis, kuis.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Aktifitas Partisipasif, Praktik / Unjuk Kerja
Kuliah, demonstrasi, latihan praktis.
4x50

Materi: Stack dan Queue
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

10

Minggu ke 10

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pencarian (searching) dan mampu menghasilkan aplikasi pencarian sederhana menggunakan bahasa pemrograman Python

Tugas praktis, kuis.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Praktik / Unjuk Kerja
Kuliah, diskusi, latihan kelompok.
4x50

Materi: jenis-jenis algoritma pencarian (searching)
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

11

Minggu ke 11

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pencarian (searching) dan mampu menghasilkan aplikasi pencarian sederhana menggunakan bahasa pemrograman Python

Tugas praktis, kuis.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Praktik / Unjuk Kerja
Kuliah, demonstrasi, latihan praktis.
4x50

Materi: jenis-jenis algoritma pencarian (searching)
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
3%

12

Minggu ke 12

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pengurutan (sorting) dan mampu menghasilkan aplikasi pengurutan sederhana menggunakan bahasa pemrograman Python

Tugas praktis, kuis.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Praktik / Unjuk Kerja
Kuliah, diskusi, latihan individu.
4x50

Materi: jenis-jenis algoritma pengurutan (sorting)
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

13

Minggu ke 13

Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pengurutan (sorting) dan mampu menghasilkan aplikasi pengurutan sederhana menggunakan bahasa pemrograman Python

Partisipasi dalam diskusi, rencana proyek.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk, Praktik / Unjuk Kerja
Diskusi kelompok, bimbingan dosen.
4x50

Materi: jenis-jenis algoritma pengurutan (sorting)
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%

14

Minggu ke 14

Mahasiswa mampu menjelaskan konsep algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem

Kemajuan proyek, presentasi.

Kriteria:

ketepatan dalam menyelesaikan masalah


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Bimbingan, diskusi kelompok, presentasi kemajuan.
4x50

Materi: algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
5%

15

Minggu ke 15

Mahasiswa mampu menjelaskan konsep algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem (Projek Akhir)

presentasi.

Kriteria:

Kualitas presentasi, kemampuan menjawab pertanyaan.


Bentuk Penilaian :
Penilaian Hasil Project / Penilaian Produk
Presentasi, diskusi, umpan balik.
4x50

Materi: algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem
Pustaka: Michael T. Goodrich, Roberto Tamassia, dan Michael H. Goldwasser. *Data Structures and Algorithms in Python*. 2013
35%

16

Minggu ke 16

Mahasiswa dapat menunjukkan pemahaman yang komprehensif tentang seluruh materi.

Ujian Akhir Semester (UAS)

Kriteria:

Hasil Ujian


Bentuk Penilaian :
Tes
Ujian Tulis
4x50

Materi: Ujian untuk mengevaluasi pemahaman keseluruhan materi.
Pustaka: Benjamin Baka. *Python Data Structures and Algorithms*.2017
5%



Rekap Persentase Evaluasi : Project Based Learning

No Evaluasi Persentase
1. Aktifitas Partisipasif 11%
2. Penilaian Hasil Project / Penilaian Produk 52.5%
3. Praktik / Unjuk Kerja 26.5%
4. Tes 10%
100%

Catatan

  1. Capaian Pembelajaran Lulusan Program Studi (PLO - Program Studi) adalah kemampuan yang dimiliki oleh setiap lulusan Program Studi yang merupakan internalisasi dari sikap, penguasaan pengetahuan dan ketrampilan sesuai dengan jenjang prodinya yang diperoleh melalui proses pembelajaran.
  2. PLO yang dibebankan pada mata kuliah adalah beberapa capaian pembelajaran lulusan program studi (CPL-Program Studi) yang digunakan untuk pembentukan/pengembangan sebuah mata kuliah yang terdiri dari aspek sikap, ketrampulan umum, ketrampilan khusus dan pengetahuan.
  3. Program Objectives (PO) adalah kemampuan yang dijabarkan secara spesifik dari PLO yang dibebankan pada mata kuliah, dan bersifat spesifik terhadap bahan kajian atau materi pembelajaran mata kuliah tersebut.
  4. Sub-PO Mata kuliah (Sub-PO) adalah kemampuan yang dijabarkan secara spesifik dari PO yang dapat diukur atau diamati dan merupakan kemampuan akhir yang direncanakan pada tiap tahap pembelajaran, dan bersifat spesifik terhadap materi pembelajaran mata kuliah tersebut.
  5. Indikator penilaian kemampuan dalam proses maupun hasil belajar mahasiswa adalah pernyataan spesifik dan terukur yang mengidentifikasi kemampuan atau kinerja hasil belajar mahasiswa yang disertai bukti-bukti.
  6. Kreteria Penilaian adalah patokan yang digunakan sebagai ukuran atau tolok ukur ketercapaian pembelajaran dalam penilaian berdasarkan indikator-indikator yang telah ditetapkan. Kreteria penilaian merupakan pedoman bagi penilai agar penilaian konsisten dan tidak bias. Kreteria dapat berupa kuantitatif ataupun kualitatif.
  7. Bentuk penilaian: tes dan non-tes.
  8. Bentuk pembelajaran: Kuliah, Responsi, Tutorial, Seminar atau yang setara, Praktikum, Praktik Studio, Praktik Bengkel, Praktik Lapangan, Penelitian, Pengabdian Kepada Masyarakat dan/atau bentuk pembelajaran lain yang setara.
  9. Metode Pembelajaran: Small Group Discussion, Role-Play & Simulation, Discovery Learning, Self-Directed Learning, Cooperative Learning, Collaborative Learning, Contextual Learning, Project Based Learning, dan metode lainnya yg setara.
  10. Materi Pembelajaran adalah rincian atau uraian dari bahan kajian yg dapat disajikan dalam bentuk beberapa pokok dan sub-pokok bahasan.
  11. Bobot penilaian adalah prosentasi penilaian terhadap setiap pencapaian sub-PO yang besarnya proposional dengan tingkat kesulitan pencapaian sub-PO tsb., dan totalnya 100%.
  12. TM=Tatap Muka, PT=Penugasan terstruktur, BM=Belajar mandiri.