SILABUS Pemrograman Dasar

SILABUS MATA PELAJARAN
Nama Sekolah
Bidang Keahlian
Kompetensi Keahlian 
Mata Pelajaran
Durasi (Waktu)    
Kelas/Semester      
KI­3 (Pengetahuan)    

: ........................................................................
: Teknologi Informasi dan Komunikasi
: Rekayasa Perangkat Lunak
: Pemrograman Dasar
: 144 jam
:  X
: Memahami, menerapkan, menganalisis, dan mengevaluasi tentang pengetahuan faktual, 
konseptual, operasional dasar, dan metakognitif sesuai dengan bidang dan lingkup kerja 
Teknik Komputer dan Informatika pada tingkat teknis, spesifik, detil, dan kompleks, 
berkenaan dengan ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dalam 
konteks pengembangan potensi diri sebagai bagian dari keluarga, sekolah, dunia kerja, 


warga masyarakat nasional, regional, dan internasional.
KI­4 (Keterampilan)   : Melaksanakan tugas spesifik, dengan menggunakan alat, informasi, dan prosedur kerja 
yang lazim dilakukan serta menyelesaikan masalah sederhana sesuai dengan bidang dan
lingkup kerja Teknik Komputer dan Informatika. Menampilkan kinerja mandiri dengan 
mutu dan kuantitas yang terukur sesuai dengan standar kompetensi kerja.Menunjukkan
keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis, 
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah abstrak terkait dengan 
pengembangan dari yang dipelajarinya di sekolah, serta mampu melaksanakan tugas 
spesifik dibawah pengawasan langsung.Menunjukkan keterampilan mempersepsi, 
kesiapan, meniru, membiasakan gerak mahir, menjadikan gerak alami, sampai dengan 
tindakan orisinal dalam ranah konkret terkait dengan pengembangan dari yang 

@2017, Direktorat Pembinaan SMK

1

dipelajarinya di sekolah, serta mampu melaksanakan tugas spesifik dibawah 
pengawasan langsung.

Kompetensi Dasar


3.1

4.1

1
Menerapkan alur logika 
pemrograman komputer
Membuat alur logika 
pemrograman komputer 

Indikator Pencapaian
Kompetensi
2
3.1.1 Menjelaskan algoritma 
pemrograman
3.1.2 Menerapkan algoritma 
pemrograman dalam 
menyelesaikan 
masalah

3.1.3 Menjelaskan algoritma 
pemrograman 
menggunakan 
flowchart
3.1.4 Menerapkan flowchart 
dalam menyelesaikan 
masalah
4.1.1 Membuat alur program
menggunakan text 
(algoritma)
4.1.2 Membuat program 
menggunakan simbol 
(flowchart) 

@2017, Direktorat Pembinaan SMK

Materi Pokok
3
 Algoritma 
Pemrograman

 Flowchart

Alokasi
Waktu Kegiatan Pembelajaran
(JP)
4
5
12
 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
alur logika 
pemrograman 
komputer.
 Mengumpulkan 
data tentang 
penerapan alur 
logika 
pemrograman 

komputer.
 Mengolah data 
tentang penerapan 
alur logika 
pemrograman 
komputer.
 Mengomunikasikan
tentang penerapan 
alur logika 
pemrograman 
komputer.

2

Penilaian
6
Pengetahuan
:
 Tes 
Tertulis

Keterampila
n:
 Observasi

Kompetensi Dasar
3.2

Memahami perangkat 
lunak bahasa 
pemrograman

4.2

Melakukan Instalasi 
perangkat lunak bahasa 
pemrograman

@2017, Direktorat Pembinaan SMK

Indikator Pencapaian

Kompetensi
3.2.1 Menjelaskan berbagai 
perangkat lunak 
bahasa pemrograman 
komputer
3.2.2 Menjelaskan prosedur 
instalasi berbagai 
perangkat lunak 
bahasa pemrograman 
komputer
3.2.3 Mengoperasikan  
prosedur instalasi 
berbagai perangkat 
lunak bahasa 
pemrograman 
komputer
 
4.2.1 Menginstalasi 
perangkat lunak 
bahasa pemrograman

4.2.2 Menguji hasil instalasi 
perangkat lunak 
bahasa pemrograman

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)
12

 Perangkat lunak 
bahasa 
pemrograman 
komputer
 Menginstalasi 
perangkat lunak 
bahasa 
pemrograman 
komputer

 Menguji hasil 
instalasi perangkat
lunak bahasa 
pemrograman 
komputer

3

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
berbagai perangkat 
lunak bahasa 
pemrograman 
komputer, prosedur
instalasi, dan 
pengujian hasil 
instalasi.
 Mengumpulkan 

data tentang 
berbagai perangkat 
lunak bahasa 
pemrograman 
komputer, prosedur
instalasi, dan 
pengujian hasil 
instalasi
 Mengolah data 
tentang berbagai 
perangkat lunak 
bahasa 
pemrograman 
komputer, prosedur
instalasi, dan 
pengujian hasil 
instalasi.
 Mengomunikasikan
tentang berbagai 
perangkat lunak 

bahasa 

Penilaian
Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Observasi

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

Penilaian

pemrograman 
komputer, prosedur
instalasi, dan 
pengujian hasil 
instalasi.
3.3

Menerapkan alur 
pemrograman dengan 
struktur bahasa 
pemrograman komputer

4.3

Menulis kode pemrogram
sesuai dengan aturan 
dan sintaks bahasa 
pemrograman

3.3.1 Mengoperasikan editor
untuk lingkungan 
kerja perangkat lunak 
bahasa pemrograman 
komputer
3.3.2 Menerapkan struktur 
penulisan 
kode/perintah 
program pada bahasa 
pemrograman 
komputer
3.3.3 Menerapkan prosedur 
menjalankan dan 
menguji kode program 
pada bahasa 
pemrograman 
komputer

 Editor, lingkungan
kerja bahasa 
pemrograman 
komputer
 Struktur program 
bahasa 
pemrograman 
komputer
 Menguji kode 
program bahasa 
pemrograman 
komputer

12

4.3.1 Membuat kode 
program sederhana 
menggunakan bahasa 
pemrograman 
komputer
4.3.2 Menguji kode program 
pada bahasa 
pemrograman 
komputer
@2017, Direktorat Pembinaan SMK

4

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
editor/lingkungan 
kerja, struktur 
program, pengujian
bahasa 
pemrograman 
komputer.
 Mengumpulkan 
data tentang 
editor/lingkungan 
kerja, struktur 
program, pengujian
bahasa 
pemrograman 
komputer
 Mengolah data 
tentang 
editor/lingkungan 
kerja, struktur 
program, pengujian
bahasa 
pemrograman 
komputer.
 Mengomunikasikan
tentang 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

Penilaian

editor/lingkungan 
kerja, struktur 
program, pengujian
bahasa 
pemrograman 
komputer.
3.4

4.4

Menerapkan penggunaan 3.4.1 Menjelaskan berbagai 
tipe data, variabel, 
tipe data dan sintak 
konstanta, operator, dan 
penulisan
ekspresi
3.4.2 Menjelaskan variabel 
dan dan sintak 
Membuat kode program 
penulisan
dengan tipe data, 
3.4.3 Menjelaskan berbagai 
variabel, konstanta, 
operator dan sintak 
operator dan ekspresi
penulisan
3.4.4 Menjelaskan ekspresi 
dan sintak penulisan
3.4.5 Menerapkan berbagai 
tipe data, variabel, 
konstanta, operator, 
dan ekspresi sesuai 
dengan permasalahan 
yang akan diselesaikan
dengan program







4

Tipe data
Variabel
Konstanta
Operator
Ekspresi

4.4.1 Membuat aplikasi 
program yang 
menerapkan tipe data, 
variabel/konstanta
4.4.2 Membuat aplikasi 
program yang 
menerapkan tipe data, 
variabel/konstanta, 
@2017, Direktorat Pembinaan SMK

5

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
penggunaan tipe 
data, variabel, 
konstanta, 
operator, dan 
ekspresi.
 Mengumpulkan 
data tentang 
penggunaan tipe 
data, variabel, 
konstanta, 
operator, dan 
ekspresi
 Mengolah data 
tentang 
penggunaan tipe 
data, variabel, 
konstanta, 
operator, dan 
ekspresi 
pemrograman 
komputer.
 Mengomunikasikan
tentang 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

operator, ekspresi

3.5

Menerapkan operasi 
aritmatika dan  logika

4.5

Membuat kode program 
dengan operasi 
aritmatika dan logika

3.5.1 Menjelaskan operator 
aritmatika
3.5.2 Menjelaskan operator 
logika
3.5.3 Menerapkan operasi 
aritmatika dan logika 
untuk menyelesaikan 
masalah perhitungan 
aritmatika dan logika

penggunaan tipe 
data, variabel, 
konstanta, 
operator, dan 
ekspresi.
 Operator 
aritmatika
 Operator logika
 Operasi aritmatika
 Operasi logika

8

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
operasi aritmatika 
dan  logika.
 Mengumpulkan 
data tentang 
operasi aritmatika 
dan  logika
 Mengolah data 
tentang operasi 
aritmatika dan  
logika.
 Mengomunikasikan
tentang operasi 
aritmatika dan  
logika.

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

 Struktur 
percabangan
 Percabangan tidak
bersyarat
 Percabangan 
sederhana
 Percabangan 
bertingkat
 Percabangan 

12

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
struktur kontrol 
Percabangan dalam
bahasa 
pemrograman.
 Mengumpulkan 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja

4.5.1 Membuat aplikasi 
operasi aritmatika
4.5.2 Membuat aplikasi 
operasi logika

3.6

Menerapkan struktur 
kontrol Percabangan 
dalam bahasa 
pemrograman

4.6

Membuat kode program 
struktur kontrol 
percabangan

@2017, Direktorat Pembinaan SMK

3.6.1 Menjelaskan 
statement/perintah 
untuk kontrol 
percabangan
3.6.2 Menerapkan 
statement/perintah 
untuk kontrol 
percabangan tidak 
bersyarat

Penilaian

6

Kompetensi Dasar

Indikator Pencapaian
Kompetensi
3.6.3 Menerapkan 
statement/perintah 
untuk kontrol 
percabangan 
sederhana
3.6.4 Menerapkan 
statement/perintah 
untuk kontrol 
percabangan 
bertingkat
3.6.5 Menerapkan 
statement/perintah 
untuk kontrol 
percabangan 
bersarang

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

bersarang

4.6.1 Membuat aplikasi 
percabangan tidak 
bersyarat
4.6.2 Membuat aplikasi 
percabangan 
sederhana
4.6.3 Membuat aplikasi 
percabangan 
bertingkat
4.6.4 Membuat aplikasi 
percabangan 
bersarang
3.7

Menerapkan struktur 
kontrol Perulangan 
dalam bahasa 
pemrograman

@2017, Direktorat Pembinaan SMK

3.7.1 Menjelaskan 
statement/perintah 
untuk perulangan
3.7.2 Menerapkan 
statement/perintah 

12

 Struktur 
perulangan
 Percabangan 
sederhana

7

Penilaian

data tentang 
struktur kontrol 
Percabangan dalam
bahasa 
pemrograman
 Mengolah data 
tentang struktur 
kontrol 
Percabangan dalam
bahasa 
pemrograman.
 Mengomunikasikan
tentang struktur 
kontrol 
Percabangan dalam
bahasa 
pemrograman

 Observasi

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
struktur kontrol 

Pengetahuan
:
 Tes 
Tertulis

Kompetensi Dasar

4.7

Membuat kode program 
struktur kontrol 
perulangan

Indikator Pencapaian
Kompetensi
untuk kontrol 
perulangan sederhana
3.7.3 Menerapkan 
statement/perintah 
untuk kontrol 
perulangan bersarang

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

 Perulangan 
bertingkat
 Percabangan 
bersarang

4.7.1 Membuat aplikasi 
perulangan sederhana
4.7.2 Membuat aplikasi 
perulangan bersarang

3.8

4.8

Menganalisis 
3.8.1 Menjelaskan array 
penggunaan array untuk 
satu dimensi 
penyimpanan data di 
3.8.2 Menjelaskan array  
memori
multi dimensi
3.8.3 Mengidentifikasi 
Membuat kode program 
penerapan array satu 
untuk menampilkan 
dimensi
kumpulan data array
3.8.4 Mengidentifikasi 
penerapan array mulri 
dimensi

 Konsep array
 Array satu dimensi
 Array multi 
dimensi

8

4.8.1 Membuat aplikasi 
array satu dimensi
@2017, Direktorat Pembinaan SMK

8

Penilaian

Perulangan dalam 
bahasa 
pemrograman
 Mengumpulkan 
data tentang 
struktur kontrol 
Perulangan dalam 
bahasa 
pemrograman
 Mengolah data 
tentang struktur 
kontrol Perulangan 
dalam bahasa 
pemrograman
 Mengomunikasikan
tentang struktur 
kontrol Perulangan 
dalam bahasa 
pemrograman

Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
penggunaan array 
untuk 
penyimpanan data 
di memori
 Mengumpulkan 
data tentang 
penggunaan array 
untuk 
penyimpanan data 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

4.8.2 Membuat aplikasi 
array multi dimensi

3.9

Menerapkan penggunaan
fungsi

4.9

Membuat kode program 
menggunakan fungsi

3.9.1 Menjelaskan konsep 
fungsi dalam bahasa 
pemrograman
3.9.2 Menerapkan fungsi­
fungsi buatan sendiri
3.9.3 Menerapkan fungsi­
fungsi bawaan dari 
bahasa pemrograman

di memori
 Mengolah data 
tentang 
penggunaan array 
untuk 
penyimpanan data 
di memori
 Mengomunikasikan
tentang 
penggunaan array 
untuk 
penyimpanan data 
di memori
 Konsep fungsi 
dalam bahasa 
pemrograman
 Pembuatan fungsi 
sendiri
 Penerapan fungsi­
fungsi bawaan 
bahasa 
pemrograman

12

4.9.1 Membuat aplikasi 
dengan fungsi buatan 
sendiri
4.9.2 Membuat aplikasi 
dengan fungsi bawaan 
bahasa pemrograman

@2017, Direktorat Pembinaan SMK

Penilaian

9

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
penggunaan  fungsi
 Mengumpulkan 
data tentang 
penggunaan  fungsi
 Mengolah data 
tentang 
penggunaan  fungsi
 Mengomunikasikan
tentang 
penggunaan  fungsi

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

Kompetensi Dasar
3.10 Menerapkan pembuatan 
antar muka (User 
Intreface) pada aplikasi

4.10 Membuat antar muka 
(User Intreface) pada 
aplikasi

Indikator Pencapaian
Kompetensi
3.10.1 Menjelaskan prosedur 
pembuatan antar 
muka pada aplikasi
3.10.2 Menerapkan prosedur 
pembuatan antar 
muka input data dari 
pengguna
3.10.3 Menerapkan prosedur 
pembuatan antar 
muka input data dari 
pengguna dengan 
validasi data

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

 Antar muka (User 
Intreface) pada 
aplikasi
 Input/Output data
pengguna aplikasi
 Validasi data

12

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
pembuatan antar 
muka
 Mengumpulkan 
data tentang 
pembuatan antar 
muka
 Mengolah data 
tentang pembuatan
antar muka
 Mengomunikasikan
tentang pembuatan
antar muka

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

 Menu interaksi 
antar muka pada 
aplikasi
 Kontrol menu 
antar muka pada 
aplikasi

12

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
berbagai struktur 
kontrol dalam 
aplikasi antar 
muka
 Mengumpulkan 
data tentang 
berbagai struktur 
kontrol dalam 
aplikasi antar 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

4.10.1 Membuat antar muka 
input data dari 
pengguna
4.10.2 Membuat antar muka 
input data dari 
pengguna dengan 
validasi data
3.11 Menerapkan berbagai 
struktur kontrol dalam 
aplikasi antar muka 
(User Intreface).

4.11

3.11.1 Menjelaskan prosedur 
pembuatan menu pada
antar muka 
3.11.2 Menjelaskan prosedur 
pembuatan menu pada
antar muka dengan 
Membuat kode program 
validasi
berbagai struktur kontrol
dalam aplikasi antar 
muka (User Intreface).
4.11.1 Membuat menu pada 
antar muka 
4.11.2 Membuat menu pada 
antar muka dengan 

@2017, Direktorat Pembinaan SMK

Penilaian

10

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

validasi data

3.12 Menganalisis pembuatan  3.12.1 Mengidentifikasi 
aplikasi sederhana 
permasalahan pada 
berbasis antar muka 
pembuatan aplikasi 
sederhana berbasis 
(User Intreface)
antar muka 
3.12.2
Merumuskan 
4.12 Membuat aplikasi 
permasalahan pada 
sederhana berbasis antar
pembuatan aplikasi 
muka (User Intreface)
sederhana berbasis 
antar muka

muka
 Mengolah data 
tentang berbagai 
struktur kontrol 
dalam aplikasi 
antar muka
 Mengomunikasikan
tentang berbagai 
struktur kontrol 
dalam aplikasi 
antar muka
 Analisis 
pembuatan 
aplikasi berbasis 
antar muka
 Perbaikan masalah
pembuatan 
aplikasi berbasis 
antar muka

12

3.12.1 Memperbaiki 
permasalahan pada 
pembuatan aplikasi 
sederhana berbasis 
antar muka
3.12.2 Menguji hasil 
perbaikan 
permasalahan pada 
pembuatan aplikasi 
sederhana berbasis 
@2017, Direktorat Pembinaan SMK

Penilaian

11

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
pembuatan aplikasi
sederhana berbasis 
antar muka
 Mengumpulkan 
data tentang 
pembuatan aplikasi
sederhana berbasis 
antar muka
 Mengolah data 
tentang pembuatan
aplikasi sederhana 
berbasis antar 
muka
 Mengomunikasikan
tentang pembuatan
aplikasi sederhana 
berbasis antar 

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)

antar muka

3.13 Mengevaluasi debuging 
pada aplikasi pada 
sederhana

4.13 Menggunakan debuging 
pada aplikasi sederhana

3.12.3 Menerapkan prosedur  
debuging pada aplikasi
sederhana
3.12.4 Mengidentifikasi 
permasalahan pada 
aplikasi berdasarkan 
data debuging

muka

 Debuging aplikasi
 Menganalisis data 
hasil Debuging

8

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah tentang 
debuging pada 
aplikasi
 Mengumpulkan 
data tentang 
debuging pada 
aplikasi
 Mengolah data 
tentang debuging 
pada aplikasi
 Mengomunikasikan
tentang debuging 
pada aplikasi

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

 Membuat paket 
installer aplikasi
 Evaluasi paket 
installer aplikasi

8

 Mengamati untuk 
mengidentifikasi 
dan merumuskan 
masalah paket 
installer aplikasi
 Mengumpulkan 
data tentang paket 
installer aplikasi
 Mengolah data 
tentang paket 
installer aplikasi

Pengetahuan
:
 Tes 
Tertulis
Keterampila
n:
 Penilaian 
Unjuk 
Kerja
 Observasi

4.13.1 Memperbaiki bug pada
aplikasi
4.13.2 Menguji aplikasi hasil 
perbaikan

3.14 Mengevaluasi paket 
installer aplikasi 
sederhana

4.14 Memformulasikan paket 
installer aplikasi 
sederhana

3.14.1 Menerapkan prosedur  
evaluasi pada paket 
installer
3.14.2 Mengidentifikasi 
permasalahan pada 
paket installer
4.14.1 Memperbaiki bug pada
paket installer
4.14.2 Menguji paket installer
hasil perbaikan

@2017, Direktorat Pembinaan SMK

Penilaian

12

Kompetensi Dasar

Indikator Pencapaian
Kompetensi

Materi Pokok

Alokasi
Waktu Kegiatan Pembelajaran
(JP)
  
Mengomunikasikan
tentang paket 
installer aplikasi

@2017, Direktorat Pembinaan SMK

13

Penilaian

@2017, Direktorat Pembinaan SMK

14