PENDALAMAN MATERI UJI KOMPETENSI LSP LPPPTK KPTK Kompetensi Keahlian: Rekayasa Perangkat Lunak MODUL 2
MENGGUNAKAN BASIS DATA
Oleh : Alun Sujjada LEMBAGA PENGEMBANGAN DAN PEMBERDAYAAN PENDIDIK DAN TENAGA KEPENDIDIKAN BIDANG KELAUTAN PERIKANAN TEKNOLOGI INFORMASI DAN KOMUNIKASI
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
2017
Pengarah: 1. Dr. Rusdi, M.Pd. 2. Yopi Sopian, ST., M.Pd. Penulis: 1. Alun Sujjada, S.Kom., M.T Editor: 1. Singgih Afifa Putra, S.Pi., M.Si. 2. Robert Polikarpus 3. Andi Risda 4. Rizal Mattawang © Hak Cipta Milik LPPPTK KPTK Gowa, Tahun Tahun 2017 Hak Cipta Dilindungi Undang-Undang Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan, penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau ata u tujuan suatu masalah; dan pengutipan tidak merugikan kepentingan LPPPTK KPTK Gowa. Dilarang Mengumumkan dan memperbanyak sebagian atau seluruh karya tulis ini dalam bentuk apa pun tanpa izin LPPPTK KPTK Gowa.
ii
KATA PENGANTAR
Profesi guru dan tenaga kependidikan harus dihargai dan dikembangkan sebagai profesi yang bermartabat sebagaimana diamanatkan Undang-Undang Nomor 14 Tahun 2005 tentang Guru dan Dosen. Hal ini dikarenakan guru dan tenaga kependidikan merupakan tenaga profesional yang mempunyai fungsi, peran, dan kedudukan yang sangat penting dalam mencapai visi pendidikan 2025 yaitu
“Menciptakan Insan Indonesia Cerdas dan Kompetitif”. Untuk itu guru dan tenaga kependidikan khususnya guru bidang vokasi dalam menjamin profesionalisme nya wajib melakukan untuk dapat melakukan asesmen kompetensi keahlian. Modul Pendalaman Materi Uji Kompetensi Sertifikasi Keahlian Bagi Guru khususnya yang berpartisipasi dalam Program Keahlian ganda adalah untuk institusi penyelenggara program keahlian ganda dan merupakan petunjuk bagi penyelenggara pelatihan di dalam melaksanakan pengembangan modul yang merupakan salah satu sumber belajar bagi guru vokasi. Modul ini disajikan untuk memberikan informasi tentang deskripsi dan kisi-kisi materi uji kompetensi yang akan digunakan dalam asesmen kompetensi keahlian pada kegiatan program keahlian ganda, dan sertifikasi keahlian bagi guru dan tenaga kependidikan nantinya. Pada kesempatan ini disampaikan ucapan terima kasih dan penghargaan kepada berbagai pihak yang telah memberikan kontribusi secara maksimal dalam mewujudkan modul ini, mudah-mudahan modul ini dapat menjadi acuan dan sumber inspirasi bagi guru dan semua pihak yang terlibat dalam pelaksanaan program yang dimaksud.
Kritik
dan
saran
yang
membangun
sangat
diharapkan
untuk
menyempurnakan modul ini di masa mendatang.
Gowa, 31 Agustus 2017 Kepala LPPPTK KPTK Gowa
Dr. H. A. Rusdi., M.Pd.
iii
DAFTAR ISI
DAFTAR GAMBAR .................................................................................................. vi DAFTAR TABEL...................................................................................................... vii DAFTAR LAMPIRAN .............................................................................................. viii GLOSARIUM ............................................................................................................ ix PENDAHULUAN: MODUL ASESMEN KOMPETENSI GURU VOKASI ................... 1 A. Latar Belakang ................................................................................................. 1 B. Ruang Lingkup ................................................................................................. 4 C. Tujuan dan Manfaat ......................................................................................... 4 D. Metode Pembelajaran ...................................................................................... 4 E. Daftar Pustaka .................................................................................................. 6 MEMENUHI PERSYARATAN KESELAMATAN, KESEHATAN KERJA, DAN LINGKUNGAN DI TEMPAT KERJA .............................. Error! Bookmark not defined. A. Ringkasan ....................................................................................................... 27 B. Tujuan Pembelajaran ..................................................................................... 27 C. Ruang Lingkup ............................................................................................... 27 D. Indikator Pencapaian Kompetensi ................................................................ 28 E. Kontekstualisasi ............................................................................................. 28 F. Uraian Materi ................................................................................................... 29 G. Aktivitas Pembelajaran .................................................................................. 36 H. Latihan/Kasus/Tugas ..................................................................................... 41 I. Umpan Balik/Tindak Lanjut ............................................................................. 42 J. Kunci Jawaban Latihan/Kasus/Tugas........................................................... 43 K. Daftar Pustaka ................................................................................................ 45 PENUTUP .............................................................................................................. 155 Simpulan ........................................................................................................... 155 LAMPIRAN ............................................................................................................ 156 RIWAYAT HIDUP .................................................................................................. 157
iv
v
DAFTAR GAMBAR
Gambar 1. Alat Tangkap Rawai....................................................................... 3 Gambar 2. Cara Pengoperasian Alat Tangkap Rawai ..................................... 3 Gambar 3. Selanjutnya Selanjutnya ................................................................ 3 Gambar 4. Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya .............................................. 51
vi
DAFTAR TABEL
Tabel 1. Unit-unit kompetensi Klaster Perakitan dan Pengoperasian Alat Tangkap 2 ......................................................................................... 3 Tabel 2. Selanjutnya ..................................................................................... 14 Tabel 3. Selanjutnya Selanjutnya Selanjutnya............................................... 23 Tabel 4. Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya Selanjutnya ................................................................. 30
vii
DAFTAR LAMPIRAN
Lampiran 1. Skema Desain Alat Tangkap Rawai ...................... .................... 71 Lampiran 2. Bangunan Kapal Pengoperasian Rawai Tuna ........................... 72 Lampiran 3. Formulir data analisis kebutuhan alat dan bahan perakita rawai tuna dan pancing ....................................................................... 73 Lampiran 4. Seterusnya Seterusnya Seterusnya Seterusnya Seterusnya Seterusnya Seterusnya.............................................................. 75
viii
GLOSARIUM
Shortening/shrinkage
: Pengerutan, beda panjang tubuh jarring dalam keadaan tegang sempurna dengan panjang jaring setelah diletakkan pada float line
Mesh size
: Ukuran mata jaring
Float
: Pelampung
Sinker
: Pemberat
Mesh depth
: Lebar jaring
Basket
: Rangkaian tali utama dan tali cabang di antara dua pelampung
Main line
: Tali utama pada rangkaian alat tangkap longline.
Branch line
: Tali cabang dari alat tangkap longline.
Snapper
: Penjepit yang berbentuk seperti peniti dan terbuat dari bahan stainless steel atau besi galvanis dengan ukuran panjang 12 cm, lebar 2,6 cm, dan diameter besi 0,4 cm.
Sekiyama
: Tali kecil dengan diameter 5 mm dan panjang 6 – 12 m yang berupa kawat yang dibungkus dengan benang
dst …
ix
BAB 1 PENDAHULUAN: MODUL ASESMEN KOMPETENSI GURU VOKASI Oleh: Singgih Afifa Putra, M.Si.
A. Latar Belakang Kompetensi guru dapat diartikan sebagai kecakapan/keahlian kecakapan/keahlian atau kemampuan yang dibekali dengan pengetahuan untuk proses instruksional atau belajar mengajar dan dilakukan dengan proses sadar serta penuh tanggung jawab. Sadar disini maksudnya adalah mengetahui materi dan keterampilan yang akan dan sudah diberikan. Sedangkan, tanggung jawab maksudnya adalah seorang guru memantau perkembangan kelas dari awal hingga akhir dan dia berusaha agar seluruh kelas terstimulasi, paham, dan turut berperan aktif dalam memperoleh pengetahuan dan kompetensi yang diajarkan (Kartini, 2011). Tim Penyusun Standar Kompetensi Guru Pemula (SKGP) merumuskan kompetensi guru dalam 4 (empat) rumpun yaitu, a) penguasaan bidang studi, b) pemahaman tentang peserta didik dan kompetensi lulusan yang harus dicapai, c) penguasaan proses pembelajaran yang sesuai, dan d) pengembangan kepribadian dan keprofesionalan, atau secara teoritis terdiri atas kompetensi pedagogis, kepribadian, sosial, dan profesional (Mulyawan, 2013; Salim 2014). Seorang guru harus memiliki kompetensi pedagogik dan profesional sebagai bekal untuk menjalankan tugasnya, yaitu mendidik dan mencerdaskan siswa. Kompetensi pedagogik
mengenai
ilmu
tentang
belajar
dan
pembelajaran,
bagaimana
melaksanakan pembelajaran yang baik dan efektif, dan bagaimana membelajarkan siswa agar mereka memahami materi pembelajaran (Hartinigtyas et al. 2016). Sedangkan, kompetensi profesional guru adalah kemampuan guru dalam menguasai materi yang diampu secara luas dan mendalam berupa penguasaan materi kurikulum mata pelajaran di sekolah dan substansi keilmuan yang menaungi materinya, dan penguasaan materi serta keterampilan tersebut digunakan dalam membimbing peserta didik untuk menguasai materi yang diajarkan yang disebut tata cara instruksional (Kartini, 2011). Sertifikasi kompetensi melalui pendidikan profesi guru sebagai upaya penjaminan mutu pendidik dan tenaga kependidikan di Indonesia
1
mempunyai arti strategis dan mendasar dalam upaya peningkatan mutu guru. Oleh karena itu, proses sertifikasi kompetensi dipandang sebagai bagian esensial dalam memperoleh sertifikat kompetensi yang diperlukan (Salim, 2014). Sertifikat kompetensi diterbitkan oleh satuan pendidikan yang terakreditasi atau oleh lembaga sertifikasi mandiri yang dibentuk oleh organisasi profesi yang diakui pemerintah (PP Nomor 19 Tahun 2005) kepada warga masyarakat sebagai pengakuan terhadap kompetensi untuk melakukan pekerjaan tertentu. Sebagai guru profesional dan telah menyandang sertifikat pendidik, guru berkewajiban untuk terus mempertahankan profesionalismenya sebagai guru. Pengembangan kompetensi dan profesionalisme guru dapat dilakukan melalui upaya pembinaan dan pemberdayaan guru. Untuk menjamin konsistensi profesionalisme guru seiring dengan perkembangan ilmu pengetahuan, teknologi, dan seni, diperlukan upaya-upaya peningkatan profesionalisme secara berkesinambungan (Slameto, 2014). Pengalaman dalam pelatihan menjadi factor yang berpengaruh paling besar dalam mempengaruhi profesionalisme guru (Mulyawan, 2013), selain itu secara preskriptif dukungan kompetensi manajemen, strategi pemberdayaan, supervisi pengembangan, dan penelitian tindakan kelas merupakan dimensi-dimensi alternatif untuk meningkatkan profesionalisme guru (Slameto, 2014). Rekomendasi ILO (International (International Labour Organisation) Organisation) bagi negara-negara yang belum memiliki standar adalah dengan menerapkan Regional Model Competency Standar (RMCS). RMCS adalah sistem uji kompetensi berdasarkan unit kompetensi bukan berdasarkan jabatan atau kualifikasi. Siap saja yang merasa mampu untuk diuji untuk satu unit kompetensi atau lebih dapat dilakukan setiap waktu. Keuntungan uji kompetensi berdasarkan unit ini karena beberapa unit kompetensi dapat dipaketkan menjadi suatu kualifikasi sehingga seseorang yang memiliki kualifikasi tertentu dapat dterima ditempat kerja di industri (Silitonga, 2007). Kementerian Pendidikan dan Kebudayaan bekerjasama dengan Badan Nasional Seritifkasi Profesi mengadopsi sistem ini untuk diterapkan dalam proses p roses uji kompetensi keahlian guru-guru vokasi di Indonesia. Sistem sertifikasi di Indonesia untuk tenaga pendidik dan tenaga kerja lainnya adalah merupakan sarana pengakuan atas kompetensi yang telah dimiliki baik melalui pendidikan dan pelatihan (diklat), dan pengalaman kerja, begitu juga di Negara lain. Melihat sistem sertifikasi di Jepang yang dilaksanakan oleh JAVADA ( Japan Vocational Ability Development Association), Association ), bahwa bahan uji kompetensi dikirim oleh 2
penguji (asesor) beberapa bulan sebelum waktu pelaksanaan ujian dilaksanakan, hal ini dilakukan untuk membantu tenaga kerja mempersiapkan dirinya sebelum menghadapi proses asesmen kompetensi (Silitonga, 2007). Mempertimbangkan hal tersebut, Kementerian Pendidikan dan Kebudayaan dalam hal ini LPPPTK KPTK Gowa menyusun modul pendalaman materi uji kompetensi masing-masing skema kompetensi keahlian di Lembaga Sertifikasi Profesi (LSP) LPPPTK KPTK Gowa, dengan tujuan untuk dapat dijadikan bahan pembelajar bagi guru dan tenaga kependidikan yang akan mengikuti proses asesmen kompetensi. Materi pembelajaran yang disajikan pada modul ini merupakan hasil telaah secara akademik yang diharapkan dapat membantu pendalaman materi uji kompetensi bagi peserta uji kompetensu dalam asesmen kompetensi pada skema kompetensi keahlian Rekayasa Perangkat Lunak di LSP LPPPTK KPTK. Unit-unit kompetensi yang dijelaskan dalam modul ini dapat dilihat pada Tabel 1 berikut.
Tabel 1. Unit-unit kompetensi Klaster Basis Data No 1.
Kode Unit
Unit Kompetensi
2.
LOG.OO01.001.01 Melakukan Komunikasi Kerja timbal balik J.620100.004.01 Menggunakan Struktur Data
3.
J.620100.011.01
4.
J.620100.012.01
5.
J.620100.020.02
6.
J.620100.021.02
7.
ICTDBS403
8.
ICTDBS412
9.
ICTDBS402
10.
ICTPRG412
Acuan Standar
SKKNI KEP.240/MEN/X/2004 SKKNI 282 Tahun 2016 Melakukan Instalasi Software SKKNI 282 Tahun Tools Pemrograman 2016 Melakukan Pengaturan SKKNI 282 Tahun Software Tools Pemrograman 2016 Menggunakan SQL SKKNI 282 Tahun 2016 Menerapkan Akses Basis Data SKKNI 282 Tahun 2016 Create Basic Databases Australian National (Membuat basis data dasar) Register of VET Build a database (Membuat Australian National basis data) Register of VET Complete database backup and Australian National restore (Membuat database Register of VET backup and restore) Configure and Maintain Australian National Databases (Konfigurasi dan Register of VET memelihara basis data)
3
B. Ruang Lingkup Ruang lingkup disini maksudnya adalah batasan (limitation) penggunaan modul dan sumber materi uji kompetensi yang akan dijelaskan. Modul ini terbatas penggunaanya hanya untuk diklat pendalaman materi uji kompetensi terkait skema kompetensi yang akan diikuti asesmen kompetensinya. Secara umum sasaran capaian materi uji kompetensi terbatas hanya kepada calon peserta asesmen kompetensi (asesi) di LSP (lembaga Sertifikasi Profesi) LPPPTK KPTK, dan khususnya kepada peserta guru tahap in service training ke-2 program Keahlian Ganda yang akan mengikuti asesmen kompetensi yang dilaksanakan oleh LPPPTK KPTK Gowa.
C. Tujuan dan Manfaat Tujuan dari penyusunan modul ini adalah untuk memberikan deskripsi dan kisikisi pendalaman materi uji kompetensi pada Skema sertifikasi klaster Basis Data kompetensi keahlian Rekayasa Perangkat Lunak yang akan diujikan dalam asesmen kompetensi LSP LPPPTK KPTK. Manfaat dari penyusunan modul ini adalah kisi-kisi materi uji kompetensi dapat diberikan oleh instruktur sebelum waktu pelaksanaan ujian dilaksanakan, hal ini dilakukan untuk membantu calon asesi mempersiapkan dirinya sebelum menghadapi proses asesmen kompetensi.
D. Metode Pembelajaran Menurut Purnamawati (2011) pendekatan metode pembelajaran dapat memberikan hasil yang optimal dalam proses pembelajaran, beberapa prinsip yang harus ditaati dalam konsep ini, adalah: a) Pembelajaran diselenggarakan dengan pengalaman nyata dan lingkungan alternatif, karena hal ini diperlukan untuk memungkinkan seseorang berproses dalam belajar (learning to know, learning to do, dan actually doing ) secara kontekstual b) Isi pembelajaran harus didesain agar relevan dengan karakteristik peserta didik karena pembelajaran difungsikan sebagai mekanisme adaptif dalam proses konstruksi, dekonstruksi, dan rekonstruksi pengetahuan, sikap dan pengetahuan
4
c) Isi pembelajaran harus dipahami dan didesain dalam kerangka atau konteks bekal awal (entry level behaviour ) peserta didik, sehingga pengalaman belajar dapat diefektifkan secara optimal d) Asesmen peserta didik dilakukan secara formatif sebagai diagnosis untuk menyesuaikan pengalaman belajar secara berkesinambungan dalam bingkai belajar sepanjang hayat (life-long-continuing education); e) Pendidik yang berfungsi sebagai fasilitator memberi keleluasaan dan mendorong
munculnya
kemajemukan
dalam
perspektif
dan
skema
pengorganisasian pengetahuan dan kemampuan sehingga pengetahuan atau keterampilan yang dikuasai peserta didik kaya akan konteks.
Berdasarkan uraian tersebut, Purnamawati (2011) membagi beberapa model pembelajaran yang dapat diterapkan dalam pembelajaran pendidikan vokasi, yaitu, a) Pembelajaran peserta didik aktif; b) Pembelajaran dengan pendekatan kontekstual; c) Pembelajaran kooperatif dan kolaboratif; d) Pembelajaran discovery-learning ; e) Pembelajaran tematik (proyek/tugas); f) Pembelajaran problem-solving .
Pembelajaran di laboratorium (pembelajaran praktik) merupakan salah satu cara mengembangkan Competency-Based Training (CBT). Pembelajaran praktik di laboratorium pada pendidikan vokasi bertujuan untuk mengembangkan kompetensi atau kemampuan peserta didik dalam keterampilan manual dan kemampuan berpikir kreatif, memecahkan masalah, dan membuat keputusan. Dengan demikian CBT merupakan salah satu alternatif pembelajaran dan pelatihan dalam mengembangkan kompetensi (Purnamawati 2011). Larson (1972) Leighbody & Kidd (1968) dalam Purnamawati
(2011)
menjelaskan
pola
yang
dapat
menjadi
tuntutan
dosen/guru/instruktur dalam menyampaikan pembelajaran berbasis praktik, yaitu: (1) persiapan, meliputi persiapan guru dan motivasi belajar siswa untuk menerima pelajaran; (2) presentasi; (3) aplikasi; dan (4) pengujian (evaluasi).
5
E. Daftar Pustaka
Hartiningtyas L., Purnomo, Elmunsyah H., 2016. Meningkatkan kompetensi pedagogik
dan
professional
guru
SMK
melalui
pemberdayaan
pengembagan keprofesian berkelanjutan (PKB). Seminar Nasional Pendidikan. Hal 79-88. Kartini T., 2011. Faktor-faktor yang mempengaruhi kompetensi professional guru di SMK Negeri 1 Losarang Kabupaten Indramayu [Tesis]. Program Pascasarjana, Kekhususan Administrasi dan Kebijakan Pendidikan, Universitas Indonesia. 159 Hal. Mulyawan B., 2013. Pengaruh pengalaman dalam pelatihan terhadap peningkatan kompetensi profesional guru. Jurnal Ilmiah Ilmu Sosial, 11(1): 45-65 Purnamawati, 2011. Peningkatan kemampuan pelatihan berbasis kompetensi (competency-based training ) sebagai suatu proses pengembangan pendidikan vokasi. Jurnal MEDTEK 3(2): 13 halaman. Salim S., 2014. Upaya peningkatan kompetensi professional guru sekolah kejuruan. Prosiding Pedagogika FIP Universitas Negeri Gorontalo. 10 Hal. Tautan: http://repository.ung.ac.id/karyailmiah/show/243/upaya-peningkatankompetensi-profesional-guru-sekolah-kejuruan.html [diakses 18 Juli 2017] Silitonga P., 2007. Perbandingan penerapan sistem sertifikasi kompetensi di Indonesia dan di Negara-Negara lain. Panorama Nusantara 2 (1): 57-65 Slameto, 2014. Permasalahan-permasalahan terkait dengan profesi Guru SD. Scholaria 4(3): 1-12.
6
BAB 2 MELAKUKAN KOMUNIKASI KERJA TIMBAL BALIK Kode Unit: (LOG.OO01.001.01) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Melakukan Komunikasi Kerja Timbal Balik ” adalah salah satu unit kompetensi mengenai keahlian melakukan bentuk komunikasi spsesifik di lingkungan tempat kerja. Cakupan target komunikasi yang dibahas adalah pekerja dalam kelompok, dan pekerja di luar kelompok. Bentuk komunikasi adalah informasi pokok dan informasi pendukung dalam tujuan mencapai hasil kerja yang ditetapkan sebelumnya.
Tujuan uraian materi ini adalah agar para peserta dapat ikut aktif berperan dalam kelompok untuk menghasilkan kesepakatan solusi kerja dan merepresentasikan solusi tersebut menuju pihak di luar kelompok kerja. Pendekatan pembelajaran yang digunakan untuk pendalaman materi unit kompetensi ini diantaranya adalah dapat diawali dengan metode ceramah dan dapat ditambahkan kerja kelompok sebagai metode untuk memastikan pemahaman melaksanakan komunikasi kerja timbal-balik.
Adapun urutan penyampaian materi adalah dimulai pembahasan materi dasar komunikasi. Dengan tercapainya materi pengertian komunikasi, pembahasan dikerucutkan pada komunikasi dalam organisasi. Setelah bahasan kedua terpenuhi, materi berikutnya diikuti dengan bahasan Media Komunikasi, Bentuk-Bentuk Komunikasi, Urgensi Komunikasi Dalam Organisasi untuk memastikan bahwa peserta mengerti mengenai pentingnya komunikasi timbal-balik di tempat kerja.
7
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi Melakukan Komunikasi Kerja Timbal-Balik, diharapkan dapat:
a) Melaksanakan komunikasi informasi pokok dan pendukung pencapaian hasil kerja. b) Menampilkan partisipasi aktif dalam diskusi kelompok untuk mencapai hasil kerja. c) Mewakili dan melakukan komunikasi pendapat kelompok terhadap pihak eksternal.
C. Ruang Lingkup Unit
Kompetensi
Melakukan
Komunikasi
Kerja
Timbal-Balik,
menunjukkan
kemampuan pekerja untuk melaksanakan sebuah bentuk komunikasi dengan lokasi implementasi dalam ruang lingkup tempat kerja. Komunikasi yang dibahas berisi informasi tentang tugas-tugas, proses serta informasi pendukung lainnya untuk mencapai hasil kerja.
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi Melakukan Komunikasi Kerja Timbal-Balik dijelaskan pada Tabel 2 berikut,
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi (Berdasarkan SKKNI No 240 Tahun 2004) ELEMEN KOMPETENSI
KRITERIA UNJUK KERJA
01 Mengkomunikasikan informasi tentang tugas, proses, peristiwa atau keahlian-keahlian.
1.1 Suatu pilihan teknik komunikasi yang tepat , misalnya telpon, secara langsung, laporan tertulis, sketsa-sketsa dsb, digunakan. 1.2 Pengoperasian ganda yang topik/area dikomunikasikan.
melibatkan
beberapa
1.3 Mendengar dilakukan tanpa terus menerus menginterupsi (memotong) pembicara yang sedang berbicara. 1.4 Pertanyaan-pertanyaan informasi ekstra.
digunakan
untuk mendapatkan
1.5 Sumber-sumber informasi yang benar dikenali.
8
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi (Berdasarkan SKKNI No 240 Tahun 2004) ELEMEN KOMPETENSI
KRITERIA UNJUK KERJA
1.6 Informasi dipilih dan diurutkan dengan tepat. 1.7 Laporan lisan dan tertulis dilakukan bila perlu.
02 Berpartisipasi dalam diskusi kelompok untuk mencapai hasil-hasil kerja yang tepat.
03 Mewakili pandangan kelompok terhadap orang lain.
1.8 Komunikasi didemonstrasikan baik dalam situasi akrab maupun tidak akrab dan untuk individu dan kelompok yang akrab maupun tidak akrab. 2.1 Tanggapan-tanggapan dicari dan diberikan untuk orangorang dalam kelompok. 2.2 Kontribusi yang membangun dibuat berkenaan dengan proses produksi terkait. 2.3 Cita-cita dan tujuan dikomunikasikan. 3.1 Pandangan, pendapat orang lain dimengerti dan digambarkan dengan akurat..
E. Kontekstualisasi Unit ini meliputi kompetensi kompetensi yang dibutuhkan dalam situasi dimana karyawan harus melakukan tugas secara kolektif misalnya: tiga atau empat pasangan bekerja sama untuk merakit suatu produk, seorang juru trampil yang harus menghadiri panggilan layanan, atau suatu kelompok pekerja proses yang melakukan tugas yang mirip satu dengan yang lainnya. Unit ini menganggap bahwa kelompok secara formal tidak harus dirancang sebagai suatu unit kerja kohesif yang permanen oleh manajemen. Kriteria kinerja menyatakan bahwa teknik berikut ini dapat digunakan sebagai pokok komunikasi dalam unit ini, misalnya: sketsa, gambar, jadwal produksi: mesin tertulis atau instruksi kerja: instruksi nasabah. Aplikasi dalam unit ini dikebanyakan tempat kerja akan memerlukan tingkat kemampuan dasar dalam berbicara, membaca dan menulis dalam bahasa Inggris begitupun numerik (berhitung) dasar. Numerik dasar berarti kemampuan untuk melakukan aritmetika sederhana dengan menggunakan empat aturan, penambahan, pengurangan, perkaliandan pembagian. Meskipun demikian unit ini tidak mengacu pada kompetensi bahasa Inggris tetapi pada komunikasi. Kemampuan bahasa Inggris seharusnya dinilai secara profesional.
9
F. Uraian Materi PENGERTIAN KOMUNIKASI Komunikasi merupakan proses penyampaian informasi dari satu pihak kepada pihak lain untuk mendapatkan saling pengertian (Wursanto, 2005). Tanpa adanya komunikasi, maka sebuah lembaga akan mengalami kesulitan-kesulitan dalam pengelolaannya dan akan sulit bergerak dalam mencapai tujuan organisasi. Semua organisasi tidak bisa dipungkiri selalu melakukan komunikasi dengan berbagai pihak untuk mencapai tujuannya (Ayatullah, 2003). Berikut beberapa pendapat dari ahli tentang komunikasi, sebagai berikut (Umboh, 2016): 1. Wilbur Schramm Komunikasi merupakan tindakan melaksanakan kontak antara pengirim dan penerima, dengan bantuan pesan; pengirim dan penerima memiliki beberapa pengalaman bersama yang memberi arti pada pesan dan simbol yang dikirim oleh pengirim, dan diterima serta ditafsirkan oleh penerima. 2. Theodore Herbert Komunikasi merupakan proses yang di dalamnya menunjukkan arti pengetahuan dipindahkan dari seseorang kepada orang lain, biasanya dengan maksud mencapai beberapa tujuan khusus. 3. Evertt M. Rogers Komunikasi sebagai proses yang di dalamnya terdapat suatu gagasan yang dikirimkan dari sumber kepada penerima dengan tujuan untuk merubah perilakunya. 4. Concise Oxford Dictionary Tindakan menyampaikan, terutama berita, atau ilmu dan praktek transmisi informasi. Definisi ini jelas menunjukkan hubungan antara pengajaran dan guru komunikasi terus-menerus menanamkan pengetahuan baru, atau transmisi informasi. 5. Robbins and Mukerji Komunikasi didefinisikan sebagai „the transference and understanding of meaning‟ (proses pengiriman dan penerimaan pesan). Jadi, dapat dikatakan bahwa komunikasi adalah proses transfer informasi dari suatu pihak ke pihak lain melalui alat-alat berupa simbol-simbol yang penuh arti. Pengertian “transfer” melibatkan lebih
dari
sekedar
kata-kata.
Berbicara,
menulis,
menggambar,
tetapi
gerakgerik/isyarat juga merupakan bagian dari komunikasi. 10
KOMUNIKASI DALAM ORGANISASI Komunikasi dalam suatu organisasi selalu merupakan komunikasi timbal balik, demi kepentingan semua pihak. Dalam berkomunikasi kita menciptakan persamaan pengertian, ide, pemikiran, dan sikap tingkah laku kita terhadap orang lain. Jadi komunikator dan komunikan mempunyai kesamaan dan kesepakatan pesan sehingga menimbulkan suatu pengertian. Dalam proses komunikasi melibatkan beberapa komponen yaitu (Rahmanto, 2004) adalah Komunikator (sumber), Pesan, Saluran Komunikan (organisasi/publik), dan Efek. Model
proses
komunikasi
yang
ditampilkan
Philip
Kotler
dalam
bukunya Marketing Management (Effendy, 2004), berdasarkan paradigma Harold Lasswell, dapat digambarkan sebagai berikut:
Gambar 1. Model Komunikasi Harold Lasswell
1. Sender , yaitu komunikator yang menyampaikan pesan kepada seseorang atau sejumlah orang. 2. Encoding , yaitu penyandian, yakni proses pengalihan pikiran ke dalam bentuk. lambang. 3. Message, yaitu pesan yang merupakan seperangkat lambing bermakna yang disampaikan oleh komunikator. 4. Media,
yaitu
saluran
komunikasi
tempat
berlalunya
pesan
dari
komunikator kepada komunikan. 5. Decoding ,
yaitu
pengawasandian,
yaitu
proses
dimana
komunikan
menetapkan makna pada lambang yang disampaikan oleh komunikator kepadanya. 6. Receiver , yaitu komunikan yang menerima pesan dari komunikator. 7. Response, yaitu tanggapan, seperangkat reaksi pada komunikan setelah diterpa pesan.
11
8. Feedback ,
yaitu
umpan
balik,
yakni
tanggapan
komunikan
apabila
tersampaikan atau disampaikan kepada komunikator. 9. Noise,
yaitu
gangguan
tak
terencana
yang
terjadi
dalam
proses
komunikasi sebagai akibat diterimanya pesan lain oleh komunikan yang berbeda dengan pesan yang disampaikan oleh komunikator kepadanya.
MEDIA KOMUNIKASI Media dalam ilmu komunikasi dapat diartikan dalam beberapa hal adalah sebagai berikut: Saluran Sarana penghubung dan Alat-alat komunikasi Media dalam organisasi adalah berbagai macam sarana penghubung yang dipergunakan oleh suatu organisasi dalam menjalin komunikasi dengan publik, yaitu publik internal dan publik eksternal untuk membantu pencapaian tujuan (Rahmanto, 2004). Menurut Burch dan Grudnitski dalam Ratminto (2003), kualitas informasi ditentukan oleh tiga faktor, yaitu: relevansi, tepat waktu, dan akurasi.
Tabel 1. Kategori Pemrosesan Informasi Dan Alat Teknologi Informasi Yang Dipakai No. Tugas Pemrosesan Keterangan Alat Teknologi Informasi 1.
Menangkap informasi
2.
Menyampaikan informasi
3.
Menciptakan informasi
4.
Menyimpan informasi
5.
Mengkomunikasikan informasi
Memperoleh informasi pada titik asalnya. Menyajikan informasi dalam bentuk yang paling berguna Memproses informasi untuk memperoleh informasi baru. Menyimpan informasi untuk penggunaan waktu yang akan datang. Menyampaikan informasi kepada orang lain atau ke lokasi lain.
Teknologi input. Misalnya mouse, keyboard, bar code reader Teknologi output . Misalnya screen, printer, speaker.
Teknologi sofware. Misalnya word processing payroll . Expert system teknologi penyimpanan. Misalnya hard disk, CD-ROM , tape.
Teknologi telekomunikasi. Misalnya modem satellite
(Sumber: Wardiningsih, 2009)
12
Menurut Marhaeni Fajar dalam bukunya yang berjudul ilmu komunikasi, teori dan praktik (2009:62) ada beberapa hambatan dalam komunikasi, yaitu : a.
Hambatan dari pengirim pesan, misalnya pesan yang akan disampaikan belum jelas bagi dirinya atau pengirim pesan, hal ini dipengaruhi oleh perasaan atau situasi emosional sehingga mempengaruhi motivasi, yaitu mendorong seseorang untuk bertindak sesuai keinginan, kebutuhan atau kepentingan.
b.
Hambatan dalam penyandian/simbol. Hal ini dapat terjadi karena bahasa yang dipergunakan tidak jelas sehingga mempunyai arti lebih dari satu, simbol yang digunakan antara si pengirim dengan si penerima tidak sama atau bahasa yang dipergunakan terlalu sulit.
c.
Hambatan media, adalah hambatan yang terjadi dalam penggunaaan media komunikasi, misalnya gangguan suara radio sehingga tidak dapat mendengarkan pesan dengan jelas.
d.
Hambatan dalam bahasa sandi. Hambatan terjadi dalam menafsirkan sandi oleh si penerima.
e.
Hambatan dari penerima pesan. Misalnya kurangnya perhatian pada saat menerima/mendengarkan pesan, sikap prasangka tanggapan yang keliru dan tidak mencari informasi lebih lanjut.
Menurut Effendy dalam bukunya yang berjudul dinamika komunikasi (2009) faktorfaktor penghambat komunikasi terdiri dari : a.
Hambatan sosio-antro-psikologis Proses
komunikasi
berlangsung
dalam
konteks
situasional
(situational
context ). Ini berarti bahwa komunikator harus memperhatikan situasi ketika komunikasi dilangsungkan, sebab situasi amat berpengaruh terhadap kelnacaran komunikasi,
terutama
situasi
yang
berhubungan
dengan
faktor-faktor
salah
pengertian
sosiologisantropologis-psikologis. b.
Hambatan semantic salah
ucap
atau
tulis
dapat
menimbulkan
(misunderstanding ) atau salah tafsir (misinterpretation) yang pada gilirannya bisa menimbulkan salah komunikasi (miscommunication). c.
Hambatan mekanis Contoh yang kita alami dalam kehidupan sehari-hari, suara telepon yang tidak jelas, ketika huruf buram pada surat, suara yang hilang-muncul pada pesawat
13
radio, berita surat kabar yang sulit dicari sambungan kolumnya, gambar yang meliuk-liuk pada pesawat televisi, dan lain-lain. d. Hambatan ekologis Hambatan ekologis yang terjadi disebabkan oleh gangguan lingkungan terhadap proses berlangsungnya komunikasi, jadi datangnya dari lingkungan.
BENTUK-BENTUK KOMUNIKASI Ada beberapa bentuk komunikasi yang dipakai dalam menyampaikan informasi, perintah, dan kebijakan yaitu komunikasi vertikal, horsontal, dan diagonal. Disamping bentuk komunikasi tersebut ada juga komunikasi lisan dan tertulis, komunikasi verbal dan non verbal. Komunikasi lisan dan tertulis ini adalah bentuk pesan yang akan disampaikan. Biasanya komunikasi antar pribadi disampaikan secara lisan maupun tertulis. Sebagian besar proses komunikasi dalam organisasi terjadi dalam bentuk ini, banyak anggota organisasi yang menyukai komunikasi lisan karena keakraban yang ditimbulkannya. Komunikasi lisan dan tertulis juga dapat menimbulkan kecermatan dan ketepatan. Dalam komunikasi organisasi pimpinan juga perlu mendengarkan atau mengetahui masukan-masukan atau saran-saran dari bawahan, karena itu komunikasi dari bawahan dapat menunjukkan bahwa pimpinan menghargai karyawan dan mendengarkan serta berinteraksi dengan karyawan sehingga membentuk dasar bagi sebuah komunikasi yang efektif, dan salah satu bentuknya dengan meluangkan waktu untuk pertemuan tatap muka. Dengan adanya komunikasi dari bawahan kepada atasan mana pimpinan dapat mengetahui pertama informasi tentang keberhasilan, kemajuan, dan rencana-rencana mendatang dari para bawahan. Kedua informasi tentang problem-problem pekerjaan yang memerlukan bantuan dari tingkatan lebih atas dalam organisasi. Ketiga Ide-ide untuk perbaikan dalam aktivitas dan fungsi yang berhubungan dengan pekerjaan. Keempat Informasi mengenai perasaan para bawahan tentang pekerjaan atau isu yang berhubungan dengan pekerjaan. Ada beberapa cara yang biasa dipergunakan untuk memperbaiki komunikasi dalam organisasi yaitu. Pertama mengadakan tindak lanjut, teknik ini dilakukan dengan menganggap pesan pimpinan tidak dimengerti, dan sedapat mungkin pimpinan memastikan apakah pesan yang ingin disampaikan sudah benarbenar diterima. Kedua mengatur alur informasi, teknik ini meliputi pengaturan komunikasi untuk menjamin arus informasi yang optimum kepada para pimpinan. Ketiga memanfaatkan 14
umpan balik, umpan balik memberi saluran bagi tanggapan penerima yang memungkinkan pimpinan untuk menentukan apakah pesannya telah diterima dan apakah menghasilkan tanggapan yang dimaksud. Keempat empati. empati lebih berorientasi peda penerima daripada berorientasi pada komunikator. Bentuk komunikasi sebagian besar harus tergantung dari apa yang diketahui tentang penerima. Empati mengharuskan para komunikator untuk menempatkan diri mereka ke dalam diri penerima dengan maksud untuk mengetahui sebelumnya bagaimana pesan itu akan diuraikan sandinya. Kelima pengulangan, merupakan prinsip belajar yang telah diterima. umum, menggunakan pengulangan atau ungkapan yang berlebih-lebihan di dalam komunikasi menjamin bahwa jika satu bagian dari pesan itu tidak dimengerti, maka masih ada bagian lain yang membawa pesan yang sama. Keenam mendorong saling mempercayai, suasana saling mempercayai antara pimpinan dan bawahan dapat memperlancar komunikasi. Ketujuh pengaturan waktu yang efektif, komunikasi yang efektif dapat dimudahkan dengan penetapan waktu yang
tepat
mengenai
pengeluaran
pengumuman
penting.
Kedelapan
menyederhanakan bahasa, bahasa yang rumit merupakan hambatan utama bagi komunikasi yang efektif, pimpinan harus ingat bahwa komunikasi yang efektif meliputi pengertian dan juga informasi (Ivancevich, 2006). Dalam proses komunikasi antar pribadi, kita tidak selalu harus bertatap muka dengan orang lain, dengan menggunakan media komunikasi berupa telepon, internet, maupun telepon genggam kita juga bisa melakukan proses komunikasi antar pribadi. Komunikasi
antar-pribadi
dengan
alat
elektronik
sebagai
medianya
dapat
menimbulkan banyak efek yang akan terjadi. Soekanto yang mengutip pendapat
Kingsley David dalam Liliweri (1997:63) mengemukakan: “Apabila dengan perkembangan teknologi dewasa ini, manusia dapat berhubungan satu dengan yang lain melalui telepon, telegrap, radio, surat kabar sehingga tidak memerlukan hubungan badaniah; maka manusia modern tidak membutuhkan kontak sebagai syarat utama dalam memulai hubungan antar pribadi.” Pembicaraan yang dilakukan secara face to face memiliki kualitas yang lebih baik ketimbang menggunakan media komunikasi, karena kecil kemungkinan terjadinya miss communication, akan tetapi dengan adanya kehadiran smartphone masyarakat bisa berkomunikasi dengan mudah dan praktis. Hal ini menjadi menarik untuk dibahas mengingat fenomena yang terjadi adalah makin banyak masyarakat dengan banyaknya aktivitas dalam
15
kesehariannya
serta
kebutuhan
untuk
terus
berkomunikasi
sehingga
tidak
memungkinkan untuk selalu berkomunikasi secara tatap muka. DePorter dan Hernacki (1999) mengemukakan tiga jenis gaya belajar berdasarkan modalitas yang digunakan individu dalam memproses informasi ( perceptual modality ). Ketiga gaya belajar tersebut adalah gaya belajar visual, auditorial, dan kinestetik. Orang yang memiliki gaya belajar visual , belajar dengan menitikberatkan ketajaman penglihatan. Artinya, bukti-bukti konkret harus diperlihatkan terlebih dahulu agar mereka paham. Ciri-ciri orang yang memiliki gaya belajar visual adalah kebutuhan yang tinggi untuk melihat dan menangkap informasi secara visual sebelum mereka memahaminya. Konkretnya, yang bersangkutan lebih mudah menangkap pelajaran lewat materi bergambar. Orang yang memiliki gaya belajar auditory , belajar dengan mengandalkan pendengaran untuk bisa memahami sekaligus mengingatnya. Karakteristik model belajar ini benar-benar menempatkan pendengaran sebagai alat utama untuk menyerap informasi atau pengetahuan. Artinya, untuk bisa mengingat dan memahami informasi tertentu, yang bersangkutan haruslah mendengarnya lebih dulu. Mereka yang memiliki gaya belajar ini umumnya susah menyerap secara langsung informasi dalam bentuk tulisan, selain memiliki kesulitan menulis ataupun membaca. Orang yang memiliki gaya belajar kinestetik, mengharuskan individu yang bersangkutan menyentuh sesuatu yang memberikan informasi tertentu agar ia bisa mengingatnya.
URGENSI KOMUNIKASI DALAM ORGANISASI Pentingnya komunikasi dalam kehidupan manusia telah diteliti, dan hasilnya menakjubkan: ”Dari total waktu yang digunakan 75 -90% digunakan dalam proses komunikasi, terdiri dari 5% untuk menulis, 10% untuk membaca, 35% untuk bicara, 50% untuk mendengar (Umboh, 2016). Komunikasi memiliki peranan penting, terutama pada konteks komunikasi di tempat kerja. Dalam komunikasi organisasi, setiap
individu
dalam
organisasi
tersebut
mendapatkan
komunikasi
untuk
menjalankan fungsi dan tugas masing-masing. Komunikasi tersebut dikelola dengan Komunikasi Internal (Effendy, 2004). Menurut Efendi dalam Wonodiharjo (2014) Komunikasi kelompok merupakan komunikasi yang berlangsung antara seorang komunikator dengan sekelompok orang yang jumlahnya lebih dari dua orang. Komunikasi kelompok kecil memiliki beberapa karakterisitik, yaitu mempermudah personaliti kelompok, pertemuan ramah tamah, 16
kekompakkan, komitmen terhadap tugas, adanya norma kelompok yang saling bergantung satu sama lain. Proses komunikasi yang terjadi pada kelompok kecil berlangsung secara dialogis. Efendi dalam Wonodiharjo (2014) secara teoritis mengungkapkan dalam komunikasi untuk membedakan komunikasi kelompok kecil dari komunikasi kelompok besar tidak didasarkan pada jumlah komunikan dalam hitungan matematik, melainkan pada kualitas proses komunikasi.
G. Aktivitas Pembelajaran Metode pembelajaran yang dapat digunakan dalam kegiatan pembelajaran unit kompetensi Melakukan Komunikasi Kerja Timbal-Balik diantaranya adalah sebagai berikut: 1. Ceramah (Teacher based Learning ) 2. Kerja Kelompok (Cooperative Learning ) a. Kelompok I : case study melibatkan unsur yang ada di dalam sebuah tim untuk memecahkan solusi secara bersama-sama. b. Kelompok II: simulasi pembentukan organisasi sederhana dalam sebuah kelompok c. Kelompok III: simulasi penyampaian informasi melalui media email, aplikasi smartphone, dan lain-lain
17
H. Latihan/Kasus/Tugas Berilah tanda silang (X) pada huruf a, b, c, dan d pada jawaban yang Anda anggap paling benar. 1. Di bawah ini yang bukan termasuk mode komunikasi adalah………. a. Menghitung b. Berbicara c. Menulis d. Mendengar 2. Komunikasi adalah hal penting bagi manusia dalam berinteraksi dengan sesama dan lingkungan. Dari total waktu yang digunakan mana dari moda komunikasi berikut yang terkecil sampai dengan yang terbesar persentasenya antara lain: a. Menulis, berbicara, membaca, dan mendengar b. Mendengar, membaca, berbicara, dan menulis c. Menulis, membaca, berbicara, dan mendengar d. Mendengar, berbicara, membaca, dan menulis 3.
Definisi komunikasi menurut Robbins and Mukerji adalah: a. Komunikasi merupakan tindakan melaksanakan kontak antara pengirim dan penerima, dengan bantuan pesan b. Komunikasi merupakan
proses yang
di
dalamnya menunjukkan arti
pengetahuan dipindahkan dari seseorang kepada orang lain, biasanya dengan maksud mencapai beberapa tujuan khusus. c. Menulis Tindakan menyampaikan, terutama berita, atau ilmu dan praktek transmisi informasi.Definisi ini jelas menunjukkan hubungan antara pengajaran dan guru komunikasi terus-menerus menanamkan pengetahuan baru, atau transmisi informasi. d. Komunikasi didefinisikan sebagai “ the transference and understanding of meaning‟ (proses pengiriman dan penerimaan pesan).
18
4. Berdasarkan gambar model komunikasi berikut:
Nama komponen komunikas “encoding” dan “decoding” , berada pada nomor: a. 1 dan 7 b. 9 dan 8 c. 3 dan 4 d. 2 dan 6 5. Berdasarkan gambar model komunikasi berikut:
Nama komponen komunikas “umpan balik” dan “respon” , berada pada nomor: a. 1 dan 7 b. 9 dan 8 c. 3 dan 4 d. 2 dan 6
19
6.
Berdasarkan gambar model komunikasi berikut:
Nama komponen komunikas “pesan” dan “media” , berada pada nomor: a. 1 dan 7 b. 9 dan 8 c. 3 dan 4 d. 2 dan 6 7. Di bawah ini Menurut Burch dan Grudnitski dalam Ratminto (2003), kualitas informasi ditentukan oleh tiga faktor, yaitu: a. Relevansi, tepat waktu, dan akurasi b. Relevansi, evaluasi, dan akurasi c. Evaluasi, proposisi, dan akurasi d. Relevansi, proposisi, dan akurasi 8. Sebutkan bentuk komunikasi yang menimbulkan keakraban adalah: a. Lisan b. Tertulis c. Lisan dan Tertulis d. Verbal dan Non Verbal 9. Di dalam hambatan komunikasi yang bersifat akan menghasilkan akibat: a. Misunderstanding dan Misinterpretation b. Miscommunication, Misinterpretation, dan Misunderstanding c. Misinterpretation d. Misunderstanding 10. Di bawah ini yang bukan hambatan komunikasi adalah: a. Ekologis b. Psikologis c. Psikis d. Mekanis
20
Soal ESSAY 1.
Apakah yang dimaksud dengan komunikasi menurut: a. Concise Oxford Dictionary b. Theodore Herbert c. Robbins and Mukerje
2. Sebutkan dan Jelaskan masing-masing gambar di bawah ini untuk nomor 2 dan 6?jelaskan?
3. Sebutkan moda komunikasi secara berurutan berdasarkan prosentase dari kecil ke prosentase besar?jelaskan? 4. Sebutkan tiga jenis gaya belajar menurut DePorter dan Hernacki (1999) mengemukakan
berdasarkan
modalitas
yang
digunakan
individu
dalam
memproses informasi ( perceptual modality )?jelaskan? 5. Sebutkan bentuk-bentuk Komunikasi yang dipakai untuk mengirimkan informasi, perintah, dan kebijakan? 6. Apakah yang dimaksud dengan komunikasi kelompok?jelaskan? 7. Sebutkan minimal 5 (lima) hambatan-hambatan komunikasi? 8. Komunikasi yang efektif adalah bertatap muka secara langsung (face to face). Jelaskan apakah makna tersebut sesuai dengan berkembangnya teknologi komunikasi? 9. Apakah
bentuk
komunikasi
yang
dapat
menimbulkan
suasana
keakraban?jelaskan? 10. Sebutkan beberapa cara untuk memperbaiki komunikasi?
21
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini.
Umpan Balik:
Tindak Lanjut:
22
J. Kunci Jawaban Latihan/Kasus/Tugas Kunci jawaban untuk soal latihan sub subbab H disajikan pada Tabel x berikut: Tabel x. Kunci Jawaban soal latihan sub subbah H (Halaman x) No.
Jawaban
No.
Jawaban
1.
A
6.
C
2.
C
7.
A
3.
D
8.
A
4.
D
9.
B
5.
B
10.
C
dst
dst
Cocokkanlah jawaban anda dengan kunci jawaban di atas. Hitunglah jumlah jawaban anda yang benar, kemudian gunakanlah rumus di bawah ini untuk megetahui tingkat penguasaan anda terhadap materi pada modul ini (Tabel xx).
Rumus:
× 100 % = ℎ ℎ Tabel xx. Arti tingkat penguasaan yang dicapai berdasarkan hasil latihan Nilai
Makna
90 % - 100 %
Excellent
80 % - 89 %
Very Good
70 % - 79 %
Good
69
Less
%
23
Kunci jawaban soal essay? 1. a. Tindakan menyampaikan, terutama berita, atau ilmu dan praktek transmisi informasi. Definisi ini jelas menunjukkan hubungan antara pengajaran dan guru komunikasi terus-menerus menanamkan pengetahuan baru, atau transmisi informasi. b. Komunikasi
merupakan
proses
yang
di
dalamnya menunjukkan
arti
pengetahuan dipindahkan dari seseorang kepada orang lain, biasanya dengan maksud mencapai beberapa tujuan khusus. c. Komunikasi didefinisikan sebagai “ the transference and understanding of meaning‟ (proses pengiriman dan penerimaan pesan). 2. Nomor 2 adalah encoding , yaitu penyandian, yakni proses pengalihan pikiran ke dalam
bentuk
lambang.
Sedangkan
nomor
6
adalah
Decoding , yaitu
pengawasandian, yaitu proses dimana komunikan menetapkan makna pada lambang yang disampaikan oleh komunikator kepadanya. 3. 5%
untuk
menulis,
10%
untuk
membaca,
35%
untuk
bicara,
50% untuk mendengar. 4.
Gaya belajar visual, auditorial, dan kinestetik. Orang yang memiliki gaya belajar visual , belajar dengan menitikberatkan ketajaman penglihatan. Orang yang memiliki gaya belajar auditory , belajar dengan mengandalkan pendengaran untuk bisa memahami sekaligus mengingatnya. Orang yang memiliki gaya belajar kinestetik, mengharuskan individu yang bersangkutan menyentuh sesuatu yang memberikan informasi tertentu agar ia bisa mengingatnya.
5.
Komunikasi vertikal, komunikasi horisontal, komunikasi diagonal, komunikasi verbal, dan non verbal.
6.
Komunikasi kelompok merupakan komunikasi yang berlangsung antara seorang komunikator dengan sekelompok orang yang jumlahnya lebih dari dua orang.
7. Menurut Marhaeni Fajar ada beberapa hambatan dalam komunikasi, yaitu : a. Hambatan dari pengirim pesan, b. Hambatan dalam penyandian/simbol. c. Hambatan media, d. Hambatan dalam bahasa sandi. e. Hambatan dari penerima pesan. Menurut Effendy dalam bukunya yang berjudul dinamika komunikasi (2009) faktor-faktor penghambat komunikasi terdiri dari : 24
a. Hambatan sosio-antro-psikologis b. Hambatan semantic c. Hambatan mekanis d. Hambatan ekologis 8. Mengutip pendapat Kingsley David “apabila dengan perkembangan teknologi dewasa ini, manusia dapat berhubungan satu dengan yang lain melalui telepon, telegrap, radio, surat kabar sehingga tidak memerlukan hubungan badaniah; maka manusia modern tidak membutuhkan kontak sebagai syarat utama dalam memulai hubungan antar pribadi.” 9. Sebagian besar proses komunikasi dalam organisasi terjadi dalam bentuk lisan dan tertulis ini. Banyak anggota organisasi yang menyukai komunikasi lisan karena keakraban yang ditimbulkannya. Komunikasi lisan dan tertulis juga dapat menimbulkan kecermatan dan ketepatan. 10. Pertama, mengadakan tindak lanjut. Kedua, mengatur alur informasi. Ketiga, memanfaatkan umpan balik. Keempat, empati. Kelima, pengulangan. Keenam, mendorong saling mempercayai. Ketujuh, pengaturan waktu yang efektif. Kedelapan, menyederhanakan Bahasa.
25
K. Daftar Pustaka Ayatullah, A., & Ishak, F. 2003. Komunikasi dan Organisasi. Yogyakarta: Fakultas Ekonomi, Universitas Muhammadiyah. De Porter, B.& Hernacki, M. 1999. Quantum Learning: Membiasakan Belajar Nyaman dan Menyamankan. (Penerjemah Alwiyah Abdurrahman). Bandung: Kaifa Effendy, Uchjana Onong. 2004. Ilmu Komunikasi Teori dan Praktek. Bandung: PT. Remaja Rosdakarya. ____________________. 2009. Dinamika Komunikasi. Bandung: PT. Remaja Rosdakarya. ____________________. 2011. Ilmu Komunikasi Teori dan Praktek. Bandung: Remaja Rosdakarya. Fajar, Marhaeni. 2009. Ilmu Komunikasi Teori & Praktek Edisi Pertama. Yogyakarta: GrahaI lmu Ivancevich, John M. 2006. Perilaku dan Manajemen Organisasi. Jakarta: Erlangga. Rahmanto, Aris Febri. 2004. Peranan Komunikasi Dalam Suatu Organisasi. Jurnal Komunikologi 1 (2): 59-75 Umboh, Willy. 2016. Bahan Bacaan Teknik Komunikasi Efektif Dalam Pembelajaran. Kementerian Pendidikan Nasional Wardiningsih, Suprihatmi Sri. 2009. Perkembangan Teknologi Dan Sistem Informasi Untuk Peningkatan E-Government Dalam Pelayanan Publik. Jurnal Akuntansi dan Sistem Teknologi Informasi 7 (1): 69-78 Wonodiharjo, Felicia. 2014. Komunikasi Kelompok Yang Mempengaruhi Konsep Diri
Dalam Komunitas Cosplay “COSURA” Surabaya . Jurnal E-Komunikasi 2 (3): 1-10 Wursanto, I. 2005. Dasar-dasar Ilmu Organisasi. Yogyakarta: CV. Andi Offset.
26
BAB 3 MENGGUNAKAN STRUKTUR DATA Kode Unit: (J.620100.004.01) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Menggunakan Struktur Data ” adalah salah satu dasar keahlian yang harus dipunyai oleh setiap pelaku teknologi informasi diantaranya yaitu programmer dan database administrator . Tujuan uraian materi ini adalah agar para peserta dapat memahami kompetensi, pengetahuan dan sikap kerja yang diperlukan dalam mempelajari dan membuat struktur data yang akan diterapkan pada pemrograman, tanpa tergantung bahasa pemrograman yang akan dipakai. Pendekatan pembelajaran yang digunakan untuk pendalaman materi unit kompetensi ini diantaranya adalah dapat dilakukan dengan metode ceramah, dengan pendalaman materi lebih maksimal dengan kegiatan praktik. Uraian materi dimulai dengan penjelasan konsep tentang struktur data meliputi pengenalan operasi yang terdapat dalam struktur data. Selanjutnya akan dibahas mengenai algoritma yang digunakan untuk menyusun struktur data dan implementasinya dalam bentuk flowchart dan kodekode baris program.
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi menggunakan struktur data, diharapkan dapat: a. Mengidentifikasi konsep data dan struktur data. b. Menentukan struktur data dan akses terhadap struktur data tersebut.
C. Ruang Lingkup Unit kompetensi Menggunakan Struktur Data digunakan untuk mengimplementasikan algoritma tanpa tergantung bahasa program yang akan dipakai, agar sebuah program dapat berjalan dengan baik, efisien dan sesuai dengan output yang diharapkan. Unit ini adalah salah satu kemampuan dasar yang harus dimiliki oleh seorang pengembang developer bidang rekayasa perangkat lunak. 27
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi Menggunakan Struktur Data dijelaskan pada Tabel 2 berikut,
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi Menggunakan Struktur Data (Berdasarkan SKKNI 282 Tahun 2016) No 1.
2.
Elemen Kompetensi
No
Mengidentifikasi konsep data dan
1.1
struktur data
1.2
Menerapkan struktur data dan akses terhadap struktur data tersebut
2.1
2.2
Kriteria Unjuk Kerja Konsep data dan struktur data diidentifikasi sesuai denga konteks permasalahan Alternatif struktur data dibandingkan kelebihan dan kekurangannya untuk konteks permasalahan yang diselesaikan. Struktur data diimplementasikan sesuai dengan bahasa pemrograman yang akan dipergunakan. terhadap data dinyatakan dalam algoritma yang efisiensi sesuai bahasa pemrograman yang akan dipakai. Akses
E. Kontekstualisasi Batasan variabel dalam kegiatan pembelajaran unit kompetensi Menggunakan Struktur Data adalah sebagai berikut (Berdasarkan SKKNI 282 Tahun 2016); 1. Unit ini berhubungan dengan pembuatan struktur data baik yang bersifat statis (array) maupun dinamis (list, stack). 2. Akses terhadap data meliputi proses penambahan, perubahan, penghapusan, pencarian serta pengurutan data. 3. Efisiensi dinyatakan dalam ukuran memori terpakai dan waktu pemrosesan. 4. Struktur Data adalah metode untuk mengorganisasikan data didalam memori komputer, sehingga data dapat diolah secara efisien. 5. Peralatan yang digunakan meliputi: manual bahasa pemrograman dan perangkat lunak pemrograman terkait.
28
F. Uraian Materi 1. Struktur Data Struktur data adalah cara untuk menyimpan atau mengorganisasikan data pada memori ataupun dalam bentuk file pada storage (media penyimpanan) komputer secara efektif, sehingga dapat digunakan fungsi dan operasinya secara baik. Dengan pemilihan struktur data yang baik maka proses yang dilakukan akan berjalan efisien, kebutuhan sumber daya memori yang lebih kecil dan waktu eksekusi yang lebih cepat. Untuk mengimplementasikan struktur data dibutuhkan pengetahuan dan pemahaman menyeluruh tentang algoritma dan logika. Ciri algoritma yang baik menurut Donald E.Knuth adalah:
Input Mempunyai input yang akan diproses sebagai output dalam sebuah algoritma.
Ouput Terdapat output yang dihasilkan dari sebuah algoritma, sesuai dengan alur perencanaan program.
Definite Setiap instruksi dalam algoritma harus ditulis dengan seksama dan pasti, sehingga setiap instruksi harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan karena pemroses dianggap sudah mengerti. Setiap langkah harus jelas dan pasti. Contoh: Tambahkan 1 atau 2 pada x. Instruksi di atas terdapat keraguan.ada kejelasan apa yang dilakukan.
Efective Langkah yang dikerjakan harus efektif, tidak diperbolehkan ada sebuah instruksi yang tidak mungkin dikerjakan oleh pemroses yang menjalankannya. Misal: hitunglah operasi aritmatika 10 dibagi 3 dengan tingkat presisi yang tinggi. Agar lebih efektif maka diganti instruksi tersebut menjadi hitunglah operasi aritmatika 10 dibagi 3 sampai hasilnya 4 digit dibelakang koma.
Terminate Langkah harus mempunyai kemungkinan untuk berhenti secara jelas, sehingga sebuah proses tidak akan mengalami iterasi (perulangan) secara terus menerus, yang akan menyebabkan kegagalan sistem.
29
Untuk merancang sebuah algoritma, diperlukan sebuah simbol-simbol yang dapat merepresentasikan fungsi dan aliran tahapan proses atau yang lebih dikenal dengan flowchart , agar algoritma tersebut terdokumentasikan dengan baik sehingga dapat digunakan secara general oleh semua pengguna, baik itu untuk implementasi kedalam program atau pengembangan sebuah algoritma. Adapun beberapa simbol flowchart tersebut terbagi menjadi:
a.
Flow Direction S ymbols Yaitu, simbol yang dipakai untuk menghubungkan antara simbol yang satu dengan simbol lainnya atau disebut juga connecting line seperti pada tabel 2.1
Tabel 2.1 Flow Direction Symbols Simbol
Arti
Keterangan
Arus / Flow
Penghubung antara prosedur / proses
Konektor
Simbol keluar / masuk prosedur atau proses dalam lembar / halaman yang sama Simbol keluar / masuk prosedur atau proses dalam lembar / halaman yang lain
Konektor offline
b. Proces s ing S ymbols Merupakan simbol yang menunjukkan jenis operasi pengolahan dalam suatu prosedur seperti pada tabel 2.2
30
Tabel 2.2 Processing Symbols Simbol
Arti Proses
Simbol yang menunjukkan pengolahan yang dilakukan Komputer
Kondisi Percabangan
Simbol untuk kondisi yang akan menghasilkan beberapa kemungkinan jawaban / aksi
Pendefinisian sebelum proses
Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempat pengolahan didalam storage Simbol untuk permulaan atau akhir darti suatu program
Terminal
Manual Input
c.
Keterangan
Simbol untuk pemasukan data secara manual on-line keyboard
Input Output Symbols Simbol yang dipakai untuk menyatakan jenis peralatan yang digunakan sebagai media input atau output seperti pada tabel 2.3
Tabel 2.3 Input Output Symbols
Simbol
Arti
Keterangan
Input-Output
Simbol yang menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya
Dokumen
Simbol yang menyatakan input berasal dari dokumen dalam bentuk kertas atau output di cetak dikertas
Penyimpanan
Simbol untuk menyatakan input berasal dari disk atau output di simpan ke disk
31
2. Operasi dalam Struktur Data Beberapa operasi standar yang sering digunakan dalam struktur data adalah array dan record, list dan tree. Berikut penjelasan dari masing-masing operasi ter sebut a. Array dan Record Array dan Record baik itu satu dimensi ataupun lebih adalah representasi data dalam bentuk pengalokasian ruang memori secara terbatas dengan cara pendeklarasian variabel beserta tipe data yang mempunyai indeks. Ilustrasi bentuk penyimpanannya pada ruang memori adalah seperti pada gambar 2.1 dan 2.2
Gambar 2.1 Ilustrasi array dan record 1(satu) dimensi
Gambar 2.2 Ilustrasi array dan record 2(dua) dimensi
32
Contoh listing program untuk inisialisasi array 1(satu) dimensi dan menampilkan datanya menggunakan kode java adalah seperti listing 2.1
Listing 2.1 Array 1(satu) dimensi
Contoh listing program untuk inisialisasi array 2(dua) dimensi dan menampilkan datanya menggunakan kode java adalah seperti listing 2.2
Listing 2.2 Array 2(dua) dimensi
33
b. Linked List Linked List adalah pengalokasian data pada ruang memori dengan cara dinamis yaitu tanpa deklarasi awal ukuran memori, sehingga proses kerja lebih fleksibel. Berbeda dengan array yang harus selalu dipastikan diawal program untuk pengalokasian memori. Linked list menggunakan ketersediaan ruang memori yang tersisa. Penggunaan linked list dapat memudahkan programmer untuk menyimpan data kapanpun saat dibutuhkan. Seringkali dalam penggunaan array, ukuran yang dibutuhkan melebihi dari kegunaan program yang digunakan atau sebaliknya, sehingga hal ini dirasa kurang efektif, maka linked list adalah sebuah struktur data yang dapat menutupi kelemahan tersebut. Cara kerja linked list menyerupai seorang kondektur yang melakukan pengecekan tiket di kereta api, jadi bergerak dari kepala (head) gerbong, bergerak urut satu persatu ke gerbong selanjutnya sampai pada ekor (tail) gerbong. Hal tersebut merupakan kelemahan jika dibandingkan dengan array yang ketika dilakukan pengaksesan data, maka pointer dapat langsung menuju ke lokasi yang diinginkan. Setiap elemen yang terdapat pada linked list terdiri dari 2 bagian yaitu data dan pointer. Gambar ilustrasi tentang linked list adalah seperti gambar 2.3
Gambar 2.3 Ilustrasi linked list
34
Contoh implementasi linked list dalam kode java seperti pada listing 2.3
Listing 2.3 Contoh linked list
c. Tree Tree adalah bentuk representasi data seperti pohon dimana terdiri dari kumpulan beberapa node dan saling terhubung dengan satu sama lain dalam satu kesatuan. Tree terdiri dari satu simpul akar dan elemen-elemen lain adalah bagian pohon yang memiliki struktur hierarki. Ilustrasi struktur data dalam bentuk tree dengan contoh kasus pengambilan keputusan untuk kredit adalah seperti pada gambar 2.4
35
Gambar 2.4 Ilustrasi representasi tree untuk keputusan pengambilan kredit.
G. Aktivitas Pembelajaran 1. Jalankan Java IDE(Integrated Development Environment) yang telah terpasang di laptop atau PC (personal computer) anda seperti Netbeans, Eclipse, Gel dan lainlainnya (dalam modul ini menggunakan netbeans). Jika prosesnya berhasil dilakukan maka akan tampil Netbeans Window seperti gambar 2.5
Gambar 2.5 Netbeans Window
36
2. Kemudian lakukan pembuatan project baru dengan melakukan klik pada menu file
new project seperti pada gambar 2.6, dan akan tampil dialog form untuk
mengisi parameter yang akan dibuat dalam project seperti pada gambar 2.7
Gambar 2.6 Pembuatan Project baru
Gambar 2.7 Dialog Form Pembuatan Project
3. Untuk melakukan praktek pada modul ini, pastikan untuk memilih “Java” pada list Categories dan “Java Application” pada list Projects. Lanjutkan dengan melakukan klik pada tombol “Next”, dan akan tampil dialog form seperti pada gambar 2.8
37
Gambar 2.8 Dialog Form pengisian Nama Project dan Lokasi Penyimpanan
Keterangan: 1. Project Name
: MyProject
2. Project Location
: Isikan lokasi penyimpanan yang mudah diingat, dengan melakukan klik pada tombol “Browse”.
3. Hilangkan centang pada opsi pilihan “ Create Main Class”.
4. Lanjutkan dengan melakukan klik pada tombol “Finish” dan project baru akan tampil di “Projects” explorer yang secara default terdapat di sisi kiri atas Netbeans seperti pada gambar 2.9
Gambar 2.9 Tampilan Projects Explorer
38
5. Proses selanjutnya adalah membuat class baru dengan cara melakukan klik kanan pada folder “Source Packages” , kemudian pilih “New“ “Java Class” seperti pada gambar 2.10, kemudian akan tampil dialog form seperti pada gambar 2.11
Gambar 2.10 Pembuatan New Java Class
Gambar 2.11 Dialog form Pengisian Nama Class
Keterangan: a. Class Name : Arrayku b. Klik Tombol “Finish”
39
6.
Kemudian ketiklah listing 2.4 pada file Arrayku.java
Listing 2.4 Arrayku 7. Jalankan program Arrayku.java dengan menekan keyboard “Shift + F6”. Amati kemudian lakukan analisa terhadap hasil output !
8. Selanjutnya untuk lebih memahami tentang array , maka ulangi langkah nomor 5, kemudian buatlah sebuah Class dengan nama “InstansiPeserta”, kemudian ketikkan listing 2.5 pada file InstansiPeserta.java
9. Jalankan program InstansiPeserta.java dengan menekan keyboard “Shift + F6”. Amati kemudian lakukan analisa terhadap hasil output !
40
H. Latihan/Kasus/Tugas
1. Buatlah program dengan memanfaatkan Array yang berfungsi untuk mencari nilai terbesar (maximum) dari sekumpulan data bertipe integer! Contoh: Input
20,
1, 19, 89
Output Bilangan Terbesar adalah 89 2. Buatlah program dengan memanfaatkan List yang berfungsi untuk menampilkan data secara 3 tahap! Contoh output : Tahap 1 : Sari, Andi, Neni, Teti, Yeri Tahap 2 : Ayu, Sari, Andi, Neni, Teti, Yeri, Irma Tahap 3 : Sari, Andi, Neni, Teti, Yeri 3. Buatlah program memanfaatkan Array untuk membuat matriks identitas dengan input baris dan kolom! Contoh: Input baris : 3 Input kolom : 3 Output
1 0 0 :0 1 0 0 0 1
4. Buatlah program dengan memanfaatkan Array untuk menghitung penjumlahan dua buah matriks, seperti rumus 2.1
9 ] [46 57] + [32 45] = [78 12
(2.1)
41
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini.
Umpan Balik:
Tindak Lanjut:
42
J. Kunci Jawaban Latihan/Kasus/Tugas 1..
2.
43
3.
44
4.
K. Daftar Pustaka Evans, David, 2011. Introduction to Computing (Explorations in Language, Logic, and Machines), University of Virginia. Weiss, Mark Allen,2012. Data Structures and Algorithm Analysis in Java, United States of America, Addison-Wesley. Lafore, Robert, 2003. Data Structures and Algorithm in Java, Indianapolis Indiana. Nakov Svetlin, Kolev Veselin, 2013. Fundamentals of Computer Programming with C#, Sofia. Bulgaria
45
BAB 4 MELAKUKAN INSTALASI SOFTWARE TOOLS PEMROGRAMAN Kode Unit: (J.620100.011.01) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Melakukan Instalasi S oftware Tools Pemrograman” adalah salah satu unit kompetensi dasar yang harus dikuasai oleh setiap developer aplikasi baik itu skala kecil maupun besar sebagai perangkat untuk mengembangkan aplikasi sesuai dengan perencanaan. Tujuan uraian materi ini adalah agar para peserta dapat menentukan software yang sesuai dengan kebutuhan, melakukan instalasi beserta konfigurasinya dan dapat menerapkan script bahasa pemrograman sederhana sesuai dengan perangkat yang telah dipilih. Pendekatan pembelajaran yang digunakan untuk pendalaman materi unit kompetensi ini diantaranya adalah dapat dilakukan dengan metode praktik, dengan disertai ceramah dan penjelasan-penjelasan singkat. Uraian materi dimulai dengan penjelasan jenis-jenis bahasa pemrograman web, sehingga mendasari untuk pemilihan software aplikasi sesuai kebutuhan pengembangan. Selanjutnya akan dibahas proses cara-cara melakukan instalasi software aplikasi dan penerapan listing pemrograman sederhana untuk memastikan bahwa software yang telah dipilih dapat berjalan baik.
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi
“Melakukan Instalasi S oftware Tools Pemrograman”, diharapkan dapat: a) Mengetahui jenis-jenis bahasa pemrograman, b) Memilih software sesuai dengan kebutuhan pembuatan program, c) Melakukan instalasi software bahasa pemrograman, d) Membuat listing program sederhana
46
C. Ruang Lingkup Unit Kompetensi “Melakukan Instalasi S oftware Tools Pemrograman”, sebagai alat untuk mengukur kemampuan programmer dalam melakukan instalasi di lingkungan pemrograman yang akan digunakan dalam pekerjaan membuat program . Unit kompetensi ini adalah penting karena dianggap sangat mendasar sekali yang akan menentukan keberlanjutan program yang dibuat.
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi
“Melakukan Instalasi S oftware Tools Pemrograman” dijelaskan pada Tabel 2 berikut,
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi Melakukan Instalasi Software Tools Pemrograman (Berdasarkan SKKNI 282 Tahun 2016) No
Elemen Kompetensi
No
Kriteria Unjuk Kerja
1.
Memilih tools pemrograman yang sesuai dengan kebutuhan
1.1
Platform (lingkungan) yang akan digunakan untuk menjalankan tools pemrograman diidentifikasi sesuai dengan kebutuhan. Tools bahasa pemrogram dipilih sesuai dengan kebutuhan dan lingkungan pengembangan Tools pemrogaman ter-install sesuai dengan prosedur Tools pemrograman bisa dijalankan di lingkungan pengembangan yang telah ditetapkan
1.2
2.
Instalasi tool pemrograman
2.1 2.2
3.
Menerapkan hasil pemodelan kedalam eksekusi script sederhana
3.1 3.2
Script (source code) sederhana dibuat sesuai tools pemrogaman yang di-install Script dapat dijalankan dengan benar dan menghasilkan keluaran sesuai skenario yang diharapkan
47
E. Kontekstualisasi Batasan variabel dalam kegiatan pembelajaran unit kompetensi “Melakukan Instalasi S oftware Tools Pemrograman” adalah sebagai berikut (Berdasarkan SKKNI 282 Tahun 2016); 1. Spesifikasi program adalah hasil perancangan program yang dijelaskan dalam bentuk diagram dan deskripsi. 2. Script adalah instruksi-instruksi yang bias dimengerti oleh bahasa pemrograman. 3. Tools seperti: database client program, source code client program, static code analyzer program, obfuscator program, reverse engineering program, IDE dan lain-lain. 4. Peralatan meliputi : Perangkat keras komputer atau mesin sejenis dan Perangkat lunak lingkungan pengembangan. 5. Perlengkapan meliputi : Formulir laporan instalasi tools pemrograman
48
F. Uraian Materi 1. Esensi Program Saat
ini
komputer
menjadi
tidak
tergantikan.
Penggunannya
untuk
memecahkannya masalah kompleks di tempat kerja, mencari petunjuk arah dalam mengemudikan kendaraan dan lain-lain. Saat ini banyak aplikasi di dunia bisnis, industri hiburan, telekomunikasi dan keuangan. Terlepas dari kenyataan bahwa komputer begitu tersebar luas, hanya sedikit orang yang tahu bagaimana cara kerja komputer. Penggabungan antara perangkat keras (hardware) komputer dengan program (software) yang dibuat oleh seorang programmer (brainware) maka komputer dapat membantu aktifitas dan pekerjaan manusia. Untuk dapat membuat sebuah
software maka
dibutuhkannya
kemampuan programming
yaitu
memberikan sekumpulan set instruksi-instruksi yang dikenal oleh mesin komputer melalui bahasa pemrograman.
2. Pemrograman Web Salah satu bahasa program yang paling dibutuhkan saat ini untuk dikuasai adalah bahasa pemrograman berbasis web, seperti HTML(Hypertext Markup Language), Javascript, ASP.Net, PHP, Perl, Confusion, Ruby on Rail dan lain -lain. Penggunaan teknologi web menjadikan semua akses data akan dilakukan menggunakan layanan web server pada jaringan internet, sehingga pertukaran data akan lebih cepat dilakukan tanpa mengenal batas ruang. Selain itu dengan menggunakan teknologi web maka aplikasi dijalankan tanpa melakukan instalasi terlebih dahulu, cukup hanya menggunakan browser web dan koneksi internet.
3. Web S erver Web server adalah merupakan perangkat lunak (software) dalam server yang berfungsi untuk menerima permintaan (request) berupa halaman web melalui protokol HTTP dan atau HTTPS dari client yang lebih dikenal dengan nama browser, kemudian mengirimkan kembali (respon) hasil permintaan tersebut ke dalam bentuk halaman-halaman web yang pada umumnya berbentuk dokumen HTML.
49
Dari pengertian diatas, dapat disimpulkan bahwa web server merupakan pelayan (pemberi layanan) bagi web client (browser) seperti Mozilla, Chrome, Internet Explorer, Opera, Safari dan lain sebagainya, supaya browser dapat menampilkan halaman atau data yang anda minta. Fungsi utama dari web server adalah untuk mentransfer atau memindahkan berkas yang diminta oleh pengguna melalui protokol komunikasi tertentu. Oleh karena dalam satu halaman web biasanya terdiri dari berbagai m acam jenis berkas seperti gambar, video, teks, audio, file dan lain sebagainya, maka pemanfaatan web server berfungsi juga untuk mentransfer keseluruhan aspek pemberkasan dalam halaman tersebut, termasuk teks, gambar, video, audio, file dan sebagainya. Ketika seorang pengguna internet mengakses sebuah halaman website, maka pengguna tersebut akan mengetikka alamat url halaman tersebut di web browser seperti Mozilla Firefox, Google Chrome, Opera, Safari dan lain -lain, yang kemudian akan dilanjutkan menekan tombol enter pada keyboard , maka untuk dapat mengakses halaman tersebut, web browser akan melakukan permintaan ke web server . Pada saat inilah web server mulai menjalankan peran dan tugasnya, web server akan mencarikan data yang diminta browser , lalu mengirimkan data tersebut ke web browser atau menolaknya jika ternyata data yang diminta tidak ditemukan.Ilustrasi tentang arsitektur layanan web terlihat seperti pada Gambar 22
Gambar 22. Ilustrasi layanan web server
50
4. Kebutuhan S oftware. Beberapa kebutuhan software untuk pengembangan aplikasi berbasis web adalah: a. Sistem Operasi Sistem operasi digunakan sebagai penghubung antara perangkat keras komputer dengan perangkat lunak. b. Browser. Browser adalah software yang diperlukan untuk menjalankan program berbasis web seperti Google Chrome, Mozilla Firefox, Internet Explorer, Opera dan lainlain. c. Web Server Salah satu aplikasi yang digunakan sebagai layanan web server adalah Apache, yang sekarang telah dijadikan satu paket bersama aplikasi lain yaitu XAMPP. XAMPP adalah sebuah kumpulan (paket) software yang digunakan untuk pengembangan halaman web. Nama XAMPP adalah kepanjangan dari XML untuk lalu lintas pertukaran data antar platform, Apache sebagai web server yang berfungsi untuk menangani request halaman web, MySQL sebagai aplikasi database, PHP dan Perl sebagai Bahasa pemrograman web. Dengan melakukan instalasi paket software tersebut, maka secara default pengguna otomatis telah melakukan instalasi PHP, MySQL, Apache dan PHPMyAdmin, sehingga pengguna semakin dipermudah, menghemat waktu dan tidak disibukkan dengan pengaturan dan konfigurasi server. d. Editor Editor merupakan software untuk menuliskan instruksi-instruksi atau program yang akan dibuat. Beberapa dari editor yang sering digunakan karena ukuran file yang kecil, cepat, mempunyai fitur syntax highlight sehingga memudahkan programmer untuk membuat program seperti Notepad++, Sublime Text, Komodo dan lain-lain.
5. PHP (PHP Hypertext Preprocessor) PHP adalah bahasa pemrograman berbasis web yang berjalan disisi server (server side) yang berfungsi sebagai interpreter untuk menerjemahkan source code PHP agar dapat dikenali oleh browser dan ditampilkan hasilnya. PHP sampai saat ini telah digunakan secara luas untuk penanganan dan pengembangan web, serta dapat digunakan secara bersamaan dengan HTML. PHP diciptakan oleh Rasmus 51
Lerdorf pada tahun 1994. Script PHP mempunyai ciri khas sebagai tanda pengenal selalu diawali dengan tag pembuka pembuka berupa , ?>, dapat digabungkan dengan script HTML dengan cara meletakkan sebelum tag , , didalam tag tag atau atau sesudah tag . . Bentuk penggabungan script PHP dengan HTML seperti contoh script 2.2 berikut ini.
Script 2.2 2.2 Penulisan script PHP PHP didalam tag
G. AKTIVITAS PEMBELAJARAN 1. Lakukanlah instalasi XAMPP XAMPP dengan cara seperti seperti berikut ini: Pengguna terlebih dahulu harus mengunduh file installer XAMPP XAMPP di situs resmi XAMPP: https://www.apachefriends.org https://www.apachefriends.org.. Setelah terbuka situs tersebut seperti pada gambar 4, kemudian klik pada tombol XAMPP for Windows v7.1.7 (PHP 7.1.7 versi terbaru saat modul ini dibuat), dibuat), sesuaikanlah dengan sistem operasi yang akan digunakan dan simpanlah di drive dan folder komputer yang mudah diingat misalkan “D: \ \Master”.
Gambar 4. Halaman web XAMPP
52
Selanjutnya jalankan file installer yang telah berhasil diunduh, maka akan tampil dialog security warning seperti pada gambar 5, untuk memastikan bahwa file file XAMPP XAMPP berasal dari situs terpercaya.
Gambar 5. Dialog Warning
Berikutnya klik tombol “Run”, jika komputer atau laptop yang digunakan memiliki anti virus yang sedang berjalan, maka akan tampil dialog warning anti anti virus seperti pada gambar 6.
Gambar 6. Dialog warning anti virus
Kemudian klik tombol “ Yes Yes” untuk melanjutkan instalasi XAMPP. Berikutnya adalah klik “Next” pada tampilan dialog setup setup seperti seperti pada gambar 7.
53
Gambar 7. Dialog Setup
Setelah dialog setup tampil, maka proses akan dilanjutkan dengan pemilihan paket komponen software yang akan diinstal. Pada tahap awal hilangkan centang pada komponen yang belum dibutuhkan seperti pada gambar 8, kemudian klik tombol “Next”
Gambar 8. Pilihan paket komponen
Proses instalasi akan dilanjutkan dengan tampilan dialog untuk pemilihan lokasi folder untuk instalasi seperti pada gambar 9.
54
Gambar 9. Dialog pemilihan folder instalasi
Jika proses instalasi secara default , maka folder akan mengarah dilokasi
“C: \XAMPP”, maka langsung klik tombol “Next” dan akan tampil dialog bitnami yang menawarkan untuk Content Management System seperti joomla, drupal dan wordpress seperti pada gambar 10.
Gambar 10. Dialog Bitnami setup
55
Proses berikutnya akan tampil dialog bahwa XAMPP sudah siap untuk dilakukan instalasi seperti pada gambar 11.
Gambar 11. Dialog XAMPP sudah siap diinstal
Kemudian tekan tombol “Next”, maka proses instalasi akan berlangsung seperti pada gambar 12.Tunggulah beberapa menit saat terjadi proses instalasi tergantung pada kecepatan komputer atau laptop masing-masing.
Gambar 12. Proses Instalasi XAMPP
56
2. Lakukan pengecekan bahwa web server telah terinstal dengan benar, yaitu carilah menu Control Panel XAMPP melalui tombol “Start” yang ada pada masing-masing sistem operasi dan carilah menu program XAMPP. Jika menggunakan sistem operasi windows maka akan tampil seperti gambar 13.
Gambar 13. Menu XAMPP
Setelah diklik maka akan tampil Control Panel XAMPP, kemudian aktifkan modul “Apache” dengan klik tombol “Start” pada kolom action, maka hasilnya akan tampil seperti pada gambar 14.
Gambar 14. Control Panel XAMPP
57
Langkah berikutnya adalah membuka browser yang sudah terdapat di laptop seperti Google Chrome, Internet Explorer, Mozilla Firefox dan lain-lain, kemudian ketikkan di kotak url alamat http://localhost maka akan tampil halaman awal XAMPP seperti pada gambar 15.
Gambar 15. Tampilan awal halaman XAMPP
3. Download editor untuk menulis script PHP, jika menggunakan Sublime Editor ketikkan alamat url: https://www.sublimetext.com/download di browser yang ada di PC(Personal Computer ) atau Laptop, maka akan tampil halaman web seperti pada gambar 16.
Gambar 16. Halaman web Sublime editor
58
Setelah halaman web tampil di browser, lanjutkan dengan klik hyperlink Sublime Text 1.4. Simpanlah file setup.exe hasil dari download di drive dan folder komputer yang mudah diingat, misal di “D: \Master”. 4. Langkah berikutnya adalah jalankan file setup.exe yang telah disimpan, maka akan tampil setup form seperti pada gambar 17, dan klik pada tombol “Next”
Gambar 17. Setup form Sublime Text
5. Langkah berikutnya adalah menentukan lokasi folder instalasi, jika memilih default , maka langsung klik tombol “Next” seperti pada gambar 18.
Gambar 18. Pemilihan lokasi folder instalasi
59
6. Proses selanjutnya adalah tampil dialog tasks seperti pada gambar 19, pada tahap ini langsung lakukan klik tombol “Next”.
Gambar 19. Dialog Tasks
7. Dialog Proses instalasi telah siap dilakukan seperti pada gambar 20, jika setting instalasi sudah dirasa benar, maka lakukan klik pada tombol “Install”, tunggulah selama beberapa menit, tergantung dengan kecepatan spesifikasi komputer.
Gambar 20. Proses Instalasi
60
8. Jalankan program “Sublime Text” dengan melakukan klik pada tombol start
all program
Sublime Text seperti pada gambar 21.
Gambar 21. Sublime Text
9. Ketikkan script PHP seperti pada listing 2.1 untuk menampilkan output tulisan di browser “Belajar Basis Data MySQL”. Beri nama file “belajar1.php” kemudian simpan didalam folder web server XAMPP yang telah terinstall. Jika instalasi XAMPP secara default , maka letak lokasi penyimpanannya adalah di
“C: \xampp\htdocs”
Listing 2.1 Output PHP 10. Akses
file
“belajar1.php”
dengan
mengetikkan
di
alamat
url
:
“http://localhost/belajar1.php”, pastikan terlebih dahulu bahwa layanan XAMPP web server telah dijalankan. Hasil output akan tampil seperti pada gambar 22.
Gambar 22. Output di browser
61
H. Latihan/Kasus/Tugas 1. Sebutkan software yang dibutuhkan dalam pembuatan web beserta fungsinya masing-masing ! 2. Sebutkan teks editor untuk menuliskan script PHP selain Sublime Text! 3. Gabungkanlah antara script HTML dengan PHP untuk membuat output tulisan dengan ketentuan: Teks
: RPL KEAHLIAN GANDA 2017
Jenis font
: verdana
Ukuran font
:8
Warna
: Merah
Style
: Bold
4. Buatlah script PHP untuk operasi aritmatika penjumlahan, pengurangan, perkalian dan pembagian 2(dua) bilangan!
62
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini. Umpan Balik:
Tindak Lanjut:
63
J. Kunci Jawaban Latihan/Kasus/Tugas 1.
a. Sistem Operasi
: Windows, Linux
.
b. Web Server
: Apache
c. Module Program : PHP
2.
d. Database
: MySQL
e. Editor
: Sublime Text
f.
: Google Chrome
Browser
Notepad++, Adobe Dreamweaver, Code Lobster, PHP Jetbrains
3.
4.
K. Daftar Pustaka Harris, A., 2014. HTML5 and CSS3 All-in-One For Dummies® 3rd Edition, John Wiley & Sons, Inc. Canada.
64
BAB 5 MELAKUKAN PENGATURAN SOFTWARE TOOLS PEMROGRAMAN Kode Unit: (J.620100.012.01) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Melakukan Pengaturan S oftware Tools Pemrograman” adalah salah satu unit kompetensi dasar yang harus dikuasai oleh setiap programmer agar software yang telah diinstal dapat dipastikan berfungsi dan dapat bekerja sesuai dengan rencana pengembangan. Tujuan uraian materi ini adalah agar para peserta pembelajaran
dapat
melakukan
konfigurasi
dalam
mengatur
tingkat
keamanan(security) database, mengatur direktori web server , membuat web server menjadi service dan membuat virtual host . Pendekatan pembelajaran yang digunakan untuk pendalaman materi unit kompetensi ini diantaranya adalah dapat dilakukan dengan metode praktik, dengan disertai ceramah dan penjelasan-penjelasan singkat. Uraian materi dimulai dengan pengaturan hak akses pada database (privileges), kemudian melakukan konfigurasi direktori web server dan dilanjutkan dengan pembuatan service dan virtual host dari web server.
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi
“Melakukan Pengaturan S oftware Tools Pemrograman” diharapkan dapat: a. Melakukan konfigurasi web server , b. Melakukan konfigurasi database, c. Melakukan pengaturan hak akses user (privileges).
C. Ruang Lingkup Unit Kompetensi “Melakukan Pengaturan S oftware Tools
Pemrograman”,
menunjukkan kemampuan dasar programmer untuk memenuhi persyaratan dasar bekerja di dunia usaha/ industri/ perusahaan yang berkecimpung dibidang software. Unit kompetensi ini adalah penting untuk mengukur kemampuan programmer dalam
65
melakukan setting lingkungan pemrograman yang akan digunakan dalam pekerjaan membuat program.
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi
“Melakukan Pengaturan S oftware Tools Pemrograman” dijelaskan pada Tabel 2 berikut,
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi “Melakukan Pengaturan S oftware Tools Pemrograman” (Berdasarkan SKKNI 282 Tahun 2016) No
Elemen Kompetensi
No
1.
Melakukan konfigurasi tools untuk pemrograman
1.1 1.2
2.
Menggunakan tools sesuai 2.1 kebutuhan pembuatan program 2.2
Kriteria Unjuk Kerja Target hasil dari konfigurasi ditentukan. Tools pemrograman setelah dikonfigurasikan, tetap bisa digunakan sebagaimana mestinya. Fitur-fitur dasar yang dibutuhkan untuk mendukung pembuatan program diidentifikasikan Fitur-fitur dasar tools untuk pembuatan program dikuasai.
E. Kontekstualisasi Batasan variable dalam kegiatan pembelajaran unit kompetensi “Melakukan Pengaturan S oftware Tools Pemrograman” adalah sebagai berikut (Berdasarkan SKKNI 282 Tahun 2016): 1. Tools seperti: sistem operasi, web server , DBMS, atau library lain
yang
diperlukan. 2. Fitur-fitur dasar seperti seperti operasi pengelolaan file pada sistem
operasi,
melihat data suatu tabel pada database, dan lain-lain. 3. Peralatan meliputi: perangkat keras komputer atau mesin sejenis dan perangkat lunak lingkungan pengembangan. 4. Perlengkapan meliputi : Formulir laporan instalasi tools pemrograman
66
F. Uraian Materi Pengembangan sebuah program terutama program berbasis web akan melibatkan banyak perangkat komponen pendukung agar proses yang dilakukan dapat berfungsi dengan baik, efektif dan efisien. Perangkat ini terbagi menjadi 2 yaitu, perangkat keras (hardware) atau perangkat lunak (software). Untuk membuat lingkungan sebuah web lebih nyaman, harus dibutuhkan perangkat keras diantaranya adalah: a. Komputer Utama beserta sistem operasi seperti Macintosh, Windows, ataupun Linux untuk pembuatan dan pengujian beda platform b. Memori Tambahan penting dalam mengembangkan web karena prosesnya akan menjalankan aplikasi dengan ukuran yang cukup besar, oleh karena itu sangat dibutuhkan memori yang besar. c. Monitor diamana ukuran yang lebih besar akan sangat merasa nyaman bagi seorang developer web. d. Scanner atau Camera Digital, jika ada proses yang digunakan untuk membuat gambar dari tekstur dengan konsep desain sendiri, sehingga membutuhkan alat untuk membuat gambar. e. S mart Phone untuk mengakses web melalui mobile. Sedangkan untuk perangkat lunak adalah: a. Web server : Apache web server. b. Interpreter bahasa pemrograman : PHP, ASP, JSP, Perl, Python dan lain-lain. c. RDBMS : MySQL, SQL Server, Oracle. d. Database C lient : PHPMyadmin, MySQL Front, Navicat. e. Text E ditor : Sublime Text, Notepad++, Komodo, Adobe Dreamweaver. Terdapat beberapa tahap yang harus dilakukan diantaranya adalah proses instalasi web server seperti XAMPP, dimana fungsinya adalah menerima respon permintaan halaman web dari client (Personal Computer) yang kemudian web server akan mencarikan lokasi dari halaman web yang diinginkan. Setelah ditemukan, maka proses akan dilanjutkan oleh interpreter bahasa pemrograman untuk menerjemahkan baris-baris kode instruksi dan hasilnya akan diberikan kepada client . Software berikutnya yang diperlukan untuk mendukung proses pengembangan web adalah database, dimana fungsinya adalah untuk menyimpan setiap kebutuhan data yang digunakan, misal seperti data pelanggan, data barang, data pembelian, data penjualan dan lain-lain. Selain itu instalasi dari teks editor juga diperlukan sebagai tempat untuk menuliskan baris-baris instruksi program agar sesuai dengan rancangan 67
dan kebutuhan pengembangan web. Proses instalasi untuk software pengembangan web akan menggunakan aturan (setting) secara default (standar) yaitu: a. Nama domain awal adalah “localhost”. b. Lokasi folder web ada di “C: \xampp\htdocs”. c. Hak akses root (administrator) MySQL tanpa menggunakan password. Berdasarkan instalasi awal tersebut maka perlu dilakukan konfigurasi atau kustomisasi ulang agar software tersebut dapat digunakan sesuai kebutuhan. Membuat Virtual Host yaitu merupakan salah satu fitur pada Apache Webserver yang dapat membuat beberapa nama domain dengan satu alamat IP saja. Nama domain dapat diubah agar mudah mengingatnya, misalkan dari localhost diubah menjadi myweb.se. Begitu juga untuk lokasi folder penyimpanan halaman web dapat diubah ke drive dan folder lain supaya lebih aman, karena jika diletakkan di dr ive “C”, maka sewaktu-waktu komputer mengalami trouble dan butuh untuk dilakukan install ulang, maka halaman web yang tersimpan akan terhapus. Sedangkan untuk port perlu juga untuk diubah, karena jika dalam satu komputer terdapat 2(dua) aplikasi menggunakan port yang sama, maka akan terjadi konflik dan web server tidak akan dapat berfungsi sebagaimana mestinya. Kemudian untuk hak akses dengan privileges root pada MySQL, disarankan untuk diberi password.
G. Aktivitas Pembelajaran 1. Membuat service dari web server , yaitu layanan web server akan berfungsi secara otomatis ketika komputer server dihidupkan. Adapun cara-caranya adalah sebagai berikut: a. Jalankan Control Panel XAMPP yang terinstal sesuai dengan modul dengan
unit kompetensi “Melakukan Instalasi Software Tools Pemrograman”, sehingga akan tampil window control panel seperti pada gambar 4.
68
Gambar 4. Control Panel XAMPP
b. Kemudian lakukan klik pada kolom Service seperti pada gambar 4 yang ditandai kotak berwarna merah, sehingga akan muncul windows dialog konfirmasi persetujuan bahwa modul Apache dan MySQL akan dijadikan service seperti pada gambar 5.
Gambar 5. Konfirmasi persetujuan service Apache
c. Lanjutkan dengan melakukan klik pada tombol “Yes”. Jika proses telah berhasil, maka modules service akan berubah menjadi centang berwarna hijau. d. Lakukan restart pada komputer atau laptop yang anda gunakan. Amatilah hasil perubahannya. e. Lakukan hal yang sama untuk membuat MySQL menjadi service.
69
2. Mengubah lokasi drive dan folder penyimpanan halaman web, langkahlangkahnya adalah: a. Jalankan Control Panel XAMPP, kemudian klik tombol “Config”
”Apache
(httpd.conf)” pada baris module Apache, seperti pada gambar 5.
Gambar 5. Konfigurasi httpd.conf b. Bukalah file “httpd.conf ” dan ubahlah konfigurasinya menggunakan text editor misal notepad, carilah baris document root seperti pada gambar 6.
Gambar 6. Baris document root
c. Ubahlah lokasi Document Root sesuai dengan kebutuhan. Misal diubah ke drive “E: \webku” maka konfigurasinya menjadi seperti pada gambar 7.
Gambar 7. Hasil pengubahan document root
d. Lakukan restart web server Apache, kemudian ketikkan alamat url: http://localhost pada web browser. Amati dan analisalah perubahannya!
70
3. Buatlah Virtual Host untuk mengubah nama domain “localhost” dengan
“myweb.se”, jika menggunakan sistem operasi windows, maka cara yang dilakukan seperti berikut: a. Buka direktori “C: \Windows\System32\drivers\etc”, kemudian pilih file host. b. Edit file host dengan cara membuka file tersebut menggunakan teks editor seperti notepad. c. Tambahkan konfigurasi untuk ip address “127.0.0.1” dengan nama domain
“myweb.se”, hasilnya dapat dilihat seperti pada gambar 8.
Gambar 8. Penambahan nama domain
d. Ulangi langkah pada No. 2 point a. e. Carilah baris “Include conf/extra/httpd-vhosts.conf ” kemudian hapus tanda # (jika ada, jika tidak tutup file tersebut) f.
Buka file “httpd-vhost.conf” pada direktori “C:\xampp\apache\conf\extra” menggunakan text editor untuk melakukan setting Virtual Host yang baru. Tambahkan konfigurasinya seperti pada gambar 9.
Gambar 9. Penambahan data Virtual Host
g. Lakukan
restart
pada
Apache
“http://myweb.se” pada browser.
web
server.
Masukkan
alamat
url:
Amati dan analisalah permasalahan
tersebut
71
4. Mengatur password untuk user root. a. Jalankan aplikasi PHPMyadmin dengan mengetikkan pada browser alamat url:
“http://localhost/phpmyadmin” atau dengan nama domain virtual yang telah dibuat
sebelumnya
pada
kegiatan
aktivitas
belajar
No.3
yaitu
“http://myweb.se/phpmyadmin”. Hasilnya akan tampil seperti gambar 12.
Gambar 12. Halaman PHPMyadmin
b. Lakukan klik pada menu “user account”, sehingga akan tampil halaman pengaturan user account seperti pada gambar 13.
Gambar 13. Halaman user account
Untuk membuat password pada user root , maka lakukan klik pada hyperlink
“Edit Privileges” pada baris username:root dan Host name:localhost, maka akan tampil halaman pengaturan hak akses user root seperti gambar 14.
72
Gambar 14. Menu pengaturan hak akses user root
c. Lakukan klik pada tombol “Change password” , maka akan tampil halaman pengisian password seperti pada gambar 15.
Gambar 15. Pengisian password
5. Isilah password pada kolom isian “Enter” kemudian ulangi dengan password yang sama pada kolom isian “Re-type”, disarankan sampai keamanan password berwarna kuning yang artinya adalah baik. 6. Lanjutkan dengan melakukan klik pada tombol “Go” 7. Carilah file “config.inc.php” yang berada di folder “C:\xampp\phpMyAdmin”. 8. Carilaih baris text “$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;” 9. Isikanlah metode autentikasinya dengan beberapa opsi berikut ini: a. config yaitu user tidak perlu mengetikkan password pada saat membuka halaman PHPMyAdmin. b. http yaitu akan tampil dialog box pengisian password untuk membuka PHPMyAdmin c. cookie yaitu akan tampil kolom pengisian password untuk membuka PHPMyAdmin Simpanlah perubahan yang telah dilakukan. 10. Sesuaikan password user root yang sudah dibuat pada poin 5 dengan mengganti pada baris teks $cfg[‘Servers’][$i][‘password’] = ’1234′; 11. Lakukan restart MySQL pada Control Panel XAMPP. 12. Jalankan kembali PHPMyadmin seperti pada langkah No.4 point a. 73
H. Latihan/Kasus/Tugas 1. Buatlah user account untuk pengguna database MySQL menggunakan PHPMyadmin dengan ketentuan sebagai berikut: a. Username : kgrplbinjai b. Password : semangat c. Hak akses hanya dapat melihat data (select) 2.
Buatlah konfigurasi service untuk modul MySQL menggunakan PHPMyadmin!
74
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini. Umpan Balik:
Tindak Lanjut:
75
J. Kunci Jawaban Latihan/Kasus/Tugas 1. Untuk membuat user account MySQL maka salah satu langkahnya adalah: a. Jalankan Control Panel XAMPP b. Klik “Start” untuk masing-masing modul Apache dan MySQL. c. Jalankan aplikasi PHPMyadmin menggunakan browser dengan alamat url:
“http://localhost/phpmyadmin” d. Login kedalam sistem menggunakan username dengan hak akses root, seperti pada gambar 15.
Gambar 15. Halaman Login PHPMyadmin
e. Klik hyperlink “User Account” seperti pada gambar 16.
Gambar 16. Hyperlink User account
Kemudian setelah tampil halaman “User account overview ” seperti pada gambar 17. Klik Hyperlink “Add user account”
76
Gambar 17. Halaman User account overview
f.
Setelah tampil halaman “add user account” seperti pada gambar 18. Maka isikanlah
Username : kgrplbinjai
Host
Password : semangat
Re-type
: local
: semangat
Gambar 18. Pengisian Login information
g. Lakukan centang pada checkbox s elect di module privileges data seperti pada gambar 19.
77
Gambar 19. Pemilihan hak akses
h. Langkah terakhir adalah klik tombol “Go” i.
Jika ingin mencoba hasil pembuatan user account, maka terlebih dahulu logout dari user account root, seperti pada gambar 20.
Gambar 20. Menu Logout
2. Salah satu langkah-langkahnya adalah sebagai berikut: a. Jalankan Control Panel XAMPP b. Klik tombol pada Module service MySQL. c. Pilih tombol “Yes” untuk menginstal MySQL sebagai service. d. Klik tombol “Start” untuk menjalankan MySQL.
K. Daftar Pustaka Team Development PHPMyAdmin.2012-2017. PHPMyAdmin Documentation. url: https://docs.phpmyadmin.net/id/latest/, diakses tanggal 20 Agustus 2017.
78
BAB 6 MENGGUNAKAN SQL Kode Unit: (J.620100.020.02) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Menggunakan SQL” adalah salah satu unit kompetensi yang harus dikuasai oleh setiap pengembang teknologi informasi agar dapat memahami dan mampu menerapakan bahasa query SQL(Structured Query Language) dalam melakukan operasi database dasar, baik menggunakan perintah DDL(Data Definition Language) maupun DML(Data Manipulation Language) dengan menggunakan aplikasi pendukung. Tujuan uraian materi ini adalah agar para peserta memahami dan dapat mempersiapkan perangkat lunak aplikasi pendukung SQL, mengenali menu aplikasi SQL, mampu membuat dan mengisi tabel serta dapat mengoperasikan tabel dengan fungsi DML, view, stored procedure, function, trigger, commit and rollback .
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi
“Menggunakan SQL ” diharapkan dapat: a. Mempersiapkan perangkat lunak basis data, b. Menggunakan fitur aplikasi SQL, c. Mengisi tabel d. Melakukan operasi relasional e. Membuat stored procedure, function, trigger, commit dan rollback
C. Ruang Lingkup Unit
Kompetensi
“Menggunakan
SQL ”,
menunjukkan
kemampuan
dasar
programmer, database administrator untuk memenuhi persyaratan dasar bekerja di dunia usaha/ industri/ perusahaan yang berkecimpung dibidang software. Unit kompetensi ini berhubungan dengan sikap, pengetahuan, dan keterampilan yang dibutuhkan untuk menggunakan perangkat aplikasi berbasis data deskripsi atau SQL (Structured Query Language) pada aspek DML-Data Manipulation Language. 79
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi
“Menggunakan SQL ” dijelaskan pada Tabel 2 berikut, Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi “Menggunakan SQL” (Berdasarkan SKKNI 282 Tahun 2016) No
Elemen Kompetensi
No
Kriteria Unjuk Kerja
1.
Mempersiapkan perangkat lunak aplikasi data deskripsi/SQL Menggunakan fitur aplikasi SQL
1.1
Mengisi tabel
3.1
Perangkat lunak aplikasi SQL telah dipasang Perangkat lunak aplikasi SQL dijalankan Fitur pengolahan DML diidentifikasikan. Fitur pengolahan DML dieksekusi sesuai kebutuhan. Tabel diisi data menggunakan perintah DML. Indeks dibangkitkan View tabel dibentuk sesuai kebutuhan. Fitur pengolahan DML diidentifikasikan Perintah DML dipergunakan untuk manipulasi antar tabel. Perintah DML dipergunakan untuk manipulasi antar-view Perintah DML ditulis secara efisien Stored Procedure dibuat dengan perintah SQL. Prosedur diuji diperiksa input dan output-nya. Function dibuat dengan perintah SQL. Perintah SQL pada function ditulis secara efisien Trigger didefinisikan dengan perintah SQL. Kesesuaian hasil trigger diuji. Perubahan data dengan perintah commit dilakukan. Pembatalan penulisan data dilakukan dengan rollback.
2.
3.
4.
Melakukan operasi relasional
1.2 2.1 2.2
3.2 3.3 4.1 4.2 4.3
5.
Membuat stored procedure
4.4 5.1 5.2
6.
Membuat function
6.1 6.2
7.
Membuat trigger
7.1
8.
Melakukan perintah commit dan rollback
7.2 8.1 8.2
80
E. Kontekstualisasi Batasan variabel dalam kegiatan pembelajaran unit kompetensi “Menggunakan SQL” adalah sebagai berikut (Berdasarkan SKKNI 282 Tahun 2016): 1. Stored procedure, function, trigger, commit, rollback merupakan istilah-istilah terkait dengan konsep SQL. 2. Perlengkapan meliputi : petunjuk teknis SQL, perangkat lunak terkait dan desain tabel terkait.
81
F. Uraian Materi Structured Query Languge (SQL) adalah kumpulan perintah khusus yang digunakan untuk mengakses tabel-tabel dalam database yang saling mempunyai relasi atau keterhubungan. SQL merupakan bahasa komputer yang mematuhi standar ANSI (American Nasional Standard Institute). SQL mendukung untuk diimplementasikan disisi standalone (local computer) dan sisi server . Akan tetapi trend teknologi saat ini sudah beralih menggunakan teknologi server. Saat ini hampir semua server database yang ada mendukung bahasa SQL untuk melakukan manajemen datanya. SQL biasanya berupa perintah sederhana yang berisi instruksi-instruksi untuk manipulasi data. Perintah SQL ini sering juga disingkat dengan sebutan “query”. Beberapa jenis operasi terhadap database dibagi menjadi: 1. DDL (Data Definition Language) adalah perintah SQL yang berkaitan dengan pembuatan struktur tabel atau database seperti CREATE, DROP, ALTER. 2. DML (Data Manipulation Language) adalah perintah SQL yang berkaitan dengan cara untuk memanipulasi data yang ada dalam tabel seperti SELECT, INSERT, UPDATE, DELETE. Untuk mengoperasikan bahasa pemrograman SQL, maka selain perangkat keras (hardware) diperlukan juga beberapa perangkat lunak (software) pendukung.
1. Persiapan Software Pendukung Salah satu implementasi software untuk manajemen database yang menggunakan SQL adalah MySQL (baca:maisequel). MySQL bersifat open source sehingga semua orang dapat ikut berpartisipasi untuk mengembangkan fungsi-fungsinya dan dapat bebas menggunakannya dengan batasan tidak boleh dijadikan produk turunan yang bersifat komersial. Adapun kebutuhan software yang digunakan adalah: a. Sistem Operasi Sistem operasi digunakan sebagai penghubung antara perangkat keras dengan perangkat lunak, dimana dalam sistem operasi. b. Browser (optional) Manajemen data menggunakan MySQL yang berjalan disisi server, maka diperlukan sebuah aplikasi yang mudah dalam penggunaanya, mempunyai tampilan yang menarik atau memenuhi konsep GUI (Graphical User Interface). Aplikasi tersebut adalah PHPMyAdmin yang berjalan menggunakan browser,
82
sehingga disini diperlukan browser seperti Mozilla Firefox, Google Chrome, Opera, Safari dan lain-lain. c. XAMPP XAMPP adalah sebuah kumpulan software yang digunakan untuk pengembangan halaman web. Nama XAMPP adalah kepanjangan dari XML untuk lalu lintas pertukaran data antar platform , Apache sebagai web server yang berfungsi untuk menangani
request
halaman
web,
MySQL
sebagai
aplikasi
database,
PHPMyadmin sebagai tools untuk mempermudah manajemen administrasi database, PHP dan Perl sebagai Bahasa pemrograman web. Dengan melakukan instalasi paket software tersebut, maka secara default pengguna otomatis telah melakukan instalasi PHP, MySQL, Apache dan PHPMyAdmin, sehingga pengguna semakin dipermudah, menghemat waktu dan tidak disibukkan dengan pengaturan dan konfigurasi server.
2. Menu Aplikasi SQL Pengelolaan administrasi database menggunakan MySQL pada dasarnya adalah menggunakan baris-baris perintah yang diketikan menggunakan jendela console seperti pada gambar 1 berikut ini
Gambar 1. Jendela console MySQL
Saat ini tersedia banyak aplikasi untuk mempermudah pengelolaan administrasi database, dimana salah satunya adalah phpMyAdmin yang berjalan menggunakan browser. phpMyadmin menggunakan antar muka grafis yang sangat mudah seperti pada gambar 2.
83
Gambar 2. Tampilan antar muka phpMyAdmin
Beberapa menu yang terdapat dalam aplikasi phpMyAdmin diantaranya adalah: a. Database, bentuk icon Menu Database digunakan untuk menampilkan daftar database yang telah dibuat oleh pengguna. b. Browse, bentuk icon Menu Browse digunakan untuk menampilkan isi record yang terdapat pada tabel aktif. c. Structure, bentuk icon Menu Structure digunakan untuk melihat struktur tabel yang ada pada database, seperti nama kolom(field), jenis, tipe dan lain-lainya. d. SQL, bentuk icon Menu SQL digunakan untuk memasukkan perintah-perintah query SQL. e. Search, bentuk icon Menu Search digunakan untuk mencari record yang terdapat pada sebuah tabel dengan bantuan kolom wizard sebagai kriteria pencarian. f.
Insert, bentuk icon Menu Insert digunakan untuk menambahkan isi record pada tabel yang sedang aktif.
g. Export, bentuk icon Menu Export digunakan untuk melakukan eksport sehingga bentuk isi tabel akan berubah menjadi beberapa format yang disediakan seperti SQL, PDF, Excel, CSV, JSON dan lain-lain.
84
h. Import, bentuk icon Menu Import digunakan untuk melakukan import file dengan ektensi(akhiran nama file) .SQL, .ZIP untuk diubah menjadi bentuk isi (record ) sebuah tabel. i.
Privileges, bentuk icon Menu Privileges digunakan untuk mengubah hak akses pengguna atau batasanbatasan pengguna untuk melakukan pengelolaan database.
j.
Operations, bentuk icon Menu Operations digunakan untuk melakukan operasi pada database atau tabel yang meliputi mengubah nama tabel, memindahkan tabel, mengcopy tabel, melakukan perawatan tabel, mengosongkan isi tabel dan menghapus tabel.
k. More, bentuk icon Menu More terdapat bebera sub menu diantaranya adalah Menu Routines digunakan untuk membuat prosedur pengelolaan database. -
Menu Event digunakan untuk membuat fungsi yang dijalankan pada waktu tertentu.
-
Menu Trigger digunakan untuk membuat trigger yaitu menyisipkan parameter pada saat proses query SQL dijalankan.
-
Menu Designer digunakan untuk merancang diagram relasi antar entitas.
3. Operasi Database dan Tabel Tabel adalah kumpulan dari beberapa baris (record ) dan kolom (field) yang sejenis untuk menyimpan bermacam-macam data. Tabel dapat menyimpan semua jenis data meliputi data berbentuk teks, gambar maupun audio video. Ilustrasi tentang bentuk tabel dapat dilihat pada Gambar 3..
Gambar 3. Ilustrasi bentuk tabel
85
Operasi terhadap pembuatan database dan tabel adalah operasi awal yang dilakukan sekali dan berlaku untuk seterusnya. Sedangkan operasi-operasi yang berhubungan dengan isi tabel (data) dilakukan secara rutin dan berulang, sehingga aktivitas inilah yang dirasa cocok mewakili aktivitas operasi pengelolaan dalam database. Operasi terhadap tabel dapat dilakukan untuk 1(satu) tabel maupun lebih dengan menggunakan sintaks query SQL. Salah satu manfaat dari query SQL adalah dapat diintegrasikan dengan banyak jenis bahasa pemrograman seperti JAVA, Visual Basic, Delphi, C#, C++ dan lain-lain, sehingga user dapat berinteraksi untuk melakukan manajemen terhadap database menggunakan program. Query SQL dibuat menggunakan sintaks dan pola-pola tertentu yang harus diikuti tata cara dalam penulisannya. Query tersebut kemudian akan diterjemahkan menjadi baris-baris perintah yang akan dieksekusi oleh compiler dan menghasilkan baris isi tabel dan kolom sesuai penerjemahannya. Beberapa query SQL yang digunakan untuk melakukan operasi database seperti pada tabel 1:
Tabel 1. Sintaks Query SQL No.
Fungsi
Sintaks
Query 1.
Membuat database
CREATE DATABASE nama_database Contoh: CREATE DATABASE sekolah
2.
Memilih database
USE nama_database Contoh: USE sekolah
3.
Membuat tabel dengan constrain primary key
CREATE TABLE nama_tabel ( nama_kolom1 tipe [(size)] [null | not null] [constrain], nama_kolom2 tipe [(size)] [null | not null] [constrain] ) Contoh: CREATE TABLE mahasiswa( nis INT(8) NOT NULL PRIMARY KEY, nama VARCHAR(50) NOT NULL, alamat VARCHAR(50) NOT NULL, jenis_kelamin ENUM('L','P'), agama ENUM('ISLAM','KRISTEN','KATOLIK','HINDU','B UDHA') )
86
No.
Fungsi
Sintaks
Query 4.
Membuat tabel dengan index
Sintaks 1: CREATE TABLE nama_tabel ( nama_kolom1 tipe [(size)] [null | not null] [constrain], nama_kolom2 tipe [(size)] [null | not null] [constrain],
INDEX (nama_kolom1,…….) ) Sintaks 2: CREATE INDEX ON nama_tabel (nama_kolom) Contoh: Sintaks 1: CREATE TABLE mahasiswa( nis INT(8) NOT NULL PRIMARY KEY, nama VARCHAR(50) NOT NULL, alamat VARCHAR(50) NOT NULL, jenis_kelamin ENUM('L','P'), agama ENUM('ISLAM','KRISTEN','KATOLIK','HINDU','B UDHA') , INDEX (nis,nama) ) Sintaks 2: CREATE INDEX idx1 ON mahasiswa(nis,jenis_ke lamin) 5.
Menampilkan index tabel
SHOW INDEX nama_tabel Contoh: SHOW INDEX FROM mahasiswa
6.
7.
Menghapus Index pada tabel
DROP INDEX nama_index ON nama_tabel
Mengisi data record pada tabel
INSERT INTO nama_tabel
Contoh: DROP INDEX idx1 ON mahasiswa
(nama_kolom1,nama_kolom2,…..) VALUES (nilai1,nilai2,…) Contoh: INSERT INTO mahasiswa (nis,nama,alamat,jenis_kelamin,agama) VALUES ('24657890','Rendi','Medan','L','KRI STEN')
8.
Mengubah data record pada tabel
UPDATE nama_tabel SET nama_kolom=nilai WHERE nama_kolom=nilai Contoh: UPDATE mahasiswa SET alamat='Malang' WHERE nama='Rendi'
9.
Menampilkan record semua kolom pada tabel
SELECT * FROM nama_tabel Contoh: SELECT * FROM mahasiswa
87
No.
Fungsi
Sintaks
Query 10.
11.
12.
13.
14.
15.
Menampilkan record kolom tertentu pada tabel Menampilkan record semua kolom dengan kriteria atau klausa tertentu Menampilkan record kolom tertentu dengan kriteria atau klausa tertentu Menghapus semua record tabel
Menghapus data record dengan kriteria tertentu Menghapus tabel
SELECT nama_kolom FROM nama_tabel Contoh: SELECT nis,nama SELECT nis,nama FROM mahasiswa SELECT * FROM nama_tabel WHERE nama_kolom=nilai Contoh: SELECT * SELECT * FROM mahasiswa WHERE WHERE nama nama = 'Rendi '
SELECT nama_kolom FROM nama_tabel WHERE nama_kolom [kriteria] nilai Contoh: SELECT nis,nama SELECT nis,nama FROM mahasiswa WHERE WHERE nama= nama=' ' Rendi' DELETE FROM nama_tabel Contoh: DELETE FROM mahasiswa DELETE FROM nama_tabel WHERE nama_kolom=nilai Contoh: DELETE FROM `mahasiswa` WHERE WHERE nis= nis='112' '112' DROP TABLE nama_tabel Contoh: DROP TABLE TABLE mahasiswa mahasiswa
16.
Menghapus database
DROP nama_database Contoh: DROP DATABASE DATABASE sekolah sekolah
4. View View di MySQL mulai disediakan pada versi 5.0. Views merupakan suatu tampilan tabel virtual. Views berisi perintah query SQL ke tabel dalam database. Views dapat digunakan untuk mempermudah kita dalam pembuatan laporan atau tampilan database yang diinginkan dengan cepat. Dengan kata l ain, views merupakan perintah query SQL yang disimpan, sehingga setiap saat kita membutuhkannya, user dapat langsung memanggilnya tanpa perlu mengetikkan perintah query SQL kembali. Selain itu tujuan dari pembuatan View View adalah adalah untuk kenyamanan (mempermudah penulisan query), untuk keamanan (menyembunyikan beberapa kolom yang bersifat rahasia),
88
atau dalam beberapa kasus bisa digunakan untuk mempercepat proses menampilkan data, terutama jika user akan menjalankan query tersebut secara berulang-ulang. View dibuat dan didefinisikan menggunakan perintah CREATE VIEW. Bentuk umum dari pembuatan view adalah seperti pada sintak berikut ini.
Berikut ini adalah contoh view untuk menampilkan data id, nama dan telepon pelanggan dari tabel pelanggan yang diurutkan berdasarkan nama pelanggan.
Untuk mengeksekusi perintah di atas, kita dapat memanggil dengan perintah SELECT seperti halnya menampilkan data dari suatu tabel. Berikut ini contoh cara pemanggilan view beserta hasil querynya.
Hasilnya adalah sebagai berikut
View yang sudah dibuat dapat diubah kembali jika memang terdapat kesalahan hasil query, ataupun digunakan untuk menyesuaikan dengan kebutuhan yang ada, menggunakan perintah Berikut ini contoh mengubah view yang sudah dibuat sebelumnya.
89
Sedangkan untuk view yang sudah tidak diperlukan lagi dapat dihapus menggunakan perintah DROP VIEW nama_view. Contohnya adalah sebagai berikut:
P r ocedur e 5. S tored Pr dari procedure dan function yaitu merupakan fitur utama yang Stored Procedure terdiri dari procedure paling penting didalam MySQL. Stored Procedure Procedure merupakan suatu kumpulan perintah atau statement yang yang disimpan dan dieksekusi di server database MySQL. database MySQL. Dengan menggunakan m enggunakan Stored Procedure, Procedure, kita dapat menyusun program sederhana berbasis query SQL untuk menjalankan fungsi-fungsi tertentu. Hal ini menjadikan aplikasi yang kita buat lebih efektif dan efisien. Berikut ini beberapa keuntungan menggunakan menggunakan stored procedure: procedure: a. Lebih cepat. cepat. Hal ini karena kumpulan perintah query dijalankan langsung di sisi server.
Berbeda
dengan
jika
dijalankan
secara
sekuensial
di
bahasa
pemrograman, akan lebih lambat karena harus “bolak -balik” antara client dan server. b. Menghilangkan duplikasi proses, pemeliharaan yang mudah. Pada dasarnya operasi yang terjadi di suatu aplikasi terhadap database database adalah sama. Secara umum, di dalam aplikasi biasanya terdapat operasi untuk validasi data masukan, menambahkan record baru, mengubah
record , menghapus
record dan
sebagainya. Dengan stored procedure, maka kita dapat menghindari adanya duplikasi proses yang kurang lebih sama, sehingga pemeliharaannya akan menjadi lebih mudah. c. Meningkatkan keamanan database.
Dengan adanya stored procedure, procedure,
database akan database akan lebih aman karena aplikasi yang memanggil stored procedure tidak procedure tidak perlu mengetahui isi didalamnya. Sebagai contoh, dalam proses menambahkan data (insert (insert ), ), kita membuat suatu stored procedure khusus. procedure khusus. Dengan demikian, saat client atau aplikasi akan menambahkan data (insert ( insert ) maka tidak perlu tahu nama tabelnya, karena hanya cukup memanggil stored procedure procedure tersebut dengan mengirimkan parameter yang diinginkan. Stored Procedure berdasarkan bentuk dan sifatnya terbagi menjadi 2(dua) yaitu function dan procedure. Perintah yang terdapat dalam function akan menghasilkan sebuah nilai balik return value untuk diproses lebih lanjut, sedangkan secara umum 90
procedure hanya berisi satu kumpulan proses yang tidak menghasilkan value dan hanya bersifat untuk menampilkan data.
5.1 S tored Procedur e a. Pembuatan procedure Bentuk umum pembuatan procedure adalah menggunakan keywords CREATE kemudian diikuti dengan nama dari procedure yang akan dibuat, seperti berikut ini: DELIMITER ;; CREATE PROCEDURE procedure_name() BEGIN Statement END;
procedure_name adalah nama yang mengidentifikasi kegunaan dari procedure yang dibuat. S tatement dapat diisikan perintah-perintah yang berhubungan dengan operasi tabel, baik itu satu tabel ataupun lebih yang saling mempunyai keterhubungan (relasi). Misal terdapat tabel dengan nama “tbl_databarang” maka bentuk procedure yang dapat dibuat adalah: DELIMITER ;; CREATE PROCEDURE getDataBarang() BEGIN SELECT * FROM tbl_databarang; END;
b. Pemanggilan procedur e Bentuk umum untuk pemanggilan procedure adalah: CALL procedure_name()
Pemanggilan procedure menggunakan kata kunci (keywords) CALL dan diikuti dengan nama dari procedure. Misal jika procedure getDataBarang telah berhasil dibuat, maka cara pemanggilannya adalah: CALL getDataBarang()
91
c. Menghapus procedure Bentuk umum untuk menghapus procedure adalah: DROP PROCEDURE procedure_name
Penghapusan procedure
menggunakan
keywords
DROP
PROCEDURE
kemudian diikuti dengan nama dari procedure yang telah dibuat. Misal jika terdapat procedure dengan nama getDataBarang, maka untuk menghapusnya adalah: DROP PROCEDURE getDataBarang
Procedure dapat dibuat untuk mengatasi berbagai keperluan operasi database yang disimpan disisi server menggunakan query SQL baik itu perintah DDL(Data Definition Language) atau DML(Data Manipulation Language). Beberapa bentuk lain dari procedure seperti tertera pada tabel berikut ini:
No. 1.
Procedure Membuat procedure tanpa parameter
Contoh PROCEDURE: DELIMITER ;; CREATE PROCEDURE getUser() BEGIN SELECT * FROM user; END; PENGGUNAAN: CALL getUser()
Keterangan: Membuat procedure dengan nama “getUser ” yang berfungsi untuk menampilkan semua data dari tabel user 2.
Membuat procedure dengan input satu parameter
PROCEDURE: DELIMITER ;; CREATE PROCEDURE getSiswa(IN jk CHAR) BEGIN SELECT * FROM siswa WHERE gender=jk; END; PENGGUNAAN: CALL getSiswa(‘L’)
92
No.
Procedure
Contoh
Keterangan: Membuat procedure dengan nama “getSiswa” yang mempunyai 1(satu) parameter input yaitu” jk” dengan tipe char. Contoh tersebut berfungsi untuk menampilkan semua data dari tabel siswa dengan kriteria gender sama dengan input
3.
Membuat procedure dengan input lebih dari satu parameter
PROCEDURE: DELIMITER ;; CREATE PROCEDURE getSiswa(IN jk CHAR, IN lhr VARCHAR(20)) BEGIN SELECT * FROM tbl_siswa WHERE gender=jk or tempat_lahir =lhr; END; PENGGUNAAN: CALL getSiswa(‘L’,’Malang’)
Keterangan: Membuat procedure dengan nama “getSiswa” yang mempunyai 2(dua) parameter input yaitu “ jk” dengan tipe char dan “lhr ”. Contoh tersebut berfungsi untuk menampilkan semua data dari tabel siswa dengan kriteria gender atau tempat lahir sama dengan input 4.
Membuat procedure dengan output parameter
PROCEDURE: DELIMITER ;; CREATE PROCEDURE jumlahSiswa(OUT hasil INT) BEGIN SELECT COUNT(*) INTO hasil FROM tbl_siswa; END; PENGGUNAAN: CALL jumlahSiswa(@jumlah); SELECT @jumlah AS `Jumlah Semua Siswa`;
Keterangan: Membuat procedure dengan nama output “hasil” bertipe integer. Dalam penggunaanya, hasil output dapat dijadikan tabel alias dengan nama “Jumlah Semua Siswa"
93
5.2 S tored Function Stored function adalah sekumpulan perintah SQL yang disusun dalam sebuah function (mirip dengan pemrograman biasa) yang mempunyai nama dan kegunaan tertentu dan memiliki nilai RETURN . Keuntungan penggunaan stored function yaitu pengguna dapat membuat function yang tidak disediakan oleh database MySQL. Aturan Membuat stored function mirip dengan stored procedure. Perbedaannya adalah adanya nilai RETURN . Sebuah stored function pada umumnya digunakan dalam sebuah SQL SELECT . Beberapa hal mendasar yang terdapat dalam stored function adalah: a. Pembuatan s tored function Bentuk umum pembuatan function adalah menggunakan keywords CREATE kemudian diikuti dengan nama dari function yang akan dibuat beserta parameter dan nilai kembalian (return value). Dalam function tersebut terdapat baris begin dan end sebagai pengenal satu kesatuan (body ) dari function tersebut. Bentuk umum penulisannya seperti berikut ini: DELIMETER ;; CREATE FUNCTION function_name() RETURNS DATATYPE BEGIN DECLARE variable_name DATATYPE SQL Statement; RETURN variable_name; END;
Contoh penggunaanya adalah seperti berikut ini: DELIMETER ;; CREATE FUNCTION jmlSiswa(lahir char(25)) RETURNS INT BEGIN DECLARE hasil INT; SELECT COUNT(*) INTO hasil AS ‘Jumlah Siswa’ FROM tbl_siswa WHERE tempat_lahir=lahir; RETURN hasil;
END; Function tersebut mempunyai nama jmlSiswa yang berfungsi untuk menghitung jumlah siswa berdasarkan kriteria input berupa tempat lahir.
94
b. Pemanggilan func tion Bentuk Umum untuk pemanggilan sebuah function adalah seperti berikut: [SET @parameter = value ]; SELECT function_name([@parameter]) AS column_name;
Contoh untuk pemanggilan fungsi dengan nama jmlSiswa yang mempunyai 1(satu) parameter bertipe CHAR dan nilai balik berupa INT adalah seperti berikut: SET @param1=’Kisaran’; SET @param2=’Pematang Siantar’; SELECT jmlSiswa(@param1) AS jmlSiswa1; SELECT jmlSiswa(@param2) AS jmlSiswa2;
c. Variabel Variabel digunakan untuk menyimpan suatu nilai secara temporer (sementara) pada ruang memory. Variabel akan hilang saat sudah tidak digunakan lagi. Variabel dalam MySQL sebelum dapat digunakan, pertama kali harus dideklarasikan terlebih dahulu. Berikut ini bentuk umum pendeklarasian suatu variabel di MySQL. DECLARE nama_variabel DATATYPE [DEFAULT value];
Contoh penggunaannya adalah: DECLARE jumlah INT; DECLARE kode VARCHAR(5); DECLARE tgl_lahir DATE DEFAULT ‘1982-10-20’;
Setelah dideklarasikan, suatu variabel dapat diisi dengan suatu nilai sesuai dengan tipe data yang didefinisikan saat pendeklarasian. Untuk mengisikan nilai ke dalam suatu variabel, digunakan perintah SET. Format umumnya sebagai berikut: SET nama_variabel = expression | value;
95
Contoh penggunaannya adalah: SET jumlah = 10; SET kode = (SELECT id FROM pelanggan LIMIT 1); SET tgl_lahir = now();
Berikut ini contoh function hitungUmur() untuk menghitung umur seseorang saat ini berdasarkan tahun kelahiran yang diberikan. DELIMITER ;; CREATE FUNCTION hitungUmur(lahir DATE) RETURNS INT BEGIN DECLARE thn_sekarang, thn_lahir INT; SET thn_sekarang = YEAR(now()); SET thn_lahir = YEAR (lahir); RETURN thn_sekarang - thn_lahir ; END;
d. Menghapus func tion Bentuk umum untuk menghapus function adalah: DROP FUNCTION function_name
Penghapusan function menggunakan keywords DROP FUNCTION kemudian diikuti dengan nama dari function yang telah dibuat. Misal jika terdapat function dengan nama getSiswa, maka untuk menghapusnya adalah: DROP FUNCTION getSiswa
6. TRIGGER Trigger adalah suatu objek database yang merupakan aksi atau prosedur yang terjadi jika terjadi perubahan pada suatu row . Trigger tidak dapat menjadi bagian dari suatu temporary table atau suatu view .Trigger digunakan untuk memanggil satu atau beberapa perintah SQL secara otomatis sebelum atau sesudah terjadi proses INSERT, UPDATE atau DELETE dari suatu tabel. Sebagai contoh misalnya kita ingin menyimpan id pelanggan secara otomatis ke tabel ‘ log’ sebelum menghapus data di tabel pelanggan. Trigger mulai dikenal di versi MySQL 5.0, dan sampai versi saat ini fungsionalitasnya sudah bertambah. Pada versi selanjutnya pihak pengembang
96
MySQL berjanji akan lebih menguatkan (menambah) fitur trigger ini.Trigger ini.Trigger sering digunakan, antara lain untuk: a. Melakukan update data update data otomatis jika terjadi perubahan. Contohnya adalah dalam sistem penjualan, jika dimasukkan barang baru maka stock akan bertambah secara otomatis. b. Trigger dapat dapat digunakan untuk mengimplementasikan suatu sistem log . c. Setiap terjadi perubahan, secara secara otomatis akan menyimpan ke tabel log . d. Trigger dapat digunakan untuk melakukan validasi dan verifikasi data sebelum data tersebut disimpan
.
6.1 Membuat trigger Bentuk umum untuk membuat trigger adalah sebagai berikut: CREATE TRIGGER trigger_name [BEFORE | AFTER] [INSERT | UPDATE | DELETE] ON table_name FOR EACH ROW statement
Dimana :
BE FO FORE RE | AFTER digunakan untuk menentukan kapan proses secara otomatis akan dieksekusi, sebelum atau sesudah proses.
INSERT | UPDATE | DELETE digunakan untuk menentukan event yang dijadikan trigger untuk menjalankan perintah-perintah di dalam triggers. Statement atau perintah dalam trigger dapat dapat berupa satu perintah saja, dan dapat juga beberapa perintah sekaligus. Jika terdapat beberapa perintah dalam trigger , maka gunakan perintah B E G I N dan E ND untuk mengawali dan mengakhiri perintah. Dalam statement trigger , kita dapat mengakses record tabel tabel sebelum atau sesudah proses dengan menggunakan NE W dan OL D . NE W digunakan untuk mengambil record yang yang akan diproses (insert atau update), sedangkan OLD digunakan untuk mengakses record yang sudah diproses (update atau delete). Berikut ini contoh trigger yang akan mencatat aktivitas ke tabel logsiswa setiap terjadi proses insert ke tabel siswa:
97
DELIMITER ;; CREATE TRIGGER cekSiswa BEFORE INSERT ON tbl_siswa FOR EACH ROW BEGIN INSERT INTO logsiswa(id_siswa,log) VALUES(NEW.nis,now()); END;
6.2 Melihat trigger Untuk melihat trigger yang telah dibuat dapat menggunakan perintah berikut ini: SHOW TRIGGERS
6.3 Menghapus trigger Untuk menghapus trigger, dapat menggunakan perintah DROP TRIGGER dengan diikuti dengan nama tabel dan nama triggernya. Berikut ini bentuk umum dan contoh perintah untuk menghapus trigger. DROP TRIGGER trigger_name
Contoh penggunaanya adalah: DROP TRIGGER cekSiswa
7. Transaction (Commit And Rollback) MySQL merupakan software database berbasis client-server. Hal ini berarti bahwa beberapa client dapat melakukan koneksi ke server MySQL secara bersamaan. Masing-masing client dapat dapat melakukan select, insert, update, maupun update, maupun delete data delete data di server MySQL. MySQL. Hal ini tentunya dapat menjadi masalah jika terjadi bentrok antar client. Sebagai contoh dalam proses transaksi pemesanan barang, jika terdapat 2 (dua) pelanggan melakukan transaksi pada waktu yang sama, misalnya melakukan pemesanan barang maka keduanya akan menambahkan data di tabel yang sama dan mungkin saja data yang dimasukkan tertukar atau tidak valid. Hal ini tidak akan terjadi jika pada saat satu pelanggan melakukan transaksi, pelanggan yang lain harus menunggu sampai proses transaksi selesai.
98
Untuk mengatur proses query yang terjadi dalam suatu sistem yang memiliki user banyak (multi-user-system (multi-user-system), ), kita dapat memanfaatkan dua hal di MySQL. Pertama kita dapat mengunci tabel (table-locking). Cara ini dapat dilakukan jika tipe tabel yang digunakan adalah MyISAM. Kedua, dapat menggunakan perintah BEGIN, COMMIT dan ROLLBACK. Cara ini dapat dilakukan jika tipe tabel adalah tabel transaksi, yaitu InnoDB. Terdapat 4 (empat) prinsip dasar transaksi yang biasa disingkat sebagai ACID, ACID, yaitu: a. Atomicity. Atomicity. Atom merupakan komponen terkecil dari materi, atau sesuatu yang tidak dapat dibagi-bagi lagi. Prinsip ini berlaku pada proses transaksi. Semua proses (perintah) yang ada di dalam satu paket transaksi harus selesai semua atau tidak selesai sama sekali. Dengan kata lain, dalam satu transaksi tidak boleh ada proses (perintah) yang gagal dieksekusi. b. Consistency. Bahwa kegagalan satu proses dalam transaksi tidak akan mempengaruhi transaksi lainnya. c. Isolation. Isolation. Secara sederhana, bahwa data yang sedang digunakan dalam satu transaksi, tidak dapat digunakan oleh transaksi lainnya sebelum seluruh proses transaksi yang pertama selesai. d. Durability. Durability. Jika sebuah transaksi selesai dieksekusi, hasilnya tetap tercatat dengan baik. BEGIN atau BEGIN atau START TRANSACTION digunakan TRANSACTION digunakan untuk memulai transaksi, COMMIT untuk mengakhiri transaksi dan menyimpan semua perubahan, sedangkan ROLLBACK ROLLBACK digunakan untuk menghentikan proses transaksi dan mengabaikan semua perubahan yang telah dilakukan. Pada tipe tabel InnoDB, tidak berlaku transaksi didalam transaksi (nested (nested transaction), transaction), artinya jika perintah BEGIN dieksekusi sebelum transaksi selesai dilakukan (perintah COMMIT), maka secara otomatis, perintah COMMIT akan dieksekusi terlebih dahulu. Perintah transaksi diatur oleh client. Jika pada saat proses transaksi berlangsung, koneksi client dengan dengan server terputus, maka secara otomatis, MySQL akan membatalkan semua perubahan yang sudah terjadi (seperti halnya mengeksekusi perintah ROLLBACK).
99
Bentuk umum perintah transaction : DELIMITER ;; BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND ROLLBACK; START TRANSACTION; Statement COMMIT; END;
Berikut ini adalah contoh penggunaanya ketika digabungkan dengan sebuah procedure. DELIMITER ;; CREATE PROCEDURE inputSiswa() BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND ROLLBACK; START TRANSACTION; insert into tbl_siswa values ('12347','Deni','Malang','Malang'); insert into logsiswa values ('12347','2017-10-18'); COMMIT; END;
pada procedure , diatas bagian yang penting adalah: DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND ROLLBACK; perintah di atas artinya adalah akan melakukan pengecekan bila terjadi error, warning dan proses-proses yang tidak sesuai maka akan di lakukan perintah ROLLBACK.
100
G. Aktivitas Pembelajaran 1. Jalankan halaman web “phpMyAdmin” dengan cara seperti berikut ini: Carilah Control Panel XAMPP melalui tombol “Start” yang ada pada masingmasing sistem operasi dan carilah menu program XAMPP. Jika menggunakan sistem operasi windows maka akan tampil seperti pada gambar 13.
Gambar 13. Menu XAMPP
Setelah diklik maka akan tampil Control Panel XAMPP, kemudian aktifkan service
“Apache” dan “MySQL” dengan klik tombol “Start” pada kolom action, maka hasilnya akan tampil seperti pada gambar 14.
101
Gambar 14. Control Panel XAMPP
Langkah berikutnya adalah membuka browser yang sudah terdapat di laptop seperti Google Chrome, Internet Explorer, Mozilla Firefox dan lain-lain, kemudian ketikkan di kotak url alamat http://localhost/phpmyadmin maka akan tampil aplikasi phpMyAdmin seperti pada gambar 15.
Gambar 15. Tampilan awal aplikasi phpMyAdmin
Pilihlah salah satu database yang secara default telah disediakan secara otomatis, dengan nama information_schema. Ekplorasilah menu-menu yang terdapat dalam phpMyadmin seperti pada uraian materi. 2. Jalankan aplikasi phpMyAdmin, kemudian klik menu SQL dan ikuti langkahlangkahnya berikut ini:
Buatlah database perpustakaan menggunakan query CREATE DATABASE perpustakaan
102
kemudian aktifkanlah database perpustakaan dengan cara melakukan klik database perpustakaan yang terdapat disebelah kiri menu phpMyAdmin.
Tahap
selanjutnya
adalah
membuat
tabel
member
pada
database
perpustakaan menggunakan query CREATE TABLE member( id_member INT(8) NOT NULL PRIMARY KEY, nama VARCHAR(50) NOT NULL, alamat VARCHAR(50) NOT NULL, tempat_lahir VARCHAR(50) NOT NULL, tgl_lahir DATE NOT NULL, tgl_member DATE NOT NULL, gender ENUM('L','P'), telp CHAR(15) )
Lakukan analisa terhadap kode query pembuatan tabel member tersebut.
Lakukan pengisian data pada tabel member menggunakan query INSERT INTO member (id_member,nama,alamat,tempat_lahir,tgl_lahir,tgl_member, gender) VALUES ('12345678','Andy','Jl.Bend.Sutami
2','Malang','1988-01-
20','2016-10-18','L')
Ulangi pengisian data pada tabel member menggunakan nilai yang bervariatif, kemudian perhatikan, amati dan analisa hasilnya.
Lihatlah record pada tabel member menggunakan query SELECT * FROM member
Kemudian lanjutkan dengan mengubah salah satu data member yang mempunyai nama “andy” dengan perintah query UPDATE member SET tempat_lahir='MEDAN' WHERE nama='andy'
Amatilah dan analisa hasilnya.
Hapuslah salah satu data member yang mempunyai nama “andy” dengan perintah query 103
DELETE FROM member WHERE nama='andy'
Amatilah dan analisa hasilnya. 3. Jalankan aplikasi phpMyAdmin, kemudian klik menu SQL dan ikuti langkahlangkahnya berikut ini:
Buatlah view dari tabel member menggunakan query CREATE VIEW semua_member AS SELECT * FROM member CREATE VIEW
member_laki AS SELECT
* FROM
member
WHERE
* FROM
member WHERE
gender=’L’
ALTER
VIEW
member_laki
AS
SELECT
gender='L' ORDER BY id_member DESC CREATE VIEW member_perempuan AS SELECT * FROM member WHERE gender=’P’
ALTER VIEW member_perempuan AS SELECT * FROM member WHERE gender='P' ORDER BY id_member ASC
Lihatlah hasil dari view menggunakan query SELECT * FROM semua_member SELECT * FROM member_laki SELECT * FROM member_perempuan
Amatilah dan lakukan analisa dari hasil pemanggilan view tersebut. 4. Bukalah halaman web “phpMyAdmin” melalui web browser yang telah terpasang dikomputer. Kemudian buatlah sebuah database dengan 2(dua) tabel, dengan melakukan klik pada tab menu “SQL”, selanjutnya ketikkan kode program seperti berikut ini:
104
5. Lakukan pengisian beberapa data pada tabel tersebut dengan terlebih dahulu memilih database yang aktif, yaitu melakukan klik pada database “sekolah” yang terdapat pada daftar database di area sebelah kiri, seperti pada gambar berikut
Gambar 2. Mengaktifkan database
Setelah terpilih database, maka pilihlah menu “SQL”. Proses selanjutnya adalah ketikkan kode program seperti berikut ini:
105
6. Berdasarkan tabel-tabel tersebut, lanjutkan dengan pembuatan beberapa stored procedure seperti berikut ini:
Kemudian panggil procedure tersebut menggunakan perintah
Amatilah dan analisa hasil dari eksekusi procedure tersebut. 7. Lanjutkan dengan membuat procedure seperti berikut ini:
Kemudian panggil procedure tersebut secara bergantian menggunakan perintah:
Amatilah dan analisa hasil dari eksekusi procedure tersebut. 8. Lanjutkan dengan membuat procedure seperti berikut ini:
106
Kemudian panggil procedure tersebut menggunakan perintah:
Amatilah dan analisa hasil dari eksekusi procedure tersebut. 9. Tambahkanlah data untuk tabel “nilaisiswa” menggunakan perintah insert seperti berikut ini;
10. Buatlah function dengan satu parameter nilai minimal, yang berfungsi untuk menghitung jumlah siswa yang mempunyai nilai IPA diatas nilai minimal. Bentuk function seperti berikut ini:
Kemudian jalankan function getLulusIPA seperti berikut ini;
107
11. Berikutnya adalah pembuatan function yang digunakan untuk menghitung jumlah siswa yang lulus dengan ketentuan rata-rata nilai adalah lebih besar dari 60. Buatlah function seperti berikut ini;
Kemudian jalankan function tersebut menggunakan perintah seperti berikut:
Amati dan analisa hasil output yang ditampilkan. Ubahlah nilai yang ada dalam tabel nilaisiswa, kemudian jalankan lagi function “ getJumlahSiswaLulus”. Amati dan analisa hasil output yang tampil. 12. Buatlah trigger yang berfungsi jika ada proses insert untuk tabel “datasiswa” maka otomatis tabel nilaisiswa akan terisi nilai 0 (nol) untuk semua nilai. Bentuk trigger adalah seperti berikut ini:
Kemudian lakukan input data pada tabel “datasiswa” dengan perintah seperti berikut:
Amati dan analisa output yang dihasilkan pada tabel “ datasiswa” dan tabel
“nilaisiswa”.
108
13. Buatlah procedure yang digunakan untuk melakukan beberapa input data sekaligus untuk tabel “datasiswa” dan “nilaisiswa” yang didalamnya terdapat proses TRANSACTION. Bentuk procedure tersebut adalah seperti berikut ini:
Kemudian jalankan procedure tersebut dengan perintah seperti berikut:
Amati dan analisa hasil output pada tabel “datasiswa” dan “nilaisiswa”. Kemudian lakukan sekali lagi pemanggilan procedure tersebut dan buat kesimpulan dari hasil analisa anda.
109
H. Latihan/Kasus/Tugas 1. Secara default Apache web server menggunakan port 80 dan 43 untuk layanan SSL, sedangkan MySQL menggunakan port 3306. Jika terjadi konflik dalam penggunaan port, maka bagaimanakah cara melakukan konfigurasi port pada Apache dan MySQL? 2. Dengan menggunakan query SQL, buatlah database dengan nama “ireneselular” yang didalamnya terdapat sebuah tabel barang dengan record seperti pada gambar 16.
Gambar 16. Tabel barang 3. Berdasarkan gambar 16. Buatlah query untuk menampilkan kolom nama_barang, nomor_pabrik, merk dan kode_supplier! 4. Berdasarkan gambar 16. Buatlah query untuk menampilkan record dengan ketentuan merk adalah Iphone! 5. Berdasarkan gambar 16. Buatlah view harga_mahal untuk menampilkan record dengan ketentuan harga beli lebih dari Rp 3.500.000! 6. Berdasarkan gambar 16. Buatlah view stok_banyak untuk menampilkan record dengan ketentuan stok lebih dari 20 buah! 7. Berdasarkan gambar 16. Buatlah view mahal_banyak untuk menampilkan record dengan ketentuan harga beli lebih dari Rp 3.500.000 dan stok lebih dari 20 buah! 8. Berdasarkan
gambar
16.
Buatlah
view
iphone_mahal_banyak
untuk
menampilkan record dengan ketentuan harga beli lebih dari Rp 3.500.000, stok lebih dari 20 buah dan merk adalah Iphone! Berdasarkan tabel “datasiswa” dan “nilaisiswa” yang terdapat pada aktivitas pembelajaran maka: 9. Buatlah sebuah procedure dengan nama “getSiswaByBorn” yang digunakan menampilkan data siswa pada tabel “datasiswa” berdasarkan kriteria input tempat lahir!
110
10. Buatlah sebuah function dengan nama “getJmlByGender” untuk menghitung jumlah siswa pada tabel “datasiswa” berdasarkan kriteria input gender! 11. Buatlah procedure “isiNilaiSiswa” yang digunakan untuk mempermudah pengisian data pada tabel “nilaisiswa”! 12. Buatlah tabel baru dengan nama “SiswaKeluar” yang terdiri dari kolom nis dan tgl_hapus, dimana fungsinya adalah mencatat data siswa yang dihapus dari tabel
“datasiswa”, kemudian buatlah trigger untuk menjalankan fungsi tersebut! 13. Buatlah procedure validSiswa” yang terdapat fungsi transaction untuk commit “
dan rollback dari pengisian data untuk tabel “nilaisiswa” !
111
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini. Umpan Balik:
Tindak Lanjut:
112
J. Kunci Jawaban Latihan/Kasus/Tugas 1. Mengubah konfigurasi port pada file httpd.conf untuk apache web server atau mysql.ini untuk database, melalui tombol config di XAMPP control panel seperti pada gambar 17.
Gambar 17. Setting Port XAMPP
Kemudian gantilah nilai 80 pada baris “listen 80” dengan nilai yang lain seperti pada gambar 18. Setelah itu tekan tombol “Stop” dan jalankan lagi dengan menekan tombol “start”.
Gambar 18. File httpd.conf
113
2. CREATE DATABASE ireneselular CREATE TABLE barang ( id_barang CHAR(5) NOT NULL PRIMARY KEY , nama_barang VARCHAR(50) NOT NULL, nomor_pabrik CHAR(8) NOT NULL, merk VARCHAR(25) NOT NULL, kode_supplier CHAR(5) NOT NULL, harga_beli INT(8) NOT NULL, stok INT(4) NOT NULL )
3. SELECT
nama_barang,nomor_pabrik,merk,kode_supplier
FROM
barang
4. SELECT * FROM barang WHERE merk=’Iphone’ 5. CREATE
VIEW
harga_mahal
AS
SELECT
* FROM
barang
WHERE
harga_beli > 3500000
6. CREATE VIEW stok_banyak AS
SELECT * FROM barang WHERE stok
> 20
7. CREATE VIEW
mahal_banyak
AS
SELECT
* FROM
barang
WHERE
* FROM
barang
WHERE
harga_beli > 3500000 AND stok > 20
8. CREATE VIEW
mahal_banyak
AS
SELECT
harga_beli > 3500000 AND stok > 20 AND merk=’Iphone’
9.
10.
114
11.
12.
13.
K. Daftar Pustaka Hariyanto B., 2004. Sistem Manajemen Basis Data (Pemodelan, Perancangan dan Terapannya), Bandung. Informatika Bandung. Harris A., 2014. HTML5 and CSS3 All-in-One For Dummies® 3rd Edition, John Wiley & Sons, Inc. Canada. Solichin A., 2010. MySQL 5 Dari Pemula Hingga Mahir, Jakarta, Universitas Budi Luhur.
115
BAB 7 MENERAPKAN AKSES BASIS DATA Kode Unit: (J.620100.021.02) Oleh: Alun Sujjada
A. Ringkasan Unit Kompetensi “Menerapkan Akses Basis Data ” adalah salah satu unit kompetensi tentang pemanfaatan basis data sebagai media penyimpanan data terstruktur beserta prosedur-prosedur untuk mengaksesnya. Tujuan uraian materi ini adalah agar para peserta dapat membuat berbagai operasi basis data, membuat prosedur untuk mengakses basis data, membuat koneksi basis data serta melakukan pengujian program basis data yang meliputi uji performa. Pendekatan pembelajaran yang digunakan untuk pendalaman materi unit kompetensi ini diantaranya adalah dapat dilakukan dengan metode praktik, dengan disertai ceramah dan penjelasanpenjelasan singkat. Uraian materi dimulai dengan penyimpanan basis data berbasis query meliputi proses penambahan (insert), perubahan (update), penghapusan (delete), pencarian (query), pembuatan backup (dump) dan pengembalian backup (restore), kemudian dilanjutkan dengan penerapan library untuk melakukan akses data dan teknologi koneksi basis data beserta pengujiannya.
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi
“Menerapkan Akses Basis Data” , maka diharapkan dapat: a. Membuat berbagai operasi terhadap basis data, b. Membuat prosedur akses terhadap basis data, c. Membuat koneksi basis data, d. Menguji program basis data.
116
C. Ruang Lingkup Unit Kompetensi “Menerapkan Akses Basis Data” , menunjukkan kemampuan pekerja untuk memenuhi persyaratan dasar bekerja di dunia usaha atau industri yang berkaitan dengan teknologi informasi. Unit kompetensi ini adalah penting karena merupakan kompetensi inti dalam pembuatan sistem informasi yang sudah pasti akan melibatkan penerapan basis data.
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi
“Menerapkan Akses Basis Data” dijelaskan pada Tabel 2 berikut, Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi “Menerapkan
Akses Basis Data” (Berdasarkan SKKNI 282 Tahun 2016) No
Elemen Kompetensi
No
1.
Membuat berbagai operasi terhadap basis data.
1.1
Data dapat disimpan/diubah ke dalam format basis data.
1.2
Informasi yang diinginkan dapat dihasilkan menggunakan query tersebut. Indeks dipergunakan untuk mempercepat akses. Library akses basis data dapat diterapkan. Perintah akses data yang relevan dengan teknologi atau jenis baru data, diterapkan untuk mengakses data. Teknologi koneksi yang sesuai dipilih Keamanan koneksi ditentukan. Hak setiap pengguna ditentukan Skenario pengujian disiapkan Logika pemrograman mengacu pada kinerja statement akses data yang akan dibaca. Performansi mengacu pada kinerja statement akses data yang akan dibacadata diuji.
1.3 2.
Membuat prosedur akses terhadap basis data
2.1 2.2
3.
Membuat koneksi basis data
4.
Menguji program basis data
3.1 3.2 3.3 4.1 4.2
4.3
Kriteria Unjuk Kerja
117
E. Kontekstualisasi Batasan variabel dalam kegiatan pembelajaran unit kompetensi “Menerapkan Akses
Basis Data” adalah sebagai berikut (Berdasarkan SKKNI 282 Tahun 2016); 1. Unit ini berhubungan dengan pembuatan modul akses terhadap basis data 2. Akses terhadap basis data meliputi proses penambahan (insert), perubahan (update), penghapusan (delete), pencarian (query), pembuatan backup (dump) dan pengembalian backup (restore). 3. Akses terhadap basis data meliputi proses penambahan (insert), perubahan (update), penghapusan (delete), pencarian (query), pembuatan backup (dump) dan pengembalian backup (restore). 4. Peralatan meliputi manual bahasa pemrograman, manual sistem basis data yang digunakan dan perangkat lunak pemrograman basis data terkait.
118
F. Uraian Materi 1. Operasi Basis Data RDBMS (Relational Database Management System) seperti MySQL memiliki beberapa jenis operasi dalam pengelolaan basis data. Operasi tersebut terbagi menjadi 3 yaitu: a. Operasi terhadap data (record). b. Operasi terhadap struktur data. c. Operasi terhadap proses administrasi. Operasi terhadap data seperti yang telah dibahas pada materi sebelumnya meliputi sekumpulan set instruksi yang berhubungan dengan proses CRUD (Cread, Read, Update, Delete) atau secara sintaks query SQL adalah select, insert, update, delete dan pengelolaan file. Adapun operasi terhadap struktur data adalah sebuah proses yang digunakan untuk pengaturan ataupun manajemen bentuk dari basis data dan tabel seperti create, alter, index, drop, show view, create routine, alter routine, create view, event dan trigger. Sedangkan operasi terhadap proses administrasi adalah operasi yang digunakan untuk keberlangsungan dan penyimpanan basis data seperti grant, super, process, reload, shutdown, show databases, lock tables, reference, replication client, replication slave dan create user.
2. Prosedur Akses Basis Data Pengembangan sebuah sistem informasi pasti akan melibatkan basis data sebagai wadah untuk melakukan pengarsipan atau pendokumentasian data secara digital. Segala hal tentang aktivitas perusahaan harus mempunyai rekaman data yang terorganisir rapi, sehingga proses akan menjadi lebih efektif dan efisien ketika data tersebut diperlukan oleh pihak yang membutuhkan. Kelebihan-kelebihan dalam menggunakan basis data adalah: a. Meminimalisir tingkat duplikasi data, karena jika perekaman data secara manual (menggunakan kertas) akan rentan terhadap duplikasi data. b. Mengurangi penggunaan kertas dalam
pencatatan data,
sehingga
pengeluaran untuk biaya kertas dapat dikurangi. c. Integritas data yang kuat karena terdapat beberapa tabel yang saling berelasi, sehingga ketika ada perubahan data di 1(satu) tabel, maka akan mengubah data pada tabel lainnya. 119
d. Dapat saling berbagi (sharing) data dengan semua pihak yang mempunyai kewenangan. e. Menggunakan konsep basis data server, maka proses bisnis dalam sebuah perusahaan akan menjadi lebih cepat, karena tidak terikat oleh ruang dan waktu, kapanpun dan dimanapun data tersebut dapat digunakan untuk pengelolaan informasi. f.
Tingkat keamanan yang lebih terjamin dibandingkan dengan cara yang manual, karena terdapat fasilitas penggunaan username dan password.
g. Ruang penyimpanan yang lebih praktis dibandingkan dengan arsip manual karena dengan cara manual membutuhkan tempat penyimpanan yang lebih besar. Adapun kekurangan menggunakan basis data adalah: a. Mahalnya perangkat keras dan perangkat lunak berbayar yang digunakan, masih dirasakan oleh pengguna tingkat menengah kebawah. b. Membutuhkan pakar atau orang yang ahli dalam melakukan manajemen basis data. Basis data mempunyai prosedur masing-masing untuk mengaksesnya, tergantung dengan jenis RDBMS yang digunakan, sehingga secara umum terdapat tahapan-tahapan untuk mengaksesnya. Tahap-tahap tersebut adalah: a. Menetapkan library RDBMS yang akan digunakan Pemilihan library yang akan digunakan dalam mengakses basis data adalah sebuah hal yang penting dalam proses pengembangan sebuah sistem informasi, karena akan berpengaruh terhadap kebutuhan-kebutuhan selanjutnya terkait dengan pengembangan sistem. Pemilihan library basis data terstruktur seperti MySQL, SQL server, Oracle dan lain-lain, atau menggunakan basis data NoSQL yaitu basis data yang tidak menggunakan perintah SQL untuk memanipulasinya, kecenderungan digunakan untuk aplikasi yang bersifat realtime dan cara penyimpanannya menggunakan konsep key-value based (kunci da nisi yang saling berpasangan). b. Menetapkan driver basis data. Proses untuk menetapkan driver software yang berfungsi untuk melakukan koneksi ke basis data sesuai dengan karakteristiknya masing-masing. Driver software adalah sebagai penghubung antara bahasa program yang digunakan dengan RDBMS. Setiap RDBMS memiliki driver yang spesifik. 120
c. Melakukan Koneksi Koneksi basis data dilakukan dengan menuliskan connection string pada bahasa pemrograman yang digunakan untuk membuat aplikasi, yang berisikan tentang parameter-parameter yang digunakan, seperti nama domain, ip address, username dan password dan lain-lain. d. Pengujian program basis data. Melakukan pengujian program akses basis data dengan sekumpulan set instruksi query
G. Aktivitas Pembelajaran 1. Lakukan import data dari file berekstensi sql. Adapun langkahnya adalah sebagai berikut: a. Jalankan halaman web “phpMyAdmin” dengan cara seperti berikut ini: Carilah Control Panel XAMPP melalui tombol “Start” yang ada pada masingmasing sistem operasi dan carilah menu program XAMPP. Jika menggunakan sistem operasi windows maka akan tampil seperti pada gambar 13.
Gambar 13. Menu XAMPP
121
Setelah diklik maka akan tampil Control Panel XAMPP, kemudian aktifkan service “Apache ” dan “MySQL” dengan klik tombol “Start” pada kolom action, maka hasilnya akan tampil seperti pada gambar 14.
Gambar 14. Control Panel XAMPP
Langkah berikutnya adalah membuka browser yang sudah terdapat di laptop seperti Google Chrome, Internet Explorer, Mozilla Firefox dan lain-lain, kemudian ketikkan di kotak url alamat http://localhost/phpmyadmin maka akan tampil aplikasi phpMyAdmin seperti pada gambar 15.
Gambar 15. Tampilan awal aplikasi phpMyAdmin
b. Buatlah database dengan nama “sekolah”, dengan cara klik hyperlink “new” pada area menu seperti pada gambar 16.
122
Gambar 16. Menu “New” PHPMyadmin
c. Kemudian isikan nama database dengan nama “sekolah” dan klik tombol
“Create” seperti pada gambar 17.
Gambar 17. Pengisian nama database
d. Langkah selanjutnya adalah download file dengan ekstensi sql di alamat url: “https://drive.google.com/open?id=0B_GNp3gbn4dJS0l4NXQ2Z1NHeDQ”,
kemudian simpanlah file tersebut kedalam komputer atau laptop, dengan lokasi yang mudah untuk disimpan, misal “E: \” e. Lakukan import data dengan melakukan klik pada menu “import” seperti pada gambar 18.
Gambar 18. Menu import PHPMyadmin
f.
Kemudian klik tombol “Choose File” seperti pada gambar 19 dan pilihlah file
“sekolah.sql” yang telah didownload sebelumnya.
Gambar 19. Tombol “Choose File”
123
g. Lanjutkan dengan klik “Go”, amatilah hasilnya dan lakukan analisa.
2. Tampilkan semua data dari tabel “siswa” yang mempunyai “id_siswa” ganjil, langkah-langkahnya adalah sebagai berikut: a. Jalankan PHPMyadmin seperti pada langkah point 1a. b. Lakukan klik pada database “sekolah” yang bertujuan untuk mengaktifkan database agar dapat dilakukan query. c. Klik menu “SQL”, agar tampil text area yang digunakan untuk menuliskan query SQL. d. Ketikkan perintah atau instruksi SQL menggunakan operasi modulus (sisa
bagi) untuk menampilkan data siswa yang mempunyai “id_siswa” ganjil yaitu: SELECT * FROM `siswa` WHERE (id_siswa % 2=1) 3. Lakukan akses terhadap basis data “sekolah” untuk menampilkan tabel-tabel penyusunnya, menggunakan username dan password yang telah dibuat pada kegiatan belajar sebelumnya, menggunakan jendela console MySQL. Langkahlangkahnya adalah seperti berikut: a. Jalankan console Command Prompt, jika menggunakan sistem operasi windows tekan tombol pada keyboard (windows + R). b. Kemudian isikan “cmd” c. Kemudian lanjutkan dengan melakukan klik pada tombol “OK”, sehingga akan tampil seperti pada gambar 19.
Gambar 19. Console Command Prompt
124
d. Arahkan direktori aktif ke drive dan folder instalasi MySQL. Jika instalasi XAMPP dilakukan secara default maka ketikkan “cd C: \XAMPP\mysql\bin”, lanjutkan dengan menekan tombol enter . e. Kemudian ketikkan perintah “mysql –u root –p”, lanjutkan dengan menekan tombol enter dan isikan password dari database. Jika data username dan password yang diisikan benar, maka akan tampil console dari MySQL seperti pada gambar 20.
Gambar 20. Console MySQL
f. Tampilkan database yang telah dibuat di MySQL dengan mengetikkan perintah
“show databases;” , lanjutkan dengan menekan tombol enter , maka akan tampil seperti gambar 21.
Gambar 21. Informasi database
125
g. Tampilkan tabel dalam database “sekolah” dengan mengaktifkannya terlebih dahulu menggunakan perintah “use sekolah” kemudian tekan enter. h. Lanjutkan dengan mengetikkan perintah “show tables;” kemudian tekan enter. Hasilnya akan tampil seperti pada gambar 22.
Gambar 22. Informasi tabel dalam database
i.
Buatlah query untuk menampilkan data pada tabel “siswa” dengan mengetikkan perintah “select * from siswa”.
126
H. Latihan/Kasus/Tugas 1. Buatlah View dari tabel “siswa” pada database “sekolah” untuk menampilkan
data siswa yang mempunyai “id_siswa” genap. 2. Tampilkan data dari tabel “guru” pada database “sekolah” yang mempunyai
nip = aa2. 3. Buatlah prosedur untuk menampilkan data dari tabel “guru” pada database
“sekolah” yang mengajar pelajaran matematika.
127
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini.
Umpan Balik:
Tindak Lanjut:
128
J. Kunci Jawaban Latihan/Kasus/Tugas 1.
CREATE VIEW siswagenap AS SELECT * FROM siswa WHERE (id_siswa % 2=0)
2.
SELECT * FROM guru where nip='aa2'
3.
DELIMITER ;; CREATE PROCEDURE gurumatematika(IN mapel CHAR(15)) BEGIN SELECT * FROM guru WHERE pelajaran=mapel; END;
K. Daftar Pustaka Harris A., 2014. HTML5 and CSS3 All-in-One For Dummies® 3rd Edition, John Wiley & Sons, Inc. Canada. Solichin A., 2010. MySQL 5 Dari Pemula Hingga Mahir, Jakarta, Universitas Budi Luhur.
Čihař, M., Jayaratne, M., Bennetch, I., Bansod, D., Ungureanu, D., & Fauth, M. M. (2017, Agustus 20). https://www.phpmyadmin.net/try/. Dipetik Agustus 20, 2017, dari https://www.phpmyadmin.net/.
129
BAB 8 MEMBANGUN BASIS DATA (BUILD A DATABASE) Kode Unit: (ICTDBS412)
Oleh: Pieter Stephanus
A. Ringkasan Unit Kompetensi “Membangun Basis Data” diharapkan menampilkan keahlian dan pengetahuan yang dibutuhkan untuk membangun, menerapkan, menguji dan mengevaluasi sebuah basis data dengan acuan sebuah rancangan yang sudah ditetapkan sebelumnya.
Unit ini adalah salah satu unit kompetensi dasar yang harus dikuasai dalam bidang kerja perancangan dan administrasi basis data, atau bidang kerja terkait. Bidang kerja tersebut adalah yang mencakup kebutuhan dibangunnya basis data untuk penyimpanan dan pengambilan informasi.
Tidak ada persyaratan hukum, lisensi, atau sertifikasi yang dibutuhkan saat unit kompetensi ini dibuat. Metode pembelajaran yang efektif dalam unit ini melibatkan keterampilan baca, tulis, komunikasi lisan, interaksi dengan pihak lain, dan penyelesaian pekerjaan.
B. Tujuan Pembelajaran Setelah peserta diklat menyelesaikan pendalaman materi mengenai unit kompetensi Membangun Basis Data, diharapkan dapat: a) Mengidentifikasi persyaratan-persyaratan keamanan dan manajemen data Klien. b) Memproduksi sebuah purwarupa basis data. c) Mengisi dan melaksanakan pengujian basis data. d) Berdiskusi dengan Klien untuk mendapatkan persetujuan dari Klien. e) Melakukan implementasi basis data bersama Klien.
130
C. Ruang Lingkup Unit Kompetensi Membangun Basis Data, menunjukkan kemampuan pekerja untuk memenuhi persyaratan dasar bekerja secara aman dan efektif dalam: a) Menguraikan prinsip dasar Database Management System (yang kemudian disebut sebagai DBMS) terutama dalam fase perancangan. b) Menggambarkan fungsi dan fitur dari sebuah basis data. c) Menggambarkan pemodelan data logis. d) Menguraikan konsep rancangan objek-model, khususnya dalam: i.
Mengembangkan struktur data.
ii.
Mengembangkan sebuah purwarupa.
iii. Query basis data. iv. Penampilan basis data. v.
Pelaporan basis data.
e) Menjelaskan konsep rancangan fisik terkait purwarupa. f) Mengenali dan menggambarkan fasilitas run-time terkait implementasi basis data aktif dan operasi purwarupa basis data. g) Menggambarkan dan menerapkan structured query programming language (yang kemudian disebut sebagai SQL). Unit kompetensi ini adalah penting dan merupakan penjabaran tugas/ tanggungjawab yang harus dimiliki pekerja pada kualifikasi di bidang administrasi basis data.
D. Indikator Pencapaian Kompetensi Elemen-elemen kompetensi dan kriteria unjuk kerja dalam unit kompetensi Membangun Basis Data dijelaskan pada Tabel 2 berikut:
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi Membangun Basis Data (Berdasarkan ICTDBS412 Tahun 2016) No 01
Elemen Kompetensi
No
Konfirmasikan
1.1 Meninjau dokumentasi perancangan basis
rancangan basis data
Kriteria Unjuk Kerja
data, termasuk struktur data, query , laporan dan antarmuka pengguna.
131
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi Membangun Basis Data (Berdasarkan ICTDBS412 Tahun 2016) No
Elemen Kompetensi
No
Kriteria Unjuk Kerja
1.2
Membandingkan fitur akses database dan fitur keamanan
dengan
rencana
keamanan
organisasi. 1.3
Mendokumentasikan
inkonsistensi
dalam
rancangan basis data dan keamanan. 02
Membuat purwarupa 2.1 Mengembangkan prototipe sesuai dengan basis data
desain basis data. 2.2
Mengisikan tabel basis data dengan data yang sesuai, termasuk data bisnis terkini.
2.3
Menuliskan
program
konversi
untuk
mengimpor data dari sistem yang ada. 2.4
Mengembangkan data uji untuk menilai fitur database.
2.5
Menilai fungsionalitas purwarupa dengan Klien, termasuk mengidentifikasi kesalahan dalam kode program, dan memodifikasi tampilan, dan laporan.
2.6
Memasukkan umpan balik dari Klien ke dalam purwarupa.
2.7
Mendapatkan tanda tangan persetujuan Klien untuk purwarupa.
03
Menguji basis data
3.1
Mengembangkan rencana implementasi untuk basis data.
3.2
Melakukan instalasi perangkat lunak DBMS pada jaringan.
3.3
Mengisikan tabel basis data dengan data bisnis.
3.4 Menerapkan pengendalian keamanan dan akses. 3.5
Mencatat hasil-hasil keluaran dari:
132
Tabel 2. Elemen kompetensi dan kriteria unjuk kerja unit kompetensi Membangun Basis Data (Berdasarkan ICTDBS412 Tahun 2016) No
Elemen Kompetensi
No
Kriteria Unjuk Kerja a. Pengujian hasil keluaran basis data. b. Pengujian pendalian keamanan.
04
Mengevaluasi
basis 4.1
data
Meninjau basis data bersama Klien untuk mendapatkan persetujuan akhir.
4.2
Melengkapkan dokumentasi basis data.
4.3
Mengidentifikasi
dan
mendokumentasikan
persyaratan pelatihan pengguna. 4.4
Meminta dan mengamankan bukti penerimaan Klien terhadap basis data.
E. Kontekstualisasi Batasan variabel dalam kegiatan pembelajaran unit kompetensi Membangun Basis Data adalah sebagai berikut (Berdasarkan ICTDBS412 Tahun 2016). 4.
Konteks variabel meliputi poin berikut ini:
1.1. Unit ini berlaku untuk melakukan konfirmasi rancangan basis data, membuat purwarupa basis data, menguji basis data, dan mengevaluasi basis data dengan memperhatikan kepatuhan terhadap dokumentasi basis data dan umpan balik Klien. 1.2. Pengendalian akses
dan keamanan
basis data
dilaksanakan dengan
memperhatikan kepatuhan terhadap dokumen rencana keamanan organisasi. 1.3. Implementasi basis data bersama Klien dan dokumentasi basis data dilakukan dengan terus-menerus dalam rangka melakukan evaluasi terhadap perbaikan dan efektivitas perubahan pada basis data. 2.
Peralatan dan perlengkapan
2.1. Peralatan a.
Komputer server basis data
b.
Komputer Klien basis data
c.
Jaringan komputer
2.2. Perlengkapan a.
Perangkat lunak DBMS
133
3.
b.
Perangkat lunak antar muka basis data
c.
Perlengkapan perangkat lunak dokumentasi softcopy
d.
Perlengkapan perangkat keras dokumentasi hardcopy
Peraturan yang diperlukan
3.1. Rencana keamanan organisasi. 4.
Norma dan standar
4.1. Norma 1.
-
4.2. Standar a.
Rancangan basis data yang telah disetujui sebelumnya.
b.
Kebijakan dan Prosedur keamanan TIK organisasi yang membahas rencana keamanan organisasi.
134
F. Uraian Materi Prinsip Dasar Databas e Management Sy s tem (DBMS).
1.
Uraian elemen basis data berikut ini berfungsi sebagai dasar Bukti Ilmu
Pengetahuan dalam unit kompetensi Membangun Basis Data. Data adalah bagian terkecil dari sebuah Sistem Berkas, yang memiliki arti tertentu dalam kehidupan sehari-hari. Sekelompok Data yang digunakan sebagai sebuah unit oleh aplikasi tertentu disebut sebagai Record . Berkas adalah sekumpulan record-record dalam jenis yang sama. Basis data relasional menyebut data dengan jenis yang sama sebagai Kolom atau Field . Sementara Record disebut Baris atau Tuple, dimana Berkas disebut sebagai Tabel (Teorey, Lightstone, & Nadeau, 2006, hal. 2).
Nomor Pegawai Nama Lengkap DATA
Alamat
ICTDBS401 ICTDBS402
TABEL
ICTDBS403 ICTDBS404 ICTDBS405
Nomor Pegawai ICTDB401
BERKAS
ICTDBS406
TERDIRI DARI
ICTDBS407 ICTDBS408
KOLOM/FIELD
Sekumpulan Nomor Pegawai
BARIS/TUPLE
Record: Nomor pegawai Nama Lengkap Alamat
Gambar 1 Ilustrasi elemen basis data dan hubungannya dengan dunia nyata. Basis data merupakan sekumpulan data yang saling berhubungan dan disimpan untuk melayani banyak pengguna data dalam satu organisasi atau lebih. Database Management System (DBMS) adalah sekumpulan perangkat lunak yang digunakan untuk memanipulasi basis data. DBMS mendukung dua metode view terhadap basis data.
Logical View mencakup kemampuan membaca skema dan subskema basis data. Sementara Physical View mencakup kemampuan membaca metode akses dan pengklusteran. DBMS juga mendukung fitur data definition language (yang kemudian disebut DDL); data manipulation language (yang kemudian disebut DML); dan peralatan penting lain seperti transaction management dan concurrency control, data integrity, crash recovery, and security .
135
Uraian materi dalam unit kompetensi ini membahas implementasi Membangun Basis Data dengan menggunakan bahasa Structured Query Language (yang kemudian disebut sebagai SQL), dan DBMS MySQL dengan antar muka aplikasi phpMyAdmin. Perancangan basis data yang ideal harus mampu mengeliminasi redundansi data yang dapat mengarah pada Inkonsistensi Basis Data. Tak kalah pentingnya, rancangan basis data juga harus dapat memastikan integritas dan akurasi data. Melakukan perancangan basis data memerlukan keterampilan dalam mengambil keputusan yang berbeda untuk setiap basis data.
Hal ini disebabkan karena setiap basis data dimodifikasi untuk memenuhi persyaratan dan menggunakan aplikasi yang dikhususkan pada persyaratan tersebut. Pada akhirnya, setiap aplikasi dan basis data yang sesuai dengan persyaratan Klien akan bersifat unik. Karena keunikan ini, materi mengenai perancangan basis data lebih berfungsi sebagai panduan daripada instruksi yang bersifat tetap untuk segala kondisi implementasi basis data. Langkah panduan perancangan basis data ditampilkan pada diagram berikut:
136
Persyaratan Informasi
Menentukan Persyaratan Rancangan Logis
[Multiple Views]
Model
Integrasikan Views
[Single Views] Rubah menjadi tabel SQL
Normalisasi Rancangan Fisik
Pilih indeks (PK,FK) [Persyaratan Khusus]
Denormalisasi
[Jika tidak] Implementasi
Implementasikan
[Jika tidak]
Pemantauan dan Pelacakan Perubahan Persyaratan [Tutup]
Gambar 2 Siklus Hidup Basis Data Dalam penerapannya, fase dalam diagram siklus hidup basis data berfungsi sebagai poin nama tugas. Dokumentasi langkah kerja ini dibutuhkan dalam laporan unit kompetensi Membangun Basis Data. Contoh penempatan tugas-tugas tersebut dituangkan dalam tabel jadwal kerja berikut ini: 20 Agt 2017
No.
Nama Tugas
Awal
Akhir
21
1
Persyaratan Informasi
21/08/2017
21/08/2017
2
Rancangan Logis
22/08/2017
22/08/2017
3
Rancangan Fisik
23/08/2017
23/08/2017
4
Implementasi 1
24/08/2017
24/08/2017
5
Implementasi 2
25/08/2017
25/08/2017
22
23
24
25
Gambar 3 Contoh Dokumentasi Jadwal Kerja Membangun Basis Data
137
2.
Fungsi dan Fitur Basis Data.
Uraian fungsi dan fitur basis data berikut ini berfungsi sebagai dasar Bukti Ilmu
Pengetahuan dalam unit kompetensi Membangun Basis Data. Basis data memiliki fitur-fitur yang dapat dimanfaatkan dalam fase perancangan seperti dijelaskan dalam penjelasan berikut ini (Watt & Eng, 2014): a. Basis data memiliki fitur pemisahan data dan informasi mengenai data tersebut yang tersimpan dalam metadata. b. Program-data independence, yaitu pemisahan data dari program aplikasi, sehingga memudahkan proses perubahan struktur yang diperlukan saat implementasi. c. Multiple views, adalah fitur untuk menampilkan data dengan susunan yang berbeda sesuai persyaratan dan hak akses pengguna basis data. d. Concurency control strategies, merupakan strategi untuk memastikan akses data selalu sesuai dengan kebijakan akses dan integritas data yang diakses tetap terjaga. e. Control of data redundancy digunakan untuk mengendalikan kemungkinan terjadinya redudansi data dalam basis data tetap ditekan sekecil mungkin menggunakan pemrograman dalam aplikasi. f.
Data Sharing memungkinkan basis data untuk diakses banyak pengguna dalam organisasi dan dapat menggali lebih banyak informasi baru berdasar persyaratan masing-masing pengguna basis data.
g. Constraint adalah pembatasan atau aturan untuk memastikan masukan data sesuai persyaratan untuk pengguna basis data. h. Pembatasan akses adalah kemampuan basis data dan DBMS untuk membatasi lokasi akses dan hak akses pengguna ke dalam basis data. i.
Fasilitas pencadangan dan restorasi memungkinkan basis data untuk dilindungi dari kehilangan data, atau dapat juga dimanfaatkan untuk memindah basis data dari lokasi fisiknya.
3.
Pemodelan Data Logis.
Uraian pemodelan data logis berikut ini berfungsi sebagai Panduan Kerja dalam unit kompetensi Membangun Basis Data. Sesuai urutan kriteria unjuk kerja dalam unit ini , pemodelan data logis dipusatkan pada penyusunan atau peninjauan (jika dokumen
138
telah lengkap) rancangan basis data. Berikut adalah langkah-langkah dan kumpulan berkas yang harus dilengkapi dalam unit kompetensi ini:
Berkas Persyaratan Pengguna Sebelum melakukan pemodelan, diperlukan berkas persyaratan pengguna yang telah disetujui Klien mengenai basis data yang akan dibangun. Jenis dokumen ini setidaknya terdiri dari formulir:
i.
Contoh Masukan Data
Meliputi contoh masukan data dalam ruang lingkup kegiatan bisnis organisasi, termasuk detil ukuran dan jenis data yang diperlukan. Dengan menggunakan contoh masukan data ini, pengembangan struktur data dapat dimulai untuk membuat basis data dan tabel-tabel di dalamnya.
Query
ii.
Formulir ini harus setidaknya berisi pernyataan query berikut ini: 1.
Pernyataan koneksi akses basis data dari sisi Server dan Klien
2.
Membuat basis data
3.
Akses basis data dari sisi Server dan Klien
4.
Impor data dari berkas dan Ekspor basis data
5.
Membuat tabel dalam basis data
6.
Membuat kolom/field dalam tabel basis data
7.
Mengubah nama tabel dalam basis data
8.
Constraint manual yang diperlukan dalam basis data (jika ada)
9.
Memasukkan data dari sisi Server dan Klien
10.
Pengujian masukan data dari sisi Server dan Klien
11.
Pencarian masukan data
12.
Manajemen akses basis data untuk administrator dan klien
iii.
Laporan Dokumentasi formulir laporan harus setidaknya berisi berkas-berkas berikut ini: a.
Berkas Rencana Bisnis (mencakup gambaran kegiatan bisnis yang akan dituangkan dalam basis data, dan rancangan infrastruktur seperti spesifikasi Jaringan, Server basis data, dan klien basis data). Untuk membuat dokumen ini, 139
laksanakan kegiatan wawancara dengan pihak yang berwenang untuk pengolahan data manual organisasi dan pihak yang berwenang pada kebijakan keamanan TI organisasi. b.
Berkas Keamanan TI Organisasi.
c.
Struktur Data (berisi pengembangan elemen basis data dan tujuannya, fitur dan fungsi basis data sesuai tujuannya).
d.
Analisa Inkonsistensi Basis Data (dan solusi yang sudah dilakukan).
e.
Rancangan Logis menggunakan Entity Relationship Diagram (yang kemudian disebut sebagai ERD).
f.
Rancangan Fisik.
g.
Daftar DDL dan DML dalam dokumentasi query.
h.
Jadwal Kerja Membangun Basis Data.
i.
Berkas pertemuan wawancara dan persetujuan klien.
Tujuan Basis Data Dengan merujuk dokumen persyaratan pengguna, tujuan-tujuan dan kegunaan basis data serta tabel-tabel di dalamnya ditetapkan atau ditinjau ketepatannya dalam dokumentasi struktur data. Pemisahan Data ke dalam Tabel Langkah berikutnya adalah memastikan jika data telah dipilah kedalam tabel yang dibuat berdasarkan subjek tujuan-tujuan dan kegunaan basis data.
Pelacakan dan Konfirmasi Pr imary K ey Tahap ini digunakan untuk memastikan dalam setiap tabel terdapat satu kolom (atau lebih) yang berperan sebagai Primary Key unik dari tabel tersebut. Berikan label kunci sederhana untuk Primary Key yang terdiri dari satu kolom. Sebaliknya, berikan label kunci komposit untuk Primary Key yang terdiri lebih dari satu kolom. Gunakan penamaan ini untuk menjaga kemudahan membaca dokumentasi basis data yang akan dilaporkan.
Relasi Antar Tabel Setelah memastikan kemunculan kunci primer, buatlah atau lakukan konfirmasi relasi antar tabel yang ada sebagai bagian dari pemodelan logis. Pastikan setiap relasi yang
140
ditemukan memiliki salah satu jenis relasi one-to-many (satu ke banyak); many-tomany (banyak ke banyak); one-to-one (satu ke satu).
Perbaikan dan Normalisasi Rancangan Perbaikan dan normalisasi rancangan diperlukan untuk menjaga basis data tetap memenuhi persyaratan pengguna. Dokumentasikan semua kegiatan berikut dalam berkas Analisa Inkonsistensi Basis Data untuk dilaporkan di akhir penyelesaian unit kompetensi ini.
iv.
Perbaikan
Perbaikan basis data dapat dilaksanakan dengan cara menambah kolom, membuat tabel opsional menggunakan relasi satu ke satu, dan memisah tabel berukuran besar menjadi dua tabel yang lebih sederhana.
v.
Normalisasi
Normalisasi dilakukan untuk memastikan bahwa tabel-tabel dalam basis data benar secara struktur dan dapat berjalan optimal tanpa inkonsistensi data. Normalisasi yang didokumentasikan setidaknya menerapkan normalisasi bentuk pertama, kedua dan ketiga.
vi.
Aturan-Aturan Integritas a.
Aturan integritas Primary Key tidak boleh mengandung nilai NULL, baik itu kunci sederhana (satu kolom) ataupun kunci komposit (banyak kolom).
b. Aturan integritas referensial Setiap Foreign Key harus sesuai dengan Primary Key pada tabel induk yang dirujuk. Baris yang menggunakan Foreign Key hanya boleh ditambahkan jika data tersebut terdapat pada tabel induk asal Primary Key. Jika data Primary Key pada tabel induk berubah, maka semua data Foreign Key pada tabel anak turunnya harus berubah mengikuti tabel induk. c.
Integritas logika bisnis Selain dua aturan-aturan integritas sebelumnya, terdapat aturan logika bisnis. Misalnya adalah: usia harus melebihi atau sama dengan 17 tahun, kodepos terdiri dari lima digit angka; tanggal dan tenggat waktu harus ditetapkan pada jam kerja 141
organisasi; jumlah pemesanan barang harus kurang dari atau sama dengan stok yang tersedia. Dokumentasi persyaratan pengguna sangat diperlukan untuk pemenuhan langkah integritas logika bisnis.
4.
Konsep rancangan objek-model.
Uraian konsep rancangan objek-model berikut ini berfungsi sebagai Panduan Kerja dalam unit kompetensi Membangun Basis Data.
a.
Mengembangkan struktur data.
Dengan menggunakan dokumentasi struktur data, terapkan rancangan basis data dan tabel-tabel di dalamnya menggunakan aplikasi antar muka DBMS. Aplikasi phpMyAdmin digunakan dalam unit kompetensi Membangun Basis Data saat uraian ini dibuat.
b. i.
Mengembangkan purwarupa. Instalasi dan Konfigurasi phpMyAdmin Lakukan instalasi aplikasi phpMyAdmin bersama DBMS MySQL dalam paket framework XAMPP (Windows), WAMPP (Windows), LaMP (Linux) sesuai kebutuhan rancangan. Lengkapi langkah konfigurasi MySQL dan phpMyAdmin sebelum mengembangkan purwarupa basis data. Pastikan server basis data telah aktif dengan mengakses halaman phpMyAdmin pada alamat server basis data. Buka halaman Server Configuration Advisor untuk mendapatkan informasi pendukung langkah ini.
Gambar 4 Halaman Server Configuration Advisor
142
ii.
Pengaturan Akses User Instalasi DBMS MySQL dan phpMyAdmin standar akan menyediakan data login username root tanpa kata sandi. Langkah pertama setelah instalasi adalah menyesuaikan aplikasi dengan kebijakan keamanan organisasi. Lakukan langkah pengamanan ini melalui halaman user management pada situs aplikasi phpMyAdmin. Tetapkan kata sandi untuk root, dan tentukan dari host mana saja root dapat mengakses basis data. Langkah berikutnya adalah menentukan, user dengan jenis hak akses apa saja, dan lokasi akses host yang diperlukan dalam sistem.
Gambar 4 Halaman User Management iii.
Struktur basis data dan tabel Setelah menyelesaikan langkah pengamanan sebelumnya, laksanakan pembuatan basis data, impor basis data, pembuatan dan modifikasi tabel-tabel sesuai kebutuhan rancangan untuk organisasi. Gunakan berkas struktur data untuk menyelesaikan langkah ini. Langkah pembuatan purwarupa ini dilaksanakan salah satunya pada halaman Table Structure.
143
Gambar 5 Halaman Table Structure c.
Query basis data.
Bagian ini menyajikan contoh pernyataan SQL, terkait unit kompetensi Membangun Basis Data yang dapat disesuaikan dengan kebutuhan organisasi. Laporan rancangan basis data harus membahas kumpulan query yang dijabarkan dalam bagian uraian ini. Contoh dalam uraian ini adalah rancangan query untuk basis data untuk organisasi yang mengelola informasi Kelurahan dan SIM. Tabel 3. Daftar Pernyataan Query SQL Bahasan Tugas 1.
Pernyataan
koneksi
akses basis data dari sisi Server dan Klien
Contoh Perintah berikut dijalankan melalui command prompt (windows) atau terminal (sistem berbasis unix).
mysql --host=localhost --user=admin --password=sandi kelurahan
Keterangan: --host: server basis data --user: nama pengguna --password: kata sandi pengguna Kelurahan: contoh nama basis data
2.
Akses basis data dari sisi Server dan Klien
Lakukan koneksi menggunakan pernyataan perintah koneksi akses basis data, kemudian ketik perintah berikut: USE kelurahan;
3.
Membuat basis data
CREATE DATABASE kelurahan;
144
Tabel 3. Daftar Pernyataan Query SQL Bahasan Tugas 4.
Contoh
Impor data dari berkas dan Ekspor basis data
Pertama, pastikan basis data yang akan diimpor sudah dibuat. Kemudian, ketik perintah impor basis data: mysql -u [username] -p newdatabase < [database name].sql
Berikut adalah perintah ekspor basis data: mysqldump -u [username] -p [database name] > [database name].sql
5.
Manajemen
akses
basis
untuk
data
administrator dan klien
Membuat akun pengguna basis data: CREATE USER 'admin'@'localhost' IDENTIFIED BY 'sandi';
Dimana @'localhost' adalah lokasi host pengguna, jika tidak disebutkan maka host akan ditetapkan dengan '%'.
Perintah berikut memberikan semua hak akses ke semua basis data dalam DBMS GRANT ALL ON *.* TO 'admin'@'localhost';
Perintah berikut memberikan hak akses pemilihan/pencarian data dan memasukkan data ke semua basis data dalam DBMS GRANT SELECT, INSERT ON *.* TO 'admin' @'localhost';
Perintah berikut memberikan semua hak akses ke basis data kelurahan dalam DBMS GRANT ALL ON kelurahan.* TO 'admin'@'localhost';
Perintah berikut memberikan hak akses pemilihan/pencarian data dan memasukkan data ke basis data kelurahan dalam DBMS GRANT SELECT, INSERT ON kelurahan.* TO 'admin'@'localhost';
6.
Membuat tabel dalam
CREATE TABLE Warga ( NomorKTP int,
basis data
NamaBelakang varchar(255), NamaDepan varchar(255), Alamat varchar(255), Kota varchar(255) );
7.
Membuat
kolom/field
dalam tabel basis data 8.
Mengubah nama tabel dalam basis data
9.
Constraint manual yang diperlukan dalam basis data (jika ada)
ALTER TABLE Warga ADD TanggalLahir date; ALTER TABLE Warga RENAME TO Penduduk; CREATE TABLE sim ( ID int NOT NULL, NamaBelakang varchar(255) NOT NULL, NamaDepan varchar(255), Usia int, CHECK (Usia>=17) );
Keterangan: kata kunci CHECK digunakan untuk memeriksa jika usia yang dimasukkan sudah melebihi atau sama dengan 17 tahun.
10. Memasukkan data dari sisi Server dan Klien
INSERT INTO Warga VALUES ('1213456789012345678', 'Mahardika', 'Titian', 'Jakarta', 'DKI Jakarta');
145
Tabel 3. Daftar Pernyataan Query SQL Bahasan Tugas 11. Pengujian
Contoh
masukan
data dari sisi Server dan
INSERT INTO Customers (NomorKTP, NamaBelakang, NamaDepan, Alamat, Kota) VALUES
Klien
('1213456789012345678',
'Mahardika',
'Titian',
'Jakarta'); Catatan: kenali nomor atau tanda pengenal
error
yang dimunculkan
oleh DBMS.
12. Pencarian
masukan
data
SELECT * FROM Warga WHERE NomorKTP=1213456789012345678;
G. Aktivitas Pembelajaran Metode pembelajaran yang dapat digunakan dalam kegiatan pembelajaran unit kompetensi Membangun Basis Data dijelaskan pada Tabel 4 berikut:
Tabel 4. Keterampilan yang digunakan dalam aktivitas pembelajaran unit kompetensi Membangun Basis Data (Berdasarkan ICTDBS412 Tahun 2016) No
Keterampilan
1.
Baca
KUK 1.1-1.3,
Deskripsi 2.5, Melakukan analisa dan interpretasi informasi
2.6, 4.1, 4.3
tekstual untuk menetapkan persyaratan sistem Klien dan mengenali inkonsistensi rancangan dalam persyaratan tersebut.
2.
Tulis
1.3, 2.3, 2.7, a. Menggunakan terminologi teknis dalam 3.1, 3.5, 4.2
merekam
hasil
dan
ketidaksesuaian
basis data. b. Menghasilkan laporan dan dokumentasi yang kohesif dan terstruktur dengan baik, dalam rangka menyampaikan informasi dan instruksi yang detil dan akurat. 3.
Komunikasi
1.1,
2.5-2.7, Membangun komunikasi dengan cara aktif
lisan
4.1, 4.3, 4.4
mendengarkan,
menanyakan,
dan
merangkum: a. Persyaratan Klien b. Kebutuhan pelatihan Klien
146
Tabel 4. Keterampilan yang digunakan dalam aktivitas pembelajaran unit kompetensi Membangun Basis Data (Berdasarkan ICTDBS412 Tahun 2016) No
Keterampilan
KUK
Deskripsi c. Persetujuan produk atau fase kerja oleh Klien
4.
Interaksi dengan
4.4 pihak
Mengenali dan menerapkan protokol yang mengatur:
lain
a. Perihal apa yang harus dikomunikasikan b. Siapa pihak yang diajak berkomunikasi c. Bagaimana cara berkomunikasi dengan pihak tersebut
5.
Penyelesaian pekerjaan
Semua KUK
a. Membuat urutan dan membuat jadwal kegiatan yang kompleks, memantau pelaksanaannya
dan
mengelola
komunikasi yang relevan. b. Menggunakan keputusan,
proses
pengambilan
menetapkan
atau
mengklarifikasikan
tujuan,
mengumpulkan
informasi,
mengidentifikasi
dan
mengevaluasi
beberapa pilihan, terhadap serangkaian kriteria yang terbatas secara formal. c. Menggunakan
proses
memutuskan
analitis
suatu
untuk
tindakan,
menetapkan kriteria untuk memilih di antara pilihan-pilihan yang berbeda. d. Memahami prinsip dan konsep utama yang
mendasari
pengoperasian
rancangan,
sistem,
alat
dan dan
perlengkapan digital pendukungnya.
147
H. Latihan/Kasus/Tugas Berilah tanda silang (X) pada huruf a, b, c, dan d pada jawaban yang Anda anggap paling benar.
1. Kegiatan wawancara dalam organisasi dibutuhkan untuk mengumpulkan informasi terkait rancangan basis data dilaksanakan pada fase: a. Persyaratan Informasi b. Rancangan Logis c. Rancangan Fisik d. Implementasi 2. Dalam siklus hidup basis data, fase persyaratan informasi merujuk pada satu golongan berkas, temukan dan pilih yang berkas tersebut. a. Berkas Laporan Pendukung b. Berkas Struktur Organisasi c. Berkas Query Kebutuhan Bisnis Organisasi d. Berkas Masukan Data Organisasi 3. Berkas perubahan model diagram yang akan diwujudkan menjadi tabel dalam basis data dapat diberikan judul pada pilihan berikut, pilihlah judul yang paling sesuai menurut uraian materi sebelumnya. a. Berkas pemodelan organisasi b. Berkas struktur data c. Berkas rancangan logis ERD d. Berkas rancangan organisasi 4. Materi tujuan dibangunnya basis data dan rencana tabel di dalamnya harus dicantumkan dalam satu berkas dalam pilihan berikut, pilihlah judul yang paling sesuai menurut uraian materi sebelumnya. a. Berkas struktur data b. Berkas rancangan organisasi c. Berkas rancangan fisik d. Berkas kebutuhan bisnis organisasi
148
5. Pelacakan dan Konfirmasi Primary Key diperlukan dalam salah satu dari fase berikut, pilihlah judul yang paling sesuai menurut uraian materi sebelumnya. a. Persyaratan Informasi b. Rancangan Logis c. Rancangan Fisik d. Implementasi 6. Pilih alasan yang paling tepat menurut Anda, mengapa diperlukan adanya proses pemeriksaan relasi antar tabel. a. Menghindari inkonsistensi basis data b. Membantu proses normalisasi tabel c. Menjaga ketepatan penggunaan primary key dan foreign key d. Semua jawaban di atas benar 7. Dalam langkah pemeriksaan aturan integritas, terdapat fase pemeriksaan kesesuaian antara primary key dan foreign key , pilihlah nama fase tersebut di antara pilihan berikut: a. Aturan integritas b. Aturan integritas referensial c. Integritas logika bisnis d. Semua jawaban di atas salah 8. Berkas Keamanan TI Organisasi dibutuhkan untuk menentukan satu rancangan dalam pilihan berikut ini, pilihlah rancangan yang paling sesuai menurut uraian materi sebelumnya. a. Instalasi dan Konfigurasi phpMyAdmin b. Pengaturan Akses User c. Struktur basis data dan tabel d. Query basis data
149
9. Dengan alokasi alamat IP dalam jaringan organisasi sebagai berikut: Alamat IP
Departemen
192.168.12.0/24 Manajemen 192.168.14.0/24 Biro Administrasi 192.168.16.0/24 Biro Umum Pilihlah pernyataan yang tepat dalam membuat user yang hanya dapat mengakses basis data pegawai melalui jaringan biro administrasi: a. GRANT ALL ON pegawai.* TO 'admin'@'localhost'; b. GRANT ALL ON pegawai.* TO 'admin'@'192.168.16.0'; c. GRANT ALL ON pegawai.* TO 'admin'@'127.0.01'; d. GRANT ALL ON pegawai.* TO 'admin'@'192.168.14.0'; 10. Perhatikan pernyataan constraint SQL berikut ini:
CREATE TABLE sim ( ID int NOT NULL, NamaBelakang varchar(255) NOT NULL, NamaDepan varchar(255), Usia int, CHECK (Usia>=17) );
Keterangan: kata kunci CHECK digunakan untuk m emeriksa jika usia yang dimasukkan sudah melebihi atau sama dengan 17 tahun.
Pernyataan di atas digunakan untuk memenuhi kesesuaian rancangan aturanaturan integritas yang disebut sebagai: a. Aturan integritas b. Aturan integritas referensial c. Integritas logika bisnis d. Semua jawaban di atas salah
150
I. Umpan Balik/Tindak Lanjut Silahkan masing-masing peserta pelatihan memberikan umpan balik terhadap uraian materi yang diberikan dan tanggapan atau tindak lanjut yang diharapakan untuk kegiatan selanjutnya atau dimasa yang akan datang pada kolom dibawah ini. Umpan Balik:
Tindak Lanjut:
151
J. Kunci Jawaban Latihan/Kasus/Tugas Kunci jawaban untuk soal latihan sub subbab H disajikan pada Tabel x berikut: Tabel x. Kunci Jawaban soal latihan sub subbab H (Halaman x) No.
Jawaban
No.
Jawaban
1.
A
6.
D
2.
D
7.
B
3.
C
8.
B
4.
A
9.
D
5.
C
10.
C
Cocokkanlah jawaban anda dengan kunci jawaban di atas. Hitunglah jumlah jawaban anda yang benar, kemudian gunakanlah rumus di bawah ini untuk megetahui tingkat penguasaan anda terhadap materi pada modul ini (Tabel xx).
Rumus:
× 100 % = ℎ ℎ Tabel xx. Arti tingkat penguasaan yang dicapai berdasarkan hasil latihan Nilai
Makna
90 % - 100 %
Excellent
80 % - 89 %
Very Good
70 % - 79 %
Good
69
Less
%
152
K. Daftar Pustaka
Čihař, M., Jayaratne, M., Bennetch, I., Bansod, D., Ungureanu, D., & Fauth, M. M. (2017, Agustus 20). https://www.phpmyadmin.net/try/. Dipetik Agustus 20, 2017, dari https://www.phpmyadmin.net/. Teorey, T., Lightstone, S., & Nadeau, T. (2006). Database Modeling and Design: Logical Design (4th ed.). San Francisco, CA, USA: Elsevier Inc. Watt, A., & Eng, N. (2014). Database Design (2nd ed.). Victoria, BC, Canada: BCcampus. Dipetik Agustus 20, 2017, dari https://opentextbc.ca/dbdesign01/
153
154
BAB n PENUTUP Memuat kesimpulan masing-masing uraian materi.
… Simpulan Modul dengan judul Perakitan dan Pengoperasian Alat Tangkap 2 merupakan salah satu sumber belajar sebelum asesmen kompetensi keahlian Nautika Kapal Penangkap Ikan untuk skema klaster Prakitan dan Pengoperasian Alat Tangkap 2 yang diselenggarakan oleh LSP LPPPTK KPTK. Skema klaster tersebut terdiri atas unit-unit kompetensi, yaitu Memenuhi Persyaratan Keselamatan, Kesehatan Kerja, dan Lingkungan di Tempat Kerja (Bab 2); Merakit Rawai Tuna (Bab 3); dan Melakukan Penangkapan Ikan di Laut dengan Menggunakan Rawai Tuna (Bab 4).
Bab 2 tentang Memenuhi Persyaratan Keselamatan, Kesehatan Kerja, dan Lingkungan di Tempat Kerja menjelaskan materi tentang …. Bab 3 tentang Merakit Rawai Tuna menjelaskan materi tentang ….
Bab 2 tentang Melakukan Penangkapan Ikan di Laut dengan Menggunakan Rawai Tuna menjelaskan materi tentang ….
Secara umum kesimpulan dari uraian materi pembelajaran pada modul ini adalah mencakup teknis penggunaan peralatan, bagaimana cari merakit alat tangkap ikan rawai tuna, serta hal-hal yang perlu dipedomani dalam persyaratan keselamatan, kesehatan kerja dan lingkungan tempat kerja. Dan seterusnya.
155
LAMPIRAN
Lampiran 1. Lorem ipsum… Jika ada… Lampiran 2. Lorem ipsum… Jika ada…
156