UNIVERSITAS GADJAH M ADA
FAKULTAS TEKNIK/JURUSAN TEKNIK ELEKTRO DAN TEKNOLOGI INFORMASI
Jln. Grafika No. 2 Yogyakarta, Kampus UGM Yogyakarta 55281 Telp. (0274) 552305, 902202 Fax. (0274) 552305
Rencana Program dan Kegiatan Pembelajaran Semester
(RPKPS)
Pemrograman Berorientasi Objek (S1)
Semester I / 3 SKS/ TIF 201
Oleh Ridi Ferdiana
2016
2
UNIVERSITAS GADJAH MADA FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO DAN TEKNOLOGI INFORMASI
Rancangan Program Kegiatan Pembelajaran Semester (RPKPS)
1. Nama Mata Kuliah : Pemrograman Berorientasi Objek 2. Kode/SKS : TIF 201 / 3 SKS
3. Prasyarat : -
4. Status Matakuliah : Wajib Prodi Teknologi Informasi
5. Deskripsi singkat matakuliah
Mata kuliah ini memfokuskan kembali teknik rekayasa pengembangan perangkat lunak yang terlah diajakan pada mata kuliah pemrograman dasar melalui pendekatan berbasis objek. Mahasiswa akan diajak untuk berpikir dengan orientasi objek, bermigrasi dari metodologi prosedural ke objek. Mata kuliah ini memfokuskan berbagai pilar-pilar orientasi objek dan penerapannya di dunia industri perangkat lunak.
6. Tujuan pembelajaran
Sesuai dengan peta kurikulum program studi teknologi informasi, kompetensi yang didukung oleh matakuliah pengembangan aplikasi permainan adalah sebagai berikut.
Tujuan utama dari mata kuliah ini adalah mendorong kemampuan teknis dan analisis mahasiswa dalam menggunakan konsep-konsep objek dan mampu mengimplementasikannya dalam kode program. Hasil akhir dari mata kuliah ini adalah memotivasi mahasiswa untuk membuat perangkat lunak sendiri secara independen dan memiliki kualitas yang mencukupi.
7. Learning outcomes
1. Mahasiswa dapat mempelajari elemen-elemen penting dari sebuah kode dan faedah OO seperti natural thinking, reliable, maintenable, dsb.
2. Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi pemograman dalam konteks OO (Object Oriented).
3. Mahasiswa dapat menggunakan berbagai perangkat bantu pengembangan dan mengimplementasikan konsep OO dalam pengembangan perangkat lunak.
4. Mahasiswa dapat menganalisis, merancang, dan mengembangkan perangkat lunak dengan bahasa pemograman OO termasuk di dalamnya konsep OOAD (Object Oriented Analysis and Design)
5. Mahasiswa dapat memilih dan mengaplikasi pola-pola desain kode berorientasi OO yang
terkemas dalam Design patterns.
3 8. Materi Pembelajaran
Pertemuan ke- Topik (Pokok Bahasan)
1. Ikhtisar Pemogramaan Berorientasi Objek
Bahasan ini memperkenalkan mengenai konteks dan konsep OO. Perbandingannya dengan pemograman prosedural
2. Pilar-Pilar OO
Bahasan ini memberikan ikhtisar mengenai konsep pilar-pilar OO sepertt abstraksi, enkapsulasi dan polimorfisme
3. Introduksi Bahasa Pemograman
Memperkenalkan bahasa pemograman berbasis OO seperti Java, C#, dan VB.
Mahasiswa akan mempelajari elemen-elemen penting dari sebuah bahasa
pemograman. Latihan dan gaya pemrograman yang baik juga akan diperkenalkan. Dan akhirnya, mahasiswa juga akan mempelajari bagaimana cara menggunakan IDE untuk mengedit, mengkompilasi, mengeksekusi, dan mendebug sebuah program.
4. Class dan Object
Bagian ini menjelaskan komponen class, pembuatan objek, dan berbagai jenis istilah dalam OO seperti class, object, dan berbagai jenis class yang ada.
5. Metode dan Parameter
Tujuan dari modul ini memfokuskan bagaimana menggunakan metode dan fungsi dalam bahasa pemograman termasuk didalamnya memperkenalkan jenis-jenis metode dan tipe-tipe parameter dalam pemograman OO
6. Object Oriented dengan UML
Tujuan dari modul ini memperkenalkan salah satu komponen UML yakni class diagram yang berperan besar dalam melakukan desain dan visualisasi OO.
7. Pewarisan
Modul ini menyediakan rincian mengenai bagaimana pewarisan kelas bekerja dalam C# dan menjelaskan bagaimana cara menurunkan kelas-kelas baru C# dari kelas- kelas yang ada. Modul ini menjelaskan bagaimana cara menggunakan tipe-tipe method virtual, override, dan new. Modul ini juga menjelaskan kelas sealed, dan kemudian menjelaskan konsep interface. Mahasiswa akan mempelajari bagaimana cara mendeklarasikan sebuah interface dan bagaimana cara mengimplementasikan dua tipe dari method interface. Sebagai penutup, modul ini memperkenalkan kelas abstrak dan membahas bagaimana cara mengimplementasikan kelas dan method abstrak dalam sebuah hirarki kelas.
8. Ujian Tengah Semester
9. Operator, Delegate, Properties, Indexer, dan Event Handling
4
Modul ini mencakup berbagai area fungsionalitas yang sangat berguna yang dapat diimplementasikan didalam sebuah kelas; namely, operators, delegates, dan events.
Setelah itu modul ini juga menjelaskan properties dan indexers, seperti penggunaannya dalam interfaces atau penggunaannya dengan modifier virtual, abstract, override, dan kata kunci new
10. Data Structure dan Akses Data Berbasis Object
Memperkenalkan model data struktur yang meliputi array, koleksi, dan juga berbagai pustaka-pustaka yang terkait dengan struktur data berbasis Objek
11. C# Creational Patterns
Menjelaskan berbagai pola pengkodean C# berbasis Design Patterns dan SOLID 12. C# Structural Design Patterns
Menjelaskan berbagai pola pengkodean C# berbasis Design Patterns dan SOLID 13. C# Behavioral Design Patterns
Menjelaskan berbagai pola pengkodean C# berbasis Design Patterns dan SOLID 14. Object Oriented Analysis and Design (OOAD)
Modul ini secara intens melakukan studi kasus untuk pengembangan dengan melakukan analisis berbasis OOAD
15. Diskusi Aplikasi
Pada modul ini dilakukan disksusi interaktif mengenai aplikasi-aplikasi Berorientasi OO yang diimplementasikan di industri serta mendemokan karya-karya mahasiswa 16
Ujian Akhir Semester9. Evaluasi yang direncanakan
5
Untuk mengetahui hasil pembelajaran, akan dilakukan beberapa evaluasi sebagai berikut.
a. Kuis
b. Pemberian tugas c. Presentasi
d. Ujian Tengah Semester e. Ujian Akhir Semester Kriteria asesmen
• Asesmen formatif dilakukan melalui pemberian kuis dan tugas, pengolahan secara PAP.
• Asesmen sumatif dilakukan melalui Ujian Tengah Semester dan Ujian Akhir Semester.
Ujian tengah semester akan dilakukan dengan mode buku tertutup dan ujian akhir semester akan dikerjakan dengan mode buku terbuka, pengolahan secara PAN.
• Nilai total akan diperoleh dari gabungan tiga komponen, yaitu nilai tugas (termasuk kuis dan presentasi), UTS, dan UAS.
Komponen Assessment Bobot (%) Tes Sumatif Ujian Akhir Semester (UAS) 25 Tes Sumatif Ujian Tengah Semester (UTS) 25
Tugas Proyek Kelompok 30
Kuis 10
Diskusi online 10
Total bobot 100
Pengolahan hasil penilaian berdasarkan Penilaian Acuan Patokan (PAP):
Nilai Total Setelah Dibobotkan Nilai
Nilai 90 A
90 Nilai 80 A-
80 Nilai 75 B+
75 Nilai 70 B
70 Nilai 65 B-
65 Nilai 60 B/C
60 > Nilai 50 C
50 Nilai 40 D
Nilai < 40 E
6 10. Bahan, sumber informasi, dan referensi
[1] D. Clark, Beginning C# Object-Oriented Programming, Second Edition. APress, 2013.
[2] B. M. Harwani, Learning Object-Oriented Programming in C# 5.0. Course Technology PTR, 2014.
[3] G. M. Hall, Adaptive Code via C#: Agile coding with design patterns and SOLID principles.
Microsoft Press, 2014.
[4] R. Ferdiana, Membangun Aplikasi Smart Client Dengan Visual C# Dan Visual Web Developer Express. Penerbit Andi, 2007.
[5] J. Bishop, C# 3.0 Design Patterns. O’Reilly Media, Inc., 2007.
11. Rencana Kegiatan Pembelajaran Mingguan (RKPM)
7
Rencana Kegiatan Pembelajaran Mingguan (RKPM)
Pertemuan ke
Tujuan Ajar/
Keluaran/ Indikator
Topik (pokok, sub pokok bahasan, alokasi waktu)
Media Ajar1
Metode Evaluasi dan
Penilaian2
Metode Ajar (STAR)3
Aktivitas
Mahasiswa Aktivitas Dosen Sumber Ajar
Teks Presentasi Animasi Audio/Video Soal-tugas Web4
1
Mahasiswa dapat mempelajari elemen- elemen penting dari sebuah kode dan faedah OO seperti natural thinking, reliable, maintenable, dsb.
Ikhtisar Pemogramaan
Berorientasi Objek
V V V Mahasiswa berdiskusi Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
Memberikan tugas
[1]
1
Masing-masing media ajar disertakan dalam bentuk handout setiap minggu/pertemuan.
2
Evaluasi mahasiswa dapat berupa: Kuis, Tugas, Self-Test, Tes formatif, Tes sumatif. Evaluasi mahasiswa ditujukan untuk mengukur ketercapaian tujuan (pada Kolom 2).
3
UGM menggunakan sistem pembelajaran STAR (Student Teacher Aesthetic Role-Sharing): kombinasi optimal antara SCL (Student Centered Learning) danTCL (Teacher Centered Learning).
4
Tautan di internet disajikan dalam kolom terakhir (Sumber Ajar).Untuk materi online yang dikembangkan sendiri gunakan LMS
8
2
Mahasiswa dapat mempelajari elemen- elemen penting dari sebuah kode dan faedah OO seperti natural thinking, reliable, maintenable, dsb.
Pilar-Pilar OO
V V V V
Menyelesaikan Kursus Digital
Literacy
Mahasiswa berdiskusi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
Memberikan tugas
[1]
3
Mahasiswa dapat mempelajari elemen- elemen penting dari sebuah kode dan faedah OO seperti natural thinking, reliable, maintenable, dsb.
Introduksi Bahasa
Pemograman
V V V Mahasiswa berdiskusi Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[2]
9
4
Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi
pemograman dalam konteks OO (Object Oriented).
Class dan Object
V V V Mahasiswaberdiskusi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[2]
5
Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi
pemograman dalam konteks OO (Object Oriented).
Metode dan Parameter
V V V Mahasiswaberdiskusi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[2]
10
5
Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi
pemograman dalam konteks OO (Object Oriented).
Object Oriented dengan
UML
V V VMahasiswa berdiskusi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[1]
7
Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi
pemograman dalam konteks OO (Object Oriented).
Pewarisan
V V V VPengumpulan ide desain interaksi dan
antarmuka sistem.
Mahasiswa berdiskusi
dan membentuk
kelompok
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
Memberikan tugas
[2]
11
8
Evaluasi pemahaman mahasiswa secara
komprehensif terhadap materi (seluruh bahan kuliah
sejak dari awal)
Ujian Tengah
Semester (UTS) V
Tes sumatif -
Mahasiswa mengerjakan
UTS secara individu di
kelas
Menyiapkan UTS
Seluruh bahan kuliah sejak
dari awal
9
Mahasiswa diharapkan memiliki kemampuan analisis dan merekayasa suatu solusi
pemograman dalam konteks OO (Object Oriented).
Operator, Delegate, Properties, Indexer, dan
Event Handling
V V V
Mahasiswa berdiskusi
dan membentuk
kelompok
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[3]
12
10
Mahasiswa dapat menggunakan berbagai perangkat bantu pengembangan dan
mengimplementasikan konsep OO dalam pengembangan perangkat lunak.
Data Structure dan Akses
Data Berbasis Object
V V V .Mahasiswa berdiskusi
secara kelompok
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[4]
11
Mahasiswa dapat memilih dan mengaplikasi pola- pola desain kode berorientasi OO yang terkemas dalam Design patterns.
C# Creational Patterns
V V V .Mahasiswa berdiskusi
secara kelompok
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[5]
13
12
Mahasiswa dapat memilih dan mengaplikasi pola- pola desain kode berorientasi OO yang terkemas dalam Design patterns.
C# Structural Design
Patterns
V V V .Mahasiswa berdiskusi
secara kelompok
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Mahasiswa berkelompo k dan berdiskusi
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[5]
13
Mahasiswa dapat memilih dan mengaplikasi pola- pola desain kode berorientasi OO yang terkemas dalam Design patterns.
C# Behavioral Design
Patterns
V V V .Mahasiswa berdiskusi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[5]
14
14
Mahasiswa dapat menganalisis, merancang, dan mengembangkan perangkat lunak dengan bahasa pemograman OO termasuk di dalamnya konsep OOAD (Object Oriented Analysis and Design)
Object Oriented Analysis
and Design (OOAD)
V V V . Mahasiswa berdiskusi Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Menjelaskan materi
Memberikan materi untuk diskusi
Memandu diskusi dan menjelaskan di depan kelas
[1]
15
Mahasiswa dapat menggunakan berbagai perangkat bantu pengembangan dan mengimplementasikan konsep OO dalam pengembangan perangkat lunak.
Diskusi Aplikasi
V V V V .Mahasiswa melakukan presentasi
Membaca dan mempelajar i diktat kuliah, bahan bacaan wajib dan penunjang
Unduh bahan ajar pendukung setelah kuliah melalui web e- learning
Memandu diskusi dan menjelaskan di depan kelas
[4]
16
Evaluasi pemahaman mahasiswa secara
komprehensif terhadap materi (seluruh bahan kuliah
setelah UTS)
Ujian Akhir Semester
(UAS) V