Anda di halaman 1dari 16

RENCANA PEMBELAJARAN SEMESTER

(RPS)

CSG2H3
PEMROGRAMAN BERORIENTASI OBJEK

Disusun oleh:
Tim Dosen Pemrograman Berorientasi Objek

PROGRAM STUDI S1 TEKNIK INFORMATIKA


FAKULTAS INFORMATIKA

TELKOM UNIVERSITY
LEMBAR PENGESAHAN

Rencana Pembelajaran Semester (RPS) ini telah disahkan untuk mata kuliah sbb:

Kode Mata Kuliah : CSG2H3

Nama Mata Kuliah : Pemrograman Berorientasi Objek

Bandung, 2015
Mengetahui Menyetujui
Kaprodi S1 Teknik Informatika Ketua KK <Nama KK>

M. Arif Bijaksana, PhD <Nama Ketua KK>

ii
DAFTAR ISI

LEMBAR PENGESAHAN..............................................................................................................................ii

DAFTAR ISI ................................................................................................................................................ iii

A. PROFIL MATA KULIAH....................................................................................................................... 1

B. RENCANA PEMBELAJARAN SEMESTER (RPS) ................................................................................... 2

C. RANCANGAN INTERAKSI DOSEN–MAHASISWA ............................................................................... 9

D. RANCANGAN TUGAS ...................................................................................................................... 10

E. PENILAIAN DENGAN RUBRIK .......................................................................................................... 10

F. PENENTUAN NILAI AKHIR MATA KULIAH ....................................................................................... 13

iii
A. PROFIL MATA KULIAH

IDENTITAS MATA KULIAH


Nama Mata Kuliah : Pemrograman Berorientasi Objek
Kode Mata Kuliah : CSG2H3
SKS : 3
Jenis : Wajib
Jam pelaksanaan : Tatap muka di kelas = 3 jam per minggu
Tutorial / responsi =1 jam per minggu
Semester / Tingkat : 4 (empat) / 2 (dua)
Pre-requisite : Algoritma & Pemrograman, Struktur Data
Co-requisite :
Bidang Kajian :

DESKRIPSI SINGKAT MATA KULIAH


Mata kuliah ini mempelajari konsep-konsep dasar pada object oriented programming (OOP), seperti
class – object, encapsulation, inheritance, polymorphism, interface, abstract class. Secara spesifik
konsep-konsep tersebut akan dipelajari dengan bantuan bahasa pemrograman Java. Selain konsep-
konsep dasar OOP, pada mata kuliah ini juga akan dipelajari konsep exception handling,
multithreading, object persistence, berbagai Collection, Java API, database connection, GUI
(Graphical User Interface), serta deployment.

DAFTAR PUSTAKA
1. Head First Java, 2nd edition, 2008, Bert Bates and Kathy Sierra, O'Reilly
2. Java™ How to Program, 9th, 2012, Prentice Hall
3. Head First Object Oriented Design and Analysis, 1st edition, 2006, Brett D. McLaughlin, Gary
Pollice, David West, O'Reilly Media

1
B. RENCANA PEMBELAJARAN SEMESTER (RPS)
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
1  Mahasiswa mengetahui sejarah Course Introduction  Ceramah -
OOP.  OOP history
 Mahasiswa memahami perlunya  compare procedural and
OOP untuk menyelesaikan oop by giving a simple case
permasalahan, yang kurang tepat study
jika procedural oriented diterapkan.  Introduction to java
 Mahasiswa mengetahui bahasa
pemrograman Java yang akan
digunakan untuk mempelajari OOP.
2,3  Mahasiswa memahami perbedaan Classes and object  Ceramah -
antara kelas dan object.  The difference between  Demo
 Mahasiswa mampu membuat kelas class and object, by giving
(sederhana) dan object dalam some examples
bahasa Java.  making a simple first object
 Mahasiswa memahami penggunaan (Fokus: first programming
serta dapat membuat program with java)
sederhana menggunakan tipe
primitif, array, keyword, reference  Primitive and reference:
variable, deklarasi dan assignment Type, keywords, reference
objek, variable, object declaration
 Mahasiswa memahami dan & assignment, objects in
mengimplementasikan dalam garbage collector, arrays
prograam tentang siklus objek
(penggunaan constructor dan  Object cycle: life and death
garbage collector)  Constructor & Garbage

2
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
collector

4  Mahasiswa memahami makna dan Encapsulation  Ceramah


perlunya enkapsulasi.  Why do we need  Demo
 Mahasiswa memahami dan dapat encapsulation?  practice
mengimplementasikan enkapsulasi  Object state
dalam suatu program sederhana.  Instance variable vs local
variables
 Methods argument &
return type
 Pass by value
 Getters and setters
 Sample class diagram
representing encapsulation

5,6 Mahasiswa memahami diagram kelas Class relationship (class  Ceramah Ketepatan dalam 15%
beserta makna simbol relasi yang terdap diagram)  Demo mengimplementasikan
at pada diagram kelas.  association, aggregation,  practice class diagram ke dalam
composition kode program
 Example: simple class
diagram & code in java
related

*) Hanya mengenalkan saja,


karena nantinya satu
persatu relasi yg ada pada
diagram kelas akan
dibutuhkan saat

3
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
menjelaskan materi
inheritance, polimorfisme,
kelas abstrak, interface
7,8  Mahasiswa memahami makna dan Inheritance & polymorphism  Ceramah
perlunya inheritance dan  Why do we need  Demo
4olymorphism. inheritance &  Practice
 Mahasiswa memahami dan dapat polymorphism?
mengimplementasikan inheritance  How inheritance promotes
dan 4olymorphism dalam suatu software reusability
program sederhana.  Designing for inheritance
 Superclass and subclass
relationship & access
modifier
 Method Overriding
 Polymorphism: in object
declaration & assignment,
in method argument &
return type
 Method overloading
 Constructor overloading
(revisited) & superclass
constructor
 Calls to super(), this ()
 Sample class diagram
representing inheritance &
polymorphism

9,10 Mahasiswa memahami perlunya dan Interface & abstract classes  Ceramah Ketepatan dalam 15%

4
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
mengimplementasikan interface dan  Why do we need abstract  Demo mengimplementasikan
abstract classess dalam suatu program classes? Abstract vs  Practice class diagram ke dalam
sederhana. concrete class kode program
 Abstract classess and
methods
 Overloading and overriding
(revisited)
 Casting
 Why do we need interface?
 Interface: making & using
 Sample class diagram
representing interface &
abstract class

11 Mahasiswa memahami perlunya dan Static & final method &  Ceramah
mengimplementasikan static & final variables  Demo
variabel dan method dalam suatu  Static method
program sederhana.  Static variable
 Constants (static final
variable)
 Final method & class
 Wrapper classes &
autoboxing
 Static imports
 Example: Math class
 Instance variable vs static
variable

5
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
UJIAN TENGAH SEMESTER (UTS) 30%
12  Mahasiswa mampu memahami dan Exception handling  Ceramah
menggunakan Exception Handling.  Exception as an object  Demo
 Mahasiswa dapat membuat kelas  try-catch
Exception sendiri.  throws
 Try-catch- finally
 Multiple exception
 Polymorphism in exception
 Making your own exception

13 Mahasiswa mampu memahami dan Object Persistence  Ceramah Ketepatan 10%


mengimplementasikan Persistensi Objek  Saving object state  Demo penggambaran dari:
dalam file.  Writing a serialized object  Practice - Flowchart aplikasi
to a file - Desain class
 Object serialization diagram
(serializable interface) - Desain ER diagram
 Deserializing an object

14 Mahasiswa mampu memahami dan Multithreading  Ceramah


mengimplementasikan konsep  Launching new thread  Demo
sinkronisasi menggunakan thread  Runnable interface  practice
 Thread' state
 Runnable - running loop
 Thread scheduler
 Making and starting two
thread
 Locking object
 Synchronized method using

6
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
a lock
 deadlock

15 Mahasiswa mampu menggunakan Java Using java library (java API)  Ceramah
API untuk membantu membuat aplikasi.  How to use it  Demo
 Simple example
16 Mahasiswa mampu menggunakan Collections  Ceramah
struktur data yang telah terdefinisi  Interface Collection and  Demo
dalam Collections untuk membuat class Collections  Practice
aplikasi  Type wrapper classess for
primitive types
 Autoboxing and auto-
unboxing
 List: ArrayList - Iterator,
LinkedList
 Stack
 Sets
 Maps

17 Mahasiswa mampu membuat koneksi Making connection with  Ceramah Ketepatan dalam 10%
dari aplikasi berbasis java ke DBMS database  Demo mengimplementasikan:
 JDBC  Practice - Desain class
 Oracle/mysql (?) diagram ke dalam
kode program
- Fungsionalitas
utama dari aplikasi
18-20 Mahasiswa mampu membuat aplikasi GUI & SWING  Ceramah
berbasis GUI/Swing.  User event  Demo

7
Bentuk/
Pertemuan Metode/ Kriteria Penilaian Bobot
Kemampuan Akhir yang Diharapkan Bahan Kajian (Materi Ajar)
ke- Strategi (Indikator) Nilai
Pembelajaran
 Listener interface  Practice
 Action event
 Inner class
 Swing component

21 Mahasiswa mampu mengorganisasikan Deployment  Ceramah Hasil akhir proyek 20%


dan men-deploy aplikasi  Separate source code and  Demo aplikasi dapat
class files memenuhi kriteria:
 Making an executable JAR - Sesuai antara
 Running an executable JAR perancangan dan
 Package implementasi
kode program
- Tidak ada
bug/error pada
aplikasi
- Semua
fungsionalitas
aplikasi berjalan
UAS

8
C. RANCANGAN INTERAKSI DOSEN–MAHASISWA
Kemampuan Akhir yang Diharapkan Mahasiswa mampu mengidentifikasi dan
menjelaskan kembali materi yang diberikan
Nama Kajian 1. Course Introduction
2. Classes and object
3. Encapsulation
4. Class relationship (class diagram)
5. Inheritance & polymorphism
6. Interface & abstract classes
7. Static & final method & variables
8. Exception handling
9. Object Persistence
10. Multithreading
11. Using java library (java API)
12. Collections
13. Making connection with database
14. GUI & SWING
15. Deployment

Nama Strategi Ceramah


Minggu Penggunaan Strategi (Metode) 1-14
Deskripsi Singkat Strategi (Metode) Dosen mengulas materi sebelumnya,
pembelajaran menjelaskan tujuan, hasil pembelajaran,
materi, dan kesimpulan, serta mendorong
mahasiswa untuk aktif bertanya dan
mengemukakan pendapat terkait materi yang
disampaikan.
RANCANGAN INTERAKSI DOSEN–MAHASISWA
Aktivitas Dosen Aktivitas Mahasiswa
Mengulas materi yang telah diberikan Mengungkapkan apa yang telah dipahami dari
pada pertemuan sebelumnya (untuk materi yang telah disampaikan pada
pertemuan 2 dst) pertemuan sebelumnya.

Menjelaskan tentang tujuan Menyimak penjelasan dosen.


pembelajaran dari kegiatan pembelajaran
Mengarahkan mahasiswa untuk Menyiapkan diri menerima materi yang akan
melibatkan diri dan aktif dalam kegiatan disampaikan.
pembelajaran

Membahas materi Menyimak dan mencatat hal-hal penting dari


materi yang disampaikan oleh dosen.

Bertanya apabila ada materi yang kurang jelas.

Mengajukan sejumlah pertanyaan Menjawab pertanyaan yang diberikan.


terkait materi yang telah diberikan

Menyimpulkan materi Menyimak kesimpulan.

9
D. RANCANGAN TUGAS
Kode mata Kuliah CSG2H3
Nama Mata Kuliah Pemrograman Berorientasi Obyek
Kemampuan Akhir yang Diharapkan Mahasiswa mampu untuk mengimplementasikan konsep
yang disampaikan di kelas ke dalam kode program
Minggu/Pertemuan ke 3&5
Tugas ke 1&2
1. Tujuan tugas:
Mahasiswa mampu mengimplementasikan konsep yang disampaikan di kelas ke dalam
kode program

2. Uraian Tugas:
a. Obyek garapan: Desain class diagram
b. Yang harus dikerjakan dan batasan-batasan:
Mengimplementasikan class diagram yang diberikan
c. Metode/ cara pengerjaan, acuan yang digunakan:
Membuat kode program berdasarkan class diagram yang diberikan. Referensi
pengerjaan:
a. Head First Java, 2nd edition, 2008, Bert Bates and Kathy Sierra, O'Reilly
b. Java™ How to Program, 9th, 2012, Prentice Hall
c. Head First Object Oriented Design and Analysis, 1st edition, 2006, Brett D.
McLaughlin, Gary Pollice, David West, O'Reilly Media
d. Deskripsi luaran tugas yang dihasilkan/ dikerjakan:
Aplikasi sederhana
3. Kriteria penilaian:
Kesesuaian implementasi program dengan class diagram
Semua fungsionalitas yang disyaratkan dapat berjalan
Alur program sesuai dengan persyaratan

Kode mata Kuliah CSG2H3


Nama Mata Kuliah Pemrograman Berorientasi Obyek
Kemampuan Akhir yang Diharapkan Mahasiswa mampu membuat aplikasi menggunakan
konsep pemrograman berorientasi obyek
Minggu/Pertemuan ke 7-14
Tugas ke 3
4. Tujuan tugas:
a. Mahasiswa mampu merancang aplikasi menggunakan konsep berorientasi obyek
b. Mahasiswa mampu mengimplementasikan rancangan class diagram ke dalam kode
program
c. Mahasiswa mampu mengimplementasikan semua fungsionalitas berdasarkan

10
persyaratan yang diharapkan

5. Uraian Tugas:
e. Obyek garapan: Proyek aplikasi
f. Yang harus dikerjakan dan batasan-batasan:
 Merancang class diagram, flowchart aplikasi dan ER diagram (basis data)
 Mengimplementasikan class diagram ke dalam kode program
 Mengimplementasikan flowchart ke dalam fungsionalitas aplikasi
 Membuat aplikasi dengan antarmuka tampilan GUI (Graphical User Interface)
g. Metode/ cara pengerjaan, acuan yang digunakan:
Merancang aplikasi dan membangun kode program aplikasi berdasarkan class diagram
yang dirancang. Referensi pengerjaan:
d. Head First Java, 2nd edition, 2008, Bert Bates and Kathy Sierra, O'Reilly
e. Java™ How to Program, 9th, 2012, Prentice Hall
f. Head First Object Oriented Design and Analysis, 1st edition, 2006, Brett D.
McLaughlin, Gary Pollice, David West, O'Reilly Media
h. Deskripsi luaran tugas yang dihasilkan/ dikerjakan:
- Dokumen laporan akhir aplikasi yang berisi rancangan seluruh aplikasi dan
dokumentasi aplikasi
- Kode program dan aplikasi akhir
6. Kriteria penilaian:
 Penilaian tugas dibagi menjadi 3 tahap, dengan detail sebagai berikut.
1. Tahap 1
a. Bisnis proses yang menggambarkan kerja aplikasi secara umum
b. Perancangan kelas (termasuk interface dan abstract class jika ada) lengkap dengan
atribut dan method sesuai dengan spesifikasi yang diberikan
c. Perancangan relasi antar kelas
d. Perancangan relasi tabel di database
2. Tahap 2
a. Implementasi dari rancangan kelas dan basis data yang sudah dibuat ke dalam
bahasa pemrograman sesuai dengan kaidah-kaidah PBO
b. Program sudah mampu menjalankan fungsionalitas utama sesuai spesifikasi yang
diberikan
c. Program sudah mampu melakukan koneksi ke data base dan melakukan operasi
dasar, seperti select, insert, update, dan delete
3. Tahap 3:
 Fokus pekerjaan: finalisasi program menggunakan GUI dan siap digunakan
 Persentase penilaian: 40%
 Waktu penilaian: 3 minggu setelah tahap 2
 Parameter penilaian:
a. Laporan akhir dari tahap 1 sampai 3
b. Perancangan skenario pengujian program / aplikasi
c. Kebenaran implementasi program dengan menggunakan kaidah-kaidah PBO sesuai
dengan spesifikasi yang diberikan
d. Kesesuaian alur penggunaan program dengan bisnis proses yang telah dibangun
e. Bug / error pada program disesuaikan dengan rancangan skenario pengujian
program (semakin sedikit semakin bagus, dan sebaliknya)

11
f. Bonus (dengan tambahan sesuai kebijakan dosen masing-masing):
- Kualitas tampilan GUI dengan berdasarkan kaidah IMK / HCI
- Menggunakan konsep MVC / design pattern yang tidak diajarkan di kelas

E. PENILAIAN DENGAN RUBRIK


Jenjang
Angka (Skor) Deskripsi perilaku (Indikator)
(Grade)
- Mampu merancang aplikasi berdasarkan kasus yang
diberikan
- Mampu mengimplementasikan rancangan aplikasi ke
dalam kode program
A 80 < NSM - Mampu membangun aplikasi lengkap dengan basis
data dan antarmuka GUI menggunakan pendekatan
berorientasi obyek
- Mampu menjelaskan konsep pemrograman
berorientasi obyek
- Mampu merancang aplikasi berdasarkan kasus yang
diberikan
- Mampu mengimplementasikan rancangan aplikasi ke
dalam kode program
AB 70 < NSM ≤ 80 - Mampu membangun aplikasi lengkap dengan basis
data dan antarmuka GUI menggunakan pendekatan
berorientasi obyek
- Mampu menjelaskan konsep pemrograman
berorientasi obyek
- Mampu merancang aplikasi berdasarkan kasus yang
diberikan
- Mampu mengimplementasikan rancangan aplikasi ke
65 < NSM ≤ 70 dalam kode program
B
- Mampu membangun aplikasi lengkap dengan basis
data menggunakan pendekatan berorientasi obyek
- Mampu menjelaskan konsep pemrograman
berorientasi obyek
- Mampu merancang aplikasi berdasarkan kasus yang
diberikan
60 < NSM ≤ 65 - Mampu mengimplementasikan rancangan aplikasi ke
BC
dalam kode program
- Mampu membangun aplikasi lengkap dengan basis
data menggunakan pendekatan berorientasi obyek

12
- Mampu menjelaskan konsep pemrograman
berorientasi obyek
- Mampu merancang aplikasi berdasarkan kasus yang
diberikan
50 < NSM ≤ 60 - Mampu mengimplementasikan rancangan aplikasi ke
C
dalam kode program
- Mampu menjelaskan konsep pemrograman
berorientasi obyek

40 < NSM ≤ 50 - Mampu menjelaskan konsep pemrograman


D
berorientasi obyek
E NSM ≤ 40 -

F. PERSENTASE KOMPONEN PENILAIAN


1. Kuis : 10%
2. Tugas Besar : 20%
3. UTS : 30%
4. UAS : 40%

G. PENENTUAN NILAI AKHIR MATA KULIAH


Nilai Skor Matakuliah (NSM) Nilai Mata Kuliah (NMK)
80 < NSM A
70 < NSM ≤ 80 AB
65 < NSM ≤ 70 B
60 < NSM ≤ 65 BC
50 < NSM ≤ 60 C
40 < NSM ≤ 50 D
NSM ≤ 40 E

13

Anda mungkin juga menyukai