UNIVERSITAS AMIKOM YOGYAKARTA
FAKULTAS ILMU KOMPUTER
PROGRAM STUDI INFORMATIKA

RPS-S1IF-ST021
RENCANA PEMBELAJARAN SEMESTER
MATA KULIAH (MK) KODE Rumpun MK BOBOT (sks) SEMESTER Tanggal Penyusunan
PEMROGRAMAN ST021 Software Development Fundamentals 0 2 2 13 Nov 2025
Pengesahan Dosen Pengembang RPS Koordinator RMK Ka PRODI

Bayu Setiaji, M.Kom

Ajie Kusumawardhana, S.Kom, M.Eng

ELI PUJASTUTI, M. KOM.
Capaian Pembelajaran CPL-PRODI yang dibebankan pada MK
CPLP03 Mampu berpikir logis, kritis, kreatif, dan sistematis untuk menyelesaikan masalah berbasis teknologi informasi secara mandiri dan berkelanjutan.
CPLP05 Mampu mengembangkan dan mengintegrasikan solusi teknologi informasi menggunakan prinsip rekayasa perangkat lunak, keamanan, dan inovasi digital.
CPLP08 Menguasai prinsip dasar algoritma, struktur data, pemrograman, serta konsep multimedia, jaringan komputer, basis data, dan kecerdasan buatan.
Capaian Pembelajaran Mata Kuliah (CPMK)
CPMK051 Menerapkan prinsip-prinsip rekayasa perangkat lunak dan keamanan dalam mengimplementasikan modul atau komponen solusi teknologi informasi.
CPMK081 Menjelaskan prinsip-prinsip dasar algoritma, struktur data, dan pemrograman serta menerapkannya untuk menyelesaikan permasalahan komputasi sederhana.
Kemampuan akhir tiap tahapan belajar (Sub-CPMK)
sub.cpmk.ST021.CPMK051.1 Mahasiswa mampu membuat dan menjalankan program C# sederhana menggunakan IDE atau CLI.
sub.cpmk.ST021.CPMK051.2 Mahasiswa mampu mendesain dan mengimplementasikan antarmuka (interface) dalam C#.
sub.cpmk.ST021.CPMK051.3 Mahasiswa mampu menangani kesalahan program secara terstruktur menggunakan exception handling.
sub.cpmk.ST021.CPMK051.4 Mahasiswa mampu menggunakan koleksi generik untuk menyimpan dan memanipulasi objek.
sub.cpmk.ST021.CPMK051.5 Mahasiswa mampu mengimplementasikan komunikasi antar-objek menggunakan delegate dan event.
sub.cpmk.ST021.CPMK051.6 Mahasiswa mampu merancang dan mengimplementasikan struktur class dalam proyek terpadu berbasis OOP.
sub.cpmk.ST021.CPMK051.7 Mahasiswa mampu menyelesaikan, menguji, dan mempresentasikan aplikasi OOP secara utuh.
sub.cpmk.ST021.CPMK081.1 Mahasiswa mampu mengimplementasikan struktur kontrol alur dalam program C#.
sub.cpmk.ST021.CPMK081.2 Mahasiswa mampu mendefinisikan class dan membuat objek dari class tersebut.
sub.cpmk.ST021.CPMK081.3 Mahasiswa mampu menerapkan enkapsulasi menggunakan access modifier dan properties.
sub.cpmk.ST021.CPMK081.4 Mahasiswa mampu membuat dan menggunakan constructor untuk inisialisasi objek.
sub.cpmk.ST021.CPMK081.5 Mahasiswa mampu membuat class abstrak dan memahami peran abstraksi dalam desain OOP.
sub.cpmk.ST021.CPMK081.6 Mahasiswa mampu mengimplementasikan pewarisan (inheritance) untuk memperluas fungsionalitas class.
sub.cpmk.ST021.CPMK081.7 Mahasiswa mampu menerapkan polimorfisme melalui method overriding dan late binding.
Korelasi CPMK terhadap Sub-CPMK
CPMK051 sub.cpmk.ST021.CPMK051.1
sub.cpmk.ST021.CPMK051.2
sub.cpmk.ST021.CPMK051.3
sub.cpmk.ST021.CPMK051.4
sub.cpmk.ST021.CPMK051.5
sub.cpmk.ST021.CPMK051.6
sub.cpmk.ST021.CPMK051.7
CPMK081 sub.cpmk.ST021.CPMK081.1
sub.cpmk.ST021.CPMK081.2
sub.cpmk.ST021.CPMK081.3
sub.cpmk.ST021.CPMK081.4
sub.cpmk.ST021.CPMK081.5
sub.cpmk.ST021.CPMK081.6
sub.cpmk.ST021.CPMK081.7
Deskripsi Singkat MK Mata kuliah ini memperkenalkan mahasiswa pada prinsip dan praktik Pemrograman Berorientasi Objek (Object-Oriented Programming/OOP) melalui penerapannya dalam bahasa pemrograman C#. Dengan pendekatan berbasis praktikum, mahasiswa tidak hanya mempelajari sintaksis C#, tetapi juga mengasah kemampuan merancang, mengimplementasikan, dan mengelola perangkat lunak berbasis objek yang modular, dapat dikembangkan, dan mudah dipelihara. Topik utama mencakup enkapsulasi, abstraksi, pewarisan, polimorfisme, interface, penanganan kesalahan, serta fitur-fitur modern C# seperti generic, koleksi, dan event-driven programming. Di akhir perkuliahan, mahasiswa akan mengintegrasikan seluruh konsep dalam sebuah proyek aplikasi mini berbasis OOP. Mata kuliah ini cocok sebagai fondasi bagi pengembangan aplikasi desktop, game sederhana, atau sistem berbasis objek di lingkungan .NET.
Bahan Kajian : Materi Pembelajaran - Pengenalan lingkungan pengembangan .NET - Pengenalan konsep dasar Object Oriented Programming (OOP) - Pilar dasar OOP - Exception handling - Studi kasus
Pustaka Utama
Pendukung
Dosen Pengampu Ajie Kusuma Wardhana, S.Kom., M.Eng, Kamarudin, M.Kom, Ahmad Ridwan, S.Tr.T., M.T
Mata Kuliah Syarat Algoritma dan Pemrogaman (ST068)
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.ST021.CPMK051.1-Mahasiswa mampu membuat dan menjalankan program C# sederhana menggunakan IDE atau CLI. Mahasiswa mampu membuat dan menjalankan program C# sederhana menggunakan lingkungan pengembangan (.NET SDK atau IDE) dengan memanfaatkan struktur dasar program, tipe data, dan operasi input/output. Kriteria
Rubrik skala Persepsi
Teknik
Keaktifan
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Pengenalan C# dan Lingkungan Pengembangan
Sub Topik
(1) Struktur dasar program C# (2) Instalasi .NET SDK dan penggunaan Visual Studio / VS Code (3) Tipe data dasar (int, string, bool, double) dan deklarasi variabel (4) Kompilasi dan eksekusi program konsol
2
2 sub.cpmk.ST021.CPMK081.1-Mahasiswa mampu mengimplementasikan struktur kontrol alur dalam program C#. Mahasiswa mampu mengimplementasikan struktur kontrol alur (percabangan dan perulangan) dalam program C# untuk memecahkan masalah logika dasar. Kriteria
Rubrik Analitik
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Kontrol Alur dan Struktur Pemrograman Dasar
Sub Topik
(1) Percabangan: if, else if, else, switch-case (2) Perulangan: for, while, do-while (3) Input dan output konsol (Console.ReadLine(), Console.WriteLine()) (4) Debugging sederhana
2
3 sub.cpmk.ST021.CPMK081.2-Mahasiswa mampu mendefinisikan class dan membuat objek dari class tersebut. Mahasiswa mampu mendefinisikan class dan membuat objek dalam C# serta mengakses anggotanya (field dan method) sesuai prinsip pemrograman berorientasi objek. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Pengenalan Class dan Object
Sub Topik
(1) Konsep objek dan class dalam OOP (2) Mendefinisikan field dan method dalam class (3) Instansiasi objek dan akses member (4) Peran Main() sebagai entry point
2
4 sub.cpmk.ST021.CPMK081.3-Mahasiswa mampu menerapkan enkapsulasi menggunakan access modifier dan properties. Mahasiswa mampu menerapkan enkapsulasi melalui penggunaan access modifier dan properties untuk mengontrol akses data dan menjaga integritas objek. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Enkapsulasi dan Access Modifier
Sub Topik
(1) Access modifier: public, private, protected (2) Penggunaan properties (get/set) (3) Validasi data dalam setter (4) Prinsip menyembunyikan detail implementasi
2
5 sub.cpmk.ST021.CPMK081.4-Mahasiswa mampu membuat dan menggunakan constructor untuk inisialisasi objek. Mahasiswa mampu membuat dan menggunakan constructor (default maupun berparameter) untuk menginisialisasi objek secara efisien dan konsisten. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Constructor dan Inisialisasi Objek
Sub Topik
(1) Constructor default dan parameter (2) Overloading constructor (3) Penggunaan keyword this (4) Finalizer (pengantar, opsional)
2
6 sub.cpmk.ST021.CPMK081.5-Mahasiswa mampu membuat class abstrak dan memahami peran abstraksi dalam desain OOP. Mahasiswa mampu merancang class abstrak dan method abstrak untuk mewujudkan konsep abstraksi dalam hierarki class OOP. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Abstraksi dan Class Abstrak
Sub Topik
(1) Konsep abstraksi dalam OOP (2) Mendefinisikan class abstrak (abstract class) (3) Mendefinisikan dan mengimplementasikan method abstrak (4) Studi kasus: hierarki bentuk geometris (misal: Shape, Circle, Rectangle)
2
7 sub.cpmk.ST021.CPMK081.6-Mahasiswa mampu mengimplementasikan pewarisan (inheritance) untuk memperluas fungsionalitas class. Mahasiswa mampu mengimplementasikan pewarisan (inheritance) untuk membangun hubungan antar-class dan memanfaatkan reuse kode. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=12 Menit]
Topik
Pewarisan (Inheritance)
Sub Topik
(1) Konsep inheritance dan hubungan β€œis-a” (2) Keyword base untuk mengakses anggota parent (3) Method overriding dasar (tanpa virtual/override dulu) (4) Protected members
2
8 sub.cpmk.ST021.CPMK081.2-Mahasiswa mampu mendefinisikan class dan membuat objek dari class tersebut. sub.cpmk.ST021.CPMK081.3-Mahasiswa mampu menerapkan enkapsulasi menggunakan access modifier dan properties. sub.cpmk.ST021.CPMK081.4-Mahasiswa mampu membuat dan menggunakan constructor untuk inisialisasi objek. sub.cpmk.ST021.CPMK081.5-Mahasiswa mampu membuat class abstrak dan memahami peran abstraksi dalam desain OOP. sub.cpmk.ST021.CPMK081.6-Mahasiswa mampu mengimplementasikan pewarisan (inheritance) untuk memperluas fungsionalitas class. Mahasiswa mampu menjawab pertanyaan. Kriteria
Rubrik Analitik
Teknik
Ujian tulis
Ujian terjadwal,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
-
Sub Topik
-
30
9 sub.cpmk.ST021.CPMK081.7-Mahasiswa mampu menerapkan polimorfisme melalui method overriding dan late binding. Mahasiswa mampu menerapkan polimorfisme melalui method virtual dan overriding untuk memungkinkan perilaku berbeda dari objek yang diakses melalui referensi umum. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Polimorfisme
Sub Topik
(1) Virtual methods (virtual, override) (2) Runtime polymorphism (3) Casting objek (as, is) (4) Contoh penggunaan dalam koleksi objek heterogen
2
10 sub.cpmk.ST021.CPMK051.2-Mahasiswa mampu mendesain dan mengimplementasikan antarmuka (interface) dalam C#. Mahasiswa mampu mendesain dan mengimplementasikan interface sebagai kontrak perilaku, serta membandingkannya dengan class abstrak dalam konteks desain perangkat lunak. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Interface
Sub Topik
(1) Definisi dan tujuan interface (2) Mendeklarasikan dan mengimplementasikan interface (3) Multiple interface implementation (4) Perbedaan interface vs abstract class
2
11 sub.cpmk.ST021.CPMK051.3-Mahasiswa mampu menangani kesalahan program secara terstruktur menggunakan exception handling. Mahasiswa mampu mengelola error runtime secara terstruktur menggunakan mekanisme exception handling untuk meningkatkan keandalan program. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Exception Handling
Sub Topik
(1) Blok try, catch, finally (2) Exception hierarchy di .NET (3) Membuat custom exception (4) Best practice penanganan error
2
12 sub.cpmk.ST021.CPMK051.4-Mahasiswa mampu menggunakan koleksi generik untuk menyimpan dan memanipulasi objek. Mahasiswa mampu memanfaatkan koleksi generik (List, Dictionary) untuk menyimpan, mengelola, dan memanipulasi kumpulan objek secara aman dan efisien. Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Collections dan Generic
Sub Topik
(1) Generic (List, Dictionary) (2) Iterasi dengan foreach (3) Keuntungan tipe aman (type safety) (4) Pengantar generic method dan class
2
13 sub.cpmk.ST021.CPMK051.5-Mahasiswa mampu mengimplementasikan komunikasi antar-objek menggunakan delegate dan event. Mahasiswa mampu mengimplementasikan komunikasi antar-objek menggunakan delegate dan event sebagai dasar pemrograman berbasis kejadian (event-driven). Kriteria
Rubrik skala Persepsi
Teknik
Laporan praktikum
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Delegate dan Event
Sub Topik
(1) Konsep delegate sebagai tipe fungsi (2) Mendeklarasikan dan memanggil delegate (3) Membuat dan memicu custom event (4) Studi kasus: notifikasi perubahan status objek
2
14 sub.cpmk.ST021.CPMK051.6-Mahasiswa mampu merancang dan mengimplementasikan struktur class dalam proyek terpadu berbasis OOP. Mahasiswa mampu merancang dan mengimplementasikan struktur class dalam proyek terpadu berbasis OOP. Kriteria
Rubrik Holistik
Teknik
Diskusi
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Studi Kasus Terpadu – Perancangan dan Implementasi Awal
Sub Topik
(1) Analisis kebutuhan aplikasi (misal: sistem manajemen karakter/pixel art) (2) Perancangan class diagram sederhana (3) Implementasi class dasar dan hubungan antar-class (4) Integrasi prinsip OOP (enkapsulasi, inheritance, dll.)
6
15 sub.cpmk.ST021.CPMK051.7-Mahasiswa mampu menyelesaikan, menguji, dan mempresentasikan aplikasi OOP secara utuh. Mahasiswa mampu mengimplementasikan, menguji, dan mempresentasikan aplikasi mini berbasis OOP yang mengintegrasikan seluruh prinsip dan fitur C# yang telah dipelajari. Kriteria
Rubrik Holistik
Teknik
Presentasi kelompok
Praktikum,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
Studi Kasus Terpadu – Penyelesaian dan Presentasi
Sub Topik
(1) Penambahan fitur lanjutan (misal: penyimpanan data, interaksi pengguna) (2) Refactoring kode untuk kejelasan dan konsistensi OOP (3) Pengujian fungsionalitas inti (4) Demonstrasi dan presentasi proyek
10
16 sub.cpmk.ST021.CPMK051.2-Mahasiswa mampu mendesain dan mengimplementasikan antarmuka (interface) dalam C#. sub.cpmk.ST021.CPMK051.3-Mahasiswa mampu menangani kesalahan program secara terstruktur menggunakan exception handling. sub.cpmk.ST021.CPMK051.4-Mahasiswa mampu menggunakan koleksi generik untuk menyimpan dan memanipulasi objek. sub.cpmk.ST021.CPMK051.5-Mahasiswa mampu mengimplementasikan komunikasi antar-objek menggunakan delegate dan event. sub.cpmk.ST021.CPMK051.6-Mahasiswa mampu merancang dan mengimplementasikan struktur class dalam proyek terpadu berbasis OOP. sub.cpmk.ST021.CPMK051.7-Mahasiswa mampu menyelesaikan, menguji, dan mempresentasikan aplikasi OOP secara utuh. - Kriteria
Rubrik skala Persepsi
Teknik
Ujian tulis
Ujian terjadwal,Proses Belajar,[PB=100 Menit]
E-learning interaktif,Penugasan terstruktur dan Kegiatan Mandiri ,[PT+KM : (1+1 ) x (2 x 60" )=120 Menit]
Topik
-
Sub Topik
-
30

Teknik Penilaian CPMK

CPL MK CPMK Keaktifan Laporan Praktikum Tes Tulis (UTS) Diskusi Presentasi Tes Tulis ( UAS )
CPLP05 PEMROGRAMAN CPMK051 Y Y Y Y Y
CPLP08 PEMROGRAMAN CPMK081 Y Y

Prosedur Penilaian CPMK

1. Komponen Penilaian CPMK
CPL CPMK Sub-CPMK Detail Penugasan (Teknik Penilaian) Bobot % Kriteria Penilaian
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.1 Keaktifan 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.1 Laporan praktikum 2 Rubrik Analitik
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.2 Laporan praktikum 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.3 Laporan praktikum 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.4 Laporan praktikum 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.5 Laporan praktikum 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.6 Laporan praktikum 2 Rubrik skala Persepsi
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.2, sub.cpmk.ST021.CPMK081.3, sub.cpmk.ST021.CPMK081.4, sub.cpmk.ST021.CPMK081.5, sub.cpmk.ST021.CPMK081.6 Ujian tulis 30 Rubrik Analitik
CPLP08 CPMK081 sub.cpmk.ST021.CPMK081.7 Laporan praktikum 2 Rubrik skala Persepsi
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.2 Laporan praktikum 2 Rubrik skala Persepsi
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.3 Laporan praktikum 2 Rubrik skala Persepsi
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.4 Laporan praktikum 2 Rubrik skala Persepsi
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.5 Laporan praktikum 2 Rubrik skala Persepsi
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.6 Diskusi 6 Rubrik Holistik
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.7 Presentasi kelompok 10 Rubrik Holistik
CPLP05 CPMK051 sub.cpmk.ST021.CPMK051.2, sub.cpmk.ST021.CPMK051.3, sub.cpmk.ST021.CPMK051.4, sub.cpmk.ST021.CPMK051.5, sub.cpmk.ST021.CPMK051.6, sub.cpmk.ST021.CPMK051.7 Ujian tulis 30 Rubrik skala Persepsi
Total 100
2. Penilaian CPMK
CPL MK CPMK Keaktifan Laporan Praktikum Tes Tulis (UTS) Diskusi Presentasi Tes Tulis ( UAS ) Total
CPLP05 PEMROGRAMAN CPMK051 2% 8% 0% 6% 10% 30% 56%
CPLP08 PEMROGRAMAN CPMK081 0% 14% 30% 0% 0% 0% 44%
100%