RENCANA PROGRAM KEGIATAN PEMBELAJARAN SEMESTER (RPKPS) STRUKTUR DATA Disusun Oleh : Nanik Susanti, S.Kom. PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNIK UNIVERSITAS MURIA KUDUS TAHUN AJARAN 2011-2012 1 LEMBAR PENGESAHAN Judul RPKPS : Struktur Data Dosen Pengampu : Nanik Susanti, S.Kom Penyusun Nanik Susanti, S.Kom Mengetahui dan Menyetujui: Ketua Program Studi: Arif Setiawan, S.Kom, M.Cs. 2 Rencana Program dan Kegiatan Pembelajaran Semester (RPKPS) A. Latar Belakang : Struktur Data merupakan mata kuliah wajib yang diberikan bagi mahasiswa semester II Program Studi Sistem Informasi Fakultas Teknik UMK. Tujuan mata kuliah ini adalah : 1. Mahasiswa mengenal dan memahami konsep dasar dari Struktur Data 2. Mahasiswa mengetahui dan memahami macam-macam type data dan penggunaanya 3. Mahasiswa mengetahui dan memahami array, structure, fungsi serta fungsi rekursif 4. Mahasiswa mengetahui dan memahami pointer 5. Mahasiswa mengetahui dan memahami proses stack (tumpukan) 6. Mahasiswa mengetahui dan memahami proses queue (antrian) 7. Mahasiswa mengetahui dan memahami link-list (senarai berantai) 8. Mahasiswa mengetahui dan memahami tree (pohon) 9. Mahasiswa mengetahui dan memahami graph 10. Mahasiswa mengetahui dan memahami berbagai macam algoritma pengurutan data 11. Mahasiswa mengetahui dan memahami berbagai macam algoritma pencarian data Untuk mencapai tujuan yang diinginkan secara maksimal, pada setiap proses pembelajaran memerlukan perencanaan, persiapan, dan pengendalian yang baik. Sehubungan dengan hal itu, diperlukan pengembangan kegiatan yang disebut Rencana Program Kegiatan Pembelajaran Semester (RPKPS). Implementasi kegiatan tersebut diharapkan dapat menciptakan suasana akademik yang kondusif sehingga muncul kegairahan dalam proses pembelajaran. Kegiatan ini diharapkan juga dapat meningkatkan motivasi, kreatifitas, kesungguhan, dan keteraturan dalam proses belajar mengajar serta meningkatkan keaktifan mahasiswa dalam mengikuti proses pembelajaran. B. Perencanaan Pembelajaran 1. Nama Mata Kuliah : Sruktur Data 2. Kode Mata Kuliah : 3. Bobot SKS :3 4. Semester : II 5. Dosen : Nanik Susanti, S.Kom 6. Kompetensi : Mampu memahami konsep Struktur Data sehingga mampu menganalisa, mendesain solusi penyelesaian masalah melalui pemilihan struktur data dan algoritma yang tepat menggunakan Bahasa C++. 7. Rancangan Pembelajaran : 3 RANCANGAN PEMBELAJARAN Nama Mata Kuliah Program Studi Fakultas : Struktur Data : Sistem Informasi : Teknik SKS Semester :3 :2 KOMPETENSI MATA KULIAH: Mampu memahami konsep Struktur Data sehingga mampu menganalisa, mendesain solusi penyelesaian masalah melalui pemilihan struktur data dan algoritma yang tepat menggunakan Bahasa C++. Matriks Pembelajaran : Pertemuan Ke (1) 1 2 Kemampuan akhir yang diharapkan (2) Mahasiswa mengenal dan memahami konsep dasar dari Struktur Data Mahasiswa mengetahui dan memahami macam-macam type data dan penggunaanya Materi/Pokok Bahasan (3) - Ruang Lingkup Mata Kuliah - Mengapa dan Apa Struktur Data - Siapa saja yang terlibat dalam Struktur Data - Konsep Dasar Struktur Data - macam-macam tipe data - implementasi tipe data Strategi Pembelajaran Latihan yang dilakukan (4) (5) Kriteria Penilaian (Indikator) (6) Bobot (7) Discovery learning Simulation Discovery learning Simulation Small group discussion memberikan Ketepatan tugas makalah analisis untuk kebutuhan mengetahui dan sejauh mana penyelesaian penguasaan dalam materi tipe pemrograma data, variabel, n konstanta, dan operator serta 15% 4 3&4 Mahasiswa mengetahui dan memahami array, structure, fungsi serta fungsi rekursif - - Konsep dasar Array Jenis-jenis Array Array 1 Dimensi Array 2 Dimensi Konsep dasar Structure Array pada Structure Konsep dasar Fungsi Array pada fungsi Konsep dasar fungsi rekursif Array pada fungsi rekursif Project Based Learning Simulation Student Center Learning - - 5 6 Mahasiswa mengetahui dan memahami pointer Mahasiswa mengetahui dan memahami proses stack (tumpukan) - Definisi pointer Deklarasi pointer Operasi pada pointer Pointer dengan array Pointer dengan string Pointer dengan pointer Contoh program Simulation Small group discussion Student Center Learning - Definisi stack Deklarasi stack Operasi stack Operasi push Operasi pop Pemanfaatan stack - Simulation Small group discussion Student - penerapannya dalam program Tugas program aplikasi menggunakan array 1 dimensi & 2dimensi Tugas program aplikasi menggunakan structure array Tugas program aplikasi menggunakan fungsi Tugas program aplikasi menggunakan pointer - Tugas program aplikasi menggunakan stack Ketepatan analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan analisis algoritma Ketepatan dalam 15% 15% 15% 5 - 7 8 Ujian Tengah Semester Mahasiswa mengetahui dan memahami proses queue (antrian) - 9 Mahasiswa mengetahui dan memahami link-list (senarai berantai) - - 10 Mahasiswa mengetahui - Reverse polish notation Contoh program Definisi queue Operasi/prosedur pada queue Implementasi queue array Implementasi queue pointer Queue melingkar Implementasi dengan counter Contoh program pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Center Learning standar dengan dengan Simulation Small group discussion - Tugas program aplikasi menggunakan queue Student Center Learning sebuah Definisi link-list Teknik-teknik dalam link-list Pengulangan linked-list Mengubah sebuah pointer dengan referensi pointer Membuat kepala senarai dengan perintah push() Menambah ekor pada akhir senarai Membuat referensi lokal Operasi dalam link-list Menambah node baru Menghapus node Contoh program Jenis-jenis Binary tree Simulation Small group discussion Student Center Learning Simulation - Tugas program aplikasi menggunakan link-list - Menganalisa Ketepatan analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan 15% 15% 15% 6 dan memahami tree (pohon) - - - 11 Mahasiswa mengetahui dan memahami graph - 12 13 Mahasiswa mengetahui dan memahami berbagai macam algoritma pengurutan data Mahasiswa mengetahui - - Operasi binary tree Kunjungan pre-order Kunjungan in-order Kunjungan post-order Binary search tree Operasi insert Operasi update Operasi delete Contoh program Small group discussion Student Center Learning Definisi graph Istilah dalam graph Representasi graph Algoritma pencarian sebuah titik di graph Algoritma penghapusan sebuah titik di graph Algoritma penyisipan sebuah titik di graph Contoh program Buble sort Insertion sort Selection sort Quick sort Contoh program Simulation Small group discussion Student Center Learning Simulation Small group discussion Student Center Learning - Menganalisa teknik searching - Menganalisa algoritma sorting - Membuat program sorting Simulation - Menganalisa Sequential search kasus menggunakan operasi binary tree - Tugas program aplikasi menggunakan tree - Tugas program aplikasi menggunakan graph analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan analisis kasus pemrograma n Ketepatan analisis dan penyelesaian Ketepatan analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ketepatan 15% 15% 15% 7 dan memahami berbagai macam algoritma pencarian data 14 - Binary search Contoh program Small group discussion Student Center Learning teknik searching - Menganalisa algoritma searching - Membuat program searching analisis algoritma Ketepatan dalam pengkodingan Ketepatan dalam pemaparan hasil penyelesaian Ujian Akhir Semester 8. Media Pembelajaran : Media yang digunakan dalam proses pembelajaran berupa papan tulis / white board serta LCD Proyektor. 9. Bahan, Sumber Informasi dan Referensi : [1] Frieyadie. 2006. Panduan Pemrogramman C++. Penerbit Andi. Yogyakarta [2] Kadir, Abdul, 1995. Pemrogramman C++ Membahas Pemrogramman Berorientasi Objek. Penerbit Andi. Yogyakarta [3] Potts, Steve dan Clayton Walnum.1997.Pemrogramman Berorientasi Objek dengan Borland C++. Penerbit Andi. Yogyakarta Newman, W. M and Lamming, M. G, Interactive System Design, Addison Wesley, Cambrigde, Great Britain, 1995. [4] Kristanto, Andri, 2003. Algoritma dan Pemrograman dengan C++. Penerbit Graha Ilmu. yogyakarta [5] Munir, Rinaldi dan Lidya, Leoni 2006. Algoritma dan Pemograman. Penerbit Informatika Bandung, Bandung. 8 BENTUK TUGAS NAMA MATA KULIAH SEMESTER SKS DOSEN : Stuktur Data : II :3 : Nanik Susanti, S.Kom TUGAS 1 1.TUJUAN TUGAS: Membuat program aplikasi structure dengan array 2. URAIAN TUGAS: a. Obyek Garapan: Menganalisa dan membuat program aplikasi b. Yang harus dikerjakan dan batasan-batasan : Menguasai deklarasi sructure, menguasai koding program Membuat program aplikasi input dan output c. Metode/Cara Pengerjaan (acuan cara pengerjaan): Menganalisa kebutuhan Membuat program aplikasi d. Deskripsi Luaran tugas yang dihasilkan/dikerjakan: Laporan dan program aplikasi 3. KRITERIA PENILAIAN: a. Rancangan desain : 5% b. Alur Program : 5% c. Hasil Aplikasi : 10% 9 GRADING SCHEME COMPETENCE KRITERIA 1: KETEPATAN PENJELASAN DIMENSI Sangat Memuaskan (A) Ketepatan Algoritma dan kebutuhan dan deklarasi hasil program program benar, progam bisa dijalankan, menghasilkan output yang jelas Presentasi jelas dan dapat menjawab semua pertanyaan Memuaskan Batas (B) (C) Algoritma dan Algoritma deklarasi program benar program benar, progam bisa dijalankan, menghasilkan output yang jelas Kurang Memuaskan (D) Hanya menunjukkan konsep alur saja Di bawah standard (E) Tidak ada konsep SKOR 25% TUGAS 2 1.TUJUAN TUGAS: Menganalisis dan membuat program aplikasi menggunakan queue 2. URAIAN TUGAS: a. Obyek Garapan: Menganalisis dan membuat program aplikasi menggunakan queue b. Yang harus dikerjakan dan batasan-batasan : Menguasai deklarasi sructure, menguasai koding program Membuat program aplikasi input dan output 10 c. Metode/Cara Pengerjaan (acuan cara pengerjaan): Membuat program aplikasi menggunakan queue Membuat program aplikasi d. Deskripsi Luaran tugas yang dihasilkan/dikerjakan: Laporan dan Program aplikasi yang bisa didemokan di depan kelas 3. KRITERIA PENILAIAN: a. Algoritma : 10% b. Metode : 5% c. Program : 10% KRITERIA : KETEPATAN ANALISA DAN PROGRAM DIMENSI Sangat Memuaskan (A) KETEPATAN Algoritma dan ANALISA DAN deklarasi PROGRAM program benar, progam bisa dijalankan, menghasilkan output yang jelas Presentasi jelas dan dapat menjawab semua pertanyaan Memuaskan Batas (B) (C) Algoritma dan Algoritma deklarasi program benar program benar, progam bisa dijalankan, menghasilkan output yang jelas Kurang Memuaskan (D) Hanya menunjukkan konsep alur saja Di bawah standard (E) Tidak ada konsep SKOR 25% 11 TUGAS 3 1.TUJUAN TUGAS: Mempelajari metode dan algoritma sorting dan searching, membuat program aplikasi algoritma sorting dan searching 2. URAIAN TUGAS: a. Obyek Garapan: Mempelajari metode dan algoritma sorting dan searching, membuat program aplikasi algoritma sorting dan searching b. Yang harus dikerjakan dan batasan-batasan : Membuat algoritma sorting Membuat algoritma searching c. Metode/Cara Pengerjaan (acuan cara pengerjaan): Menganalisa algoritma sorting Menganalisa algoritma searching d. Deskripsi Luaran tugas yang dihasilkan/dikerjakan: Laporan tugas pembuatan algoritma sorting dan searching serta program aplikasi yang dapat didemokan didepan kelas 3. KRITERIA PENILAIAN: a. Algoritma : 10% b. Metode : 5% c. Program : 10% KRITERIA : KETEPATAN ANALISA DAN PROGRAM DIMENSI Sangat Memuaskan (A) Memuaskan Batas (B) (C) Kurang Memuaskan (D) Di bawah standard (E) SKOR 12 KETEPATAN Algoritma ANALISA DAN program benar, PROGRAM progam bisa dijalankan, menghasilkan output yang jelas Presentasi jelas dan dapat menjawab semua pertanyaan Algoritma Algoritma program benar, program benar progam bisa dijalankan, menghasilkan output yang jelas Hanya menunjukkan konsep alur saja Tidak ada konsep 25% Lembar kerja 1 : Petunjuk Tugas : 1. Paper dijilid buku dengan format A4 2. Cover merah 3. Program dikumpulkan dalam bentuk CD 4. Siapkan Slide PowerPoinT, maksimal 15 slide. Lembar kerja 2 : LAMPIRAN – LAMPIRAN : 1. Lecture Notes : power point 2. Lembar kerja 3. Selescted Reading material (daftar alamat web;buku;print out artikel;fotocopy) 13 Contoh Slide 14