Kode Mata Kuliah : 06410009 Pengampu Mata Kuliah : Sukenda Semester : IV (Empat) Waktu : 2 x 50 menit (bobot 2 SKS) Pertemuan ke :1 Tempat : Ruang Kelas di Universitas Widyatama
1.1. Manfaat Mata Kuliah
Setelah menyelesaikan mata kuliah ini, mahasiswa akan mampu mengaplikasikan isi yang telah dipelajari sehubungan dengan konsep dan teorema bahasa formal untuk kebutuhan dalam perancangan kompiler. Sehingga mahasiswa diharapkan belajar sungguh-sungguh untuk mencapai nilai akhir yang maksimal. Pengaplikasian yang bisa dilakukan pada pertemuan satu ini yaitu bagaimana mahasiswa mampu menerapkan materi yang diterangkan pada pertemuan satu ini, adapun materi yang disampaikan yaitu cakupan materi teori bahasa dan otomata secara keseluruhan dalam kehidupan sehari-hari.
1.2. Deskripsi Mata Kuliah
Matakuliah ini mempelajari tentang konsep dan teorema bahasa formal yang digunakan untuk kebutuhan perancangan kompiler. Matakuliah teori bahasa dan otomata mempunyai materi yang terkait dengan bahasa dan tata bahasa yang dijadikan acuan dalam membuat atau merancang kompiler. Materi yang akan dipelajari dari pertemuan 1 sampai dengan pertemuan 14 (tidak termasuk UTS dan UAS) yaitu : a. Pengenal Teori Bahasa, b. Bahasa dan Tata Bahasa, c. Hirarki Chomsky, d. Mesin Pengenal Regular Grammar, e. FSA (Finite State Automata), f. Ekspresi Reguler, g. Context Free Grammar, h. Push Down Automata. Materi kuliah, yang akan disampaikan nanti, disebarkan ke pertemuan- pertemuan dalam proses belajar mengajar (perkuliahan) baik secara konvensional maupun secara online. Penyebaran ini diharapkan dapat mempermudah penyampaian materi kuliah ke mahasiswa, sehingga mahasiswa dapat belajar secara sistematis. Begitu juga pengampu matakuliah dapat menyampaikan materi kuliah secara berkala, sehingga proses belajar mengajar berjalan dengan baik. Dengan adanya penyampaian materi kuliah secara sistematis dan juga pembelajaran mahasiswa secara baik maka tujuan atau manfaat mata kuliah bisa dirasakan dan diaplikasikan dalam kehidupan sehari-hari. Materi diatas merupakan garis besar yang akan disampaikan pada pertemuan perkuliahan, yang memungkinkan materi tersebut mempunyai sub-sub materi. Dan juga materi yang akan diajarkan bisa saja disampaikan dalam perkuliahan selama 2 atau 3 pertemuan, bahkan bisa jadi lebih dari 3 pertemuan tergantung dari banyaknya materi atau sub materi yang akan disampaikan.
1.3. Tujuan Instruksional Khusus
Setelah menyelesaikan pokok bahasan ini, mahasiswa akan mampu menjelaskan teori bahasa dan automata. Teori bahasa dan automata disampaikan pada pertemuan satu, karena materi ini merupakan dasar kita untuk membuat dan merancang kompiler. Sehingga mahasiswa diajak untuk bisa merancang kompiler, memang pada kenyataan dalam kehidupan sehari-hari dipastikan mahasiswa sudah menggunakan kompiler seperti C, C++, dan sebagainya, akan tetapi arahan dari konsep teori bahasa dan otomata disini yaitu ke arah merancang sebuah tatanan bahasa yang digunakan untuk kompiler. Kompiler merupakan cikal bakal untuk membuat program aplikasi atau lainnya pada sistem komputer. Komputer digunakan sebagai alat bantu untuk menyelesaikan pekerjaan (task). Dua pertanyaan yang seringkali muncul sehubungan dengan pekerjaan tersebut adalah : 1. Dapatkan pekerjaan tersebut dilaksanakan oleh komputer ? 2. Bila jawabannya dapat, bagaimana cara komputer melaksanakan pekerjaan tersebut. Model komputasi berguna menjawab kedua pertanyaan di atas. Terdapat tiga jenis struktur yang digunakan dalam model komputasi : 1. Grammer (tata bahasa) 2. Finite state machine 3. Mesin turing Tata bahasa digunakan untuk membangkitkan kalimat dari suatu bahasa dan untuk memeriksa apakah suatu kalimat termasuk didalam bahasa tersebut. Seperti halnya tata bahasa, finite state machine (FSM) digunakan untuk mengenali kalimat dari suatu bahasa dan untuk menghasilkan keluaran sesuai dengan spesifikasi yang didefinisikan. Konsep tata bahasa dan FSM keduanya saling berkaitan, dan antara keduanya dapat saling ditransformasikan satu sama lain. Mesin Turing adalah pengenal bahasa yang lebih kompleks, yang dalam pengenalannya mesin ini dilengkapi dengan memori. Mesin Turing dapat mengenali kalimat yang tidak dapat dikenali oleh FSM sekalipun. Mesin Turing adalah model komputasi yang paling umum. Ia dapat melakukan pekerjaan apa saja yang dapat dilaksanakan oleh komputer. 1.4. Strategi Perkuliahan Perkuliahan merupakan kegiatan yang melibatkan 2 entitas yaitu mahasiswa dan pengampu matakuliah (dosen). Dua entitas tersebut saling berinteraksi antara satu dengan yang lainnya dengan media yang bisa berupa ruang kelas lengkap dengan alat-alat tulisnya atau teknologi modern. Interaksi dua entitas tersebut bisa searah atau dua arah secara bersama-sama dan bergantian, tentunya masih dalam konteks pembelajaran matakuliah yang akan disampaikan ke mahasiswa. Mahasiswa sebagai penerima informasi atau bisa juga sebagai pemberi informasi, informasi yang diterima atau diberikan berupa materi kuliah. Sedangkan pengampu matakuliah (dosen) sebagai sumber informasi (sebagai pemateri) yang disebarkan atau dikirimkan ke mahasiswa, akan tetapi bisa juga pengampu matakuliah bisa sebagai penerima informasi dari mahasiswa. Dua entitas yang saling memberi dan menerima informasi materi matakuliah maka perlu strategi penyampaian yang baik, sehingga transfer informasi bisa berjalan dengan baik. Strategi penyampaian informasi materi matakuliah bisa disebut juga strategi perkuliahan yang akan diterapkan ke dua entitas tersebut. Strategi yang diterapkan kepada mahasiswa akan berbeda dengan pengampu matakuliah yang lainnya. Berikut strategi perkuliahan pengampu matakuliah yaitu : a. Menjelaskan tujuan instruksional umum (TIU) dan tujuan instruksional khusus (TIK) yang harus dicapai, b. Memberikan penjelasan mengenai aturan perkuliahan, aturan penilaian serta menginformasikan referensi yang digunakan, c. Menjelaskan mengenai teori bahasa dan otomata, d. Menjelaskan mengenai hubungan atau keterkaitan antara bahasa dan otomata, e. Memberi beberapa pertanyaan untuk mengetahui seberapa jauh mahasiswa mengetahui teori bahasa dan otomata, f. Memberi softcopy atau link file pdf untuk buku yang dipakai, g. Memberitahukan pokok bahasan pertemuan berikut dan memberikan tugas, h. Memberi gambaran materi yang akan dibahas minggu.
1.5. Kriteria Penilaian
Penilaian merupakan hasil akhir dari proses perkuliahan selama satu semester yang telah ditempuh oleh mahasiswa dan dosen, dimana mahasiswa menerima nilai dari selama belajar sedangkan dosen memberi nilai terhadap mahasiswa yang mengikuti matakuliah yang diampunya. Sehingga perlu disampaikan mengenai penilaian dari matakuliah teori bahasa dan otomata agar mahasiswa bisa memahami proses penilaian. Pemahaman tentang proses penilaian kepada mahasiswa supaya mahasiswa bisa mengukur sejauh mana nilai yang akan diperolehnya. Berikut kriteria penilaian kelulusan untuk matakuliah teori bahasa dan otomata : a. Akan diadakan Quiz sebagai tolak ukur pengampu matakuliah terhadap mahasiswa mengenai keterserapan materi oleh mahasiswa, biasanya materi yang telah disampaikan pada saat pertemuan yang terbatas. b. Akan diadakan Tugas sebagai tolak ukur pengampu matakuliah terhadap mahasiswa mengenai kemampuan eksplorasi mahasiswa yang terkait dengan materi matakuliah yang telah disampaikan oleh pengampu matakuliah. c. Akan diadakan Ujian Tengah Semester (UTS) sebagai tolak ukur terhadap kemampuan mahasiswa dalam menyerapkan materi matakuliah. d. Akan diadakan Ujian Akhir Semester (UAS) sebagai tolak ukur terhadap kemampuan mahasiswa dalam menyerapkan materi matakuliah. e. Kehadiran mahasiswa dalam proses pembelajaran dinilai sebagai kontribusi dalam pelaksanaan proses belajar mengajar.
1.6. Materi Perkuliahan
Pada pertemuan pertama kuliah akan dibahas mengenai perkuliahan yang akan dilaksanakan dan materi kuliah pada pertemuan pertama. Biasanya materi tersebut dikemas dalam pokok bahasan dan juga sub pokok bahasan. Berikut pokok bahasan yang disampaikan pada pertemuan pertama yaitu : teori bahasa dan otomata, dengan sub pokok bahasan adalah : a. Aturan perkuliahan, penilaian, dan referensi. b. Teori dan konsep bahasa. c. Hubungan antar materi kuliah. d. Tata bahasa. e. Bahasa dan tata bahasa dalam kompiler untuk penyelesaian program. Berikut penjelasan dari masing-masing sub pokok bahasan akan disampaikan pada perkuliahan pertama ini.
A. Aturan Perkuliahan, Penilaian, dan Referensi.
Peraturan kuliah merupakan peraturan yang mengikat kepada mahasiswa yang mengikuti / mengambil matakuliah teori bahasa dan otomata. Sehingga mahasiswa harus mentaati peraturan tersebut selama proses belajar mengajar berlangsung, tentunya dengan peraturan ini diharapkan proses belajar mengajar berjalan dengan baik. Adapun aturan perkuliahannya sebagai berikut : 1. Peraturan kuliah yang dilakukan di ruang kelas, peraturan yang digunakan untuk perkuliahan yang dilakukan di ruang kelas sebenarnya sudah ditetapkan oleh pihak akademik Universitas Widyatama dan mahasiswa lihat di buku panduan akademik. Adapun peraturan yang spesifik untuk matakuliah teori bahasa dan otomata, yaitu : a. Pertemuan kuliah dilakukan selama 14 kali pertemuan, sesuai dengan jadwal yang ditetapkan oleh akademik. b. Jika pengampu matakuliah berhalangan hadir maka wajib diganti dengan hari dan waktu yang disepakati oleh mahasiswa. c. Toleransi keterlambatan hadir dalam ruang kelas yaitu selama 20 menit, jika selama 20 menit belum hadir maka tidak diijinkan untuk masuk ke ruang kelas atau tidak diijinkan untuk mengikuti perkuliahan selama pertemuan tersebut berlangsung di pertemuan saat itu. d. Kehadiran mahasiswa dalam proses belajar mengajar yaitu lebih besar sama dengan 80 % dari 14 kali pertemuan (kuliah di ruang kelas dan kuliah online). e. Mahasiswa wajib menjaga ketertiban dan ketenangan ruang kelas selama proses belajar mengajar berlangsung. f. Diharapkan mahasiwa memiliki buku atau bahan ajar yang dijadikan rujukan dalam matakuliah teori bahasa dan otomata. g. Diharapkan mahasiswa aktif dalam diskusi materi kuliah. 2. Peraturan kuliah yang dilakukan secara online, peraturan kuliah secara online yaitu : a. Mahasiswa wajib mengikuti perkuliahan dan ikut aktif dalam proses pembelajaran secara online. b. Dilarang melakukan perjokian pada kelas online, sehingga perkuliahan online harus dilaksanakan oleh mahasiswa yang bersangkutan. c. Tugas dan quiz wajib dikerjakan oleh mahasiswa yang bersangkutan secara mandiri kecuali tugas dan quiz yang dikerjakan secara berkelompok. Sedangkan penilaian yang diterapkan berdasarkan kriteria penilaian yang telah dibicarakan sebelumnya. Pada penilaian ini ditetapkan grade nilai serta persentase penilaian dari masing-masing kriteria penilaian. Berikut persentase penilaian dari kriteria penilaian dengan jumlah total 100 %, yaitu : a. Quiz : 15 % b. Tugas : 15 % c. UTS : 30 % d. UAS : 30 % e. Kehadiran : 10 % Grade penilaian dari perolehan nilai yang didapat oleh mahasiswa berdasarkan persentase tersebut yaitu nilai angka mutu. Jadi konversi dari angka mutu ke huruf mutu berdasarkan tabel berikut : Tabel 1.1 : Nilai Mutu Nilai Huruf Mutu Nilai Angka Mutu A ≥ 80 B 70 – 79 C 60 – 69 D 50 – 59 E < 49 Pada mata kuliah teori bahasa dan otomata ada buku yang dijadikan acuan atau referensi. Sekiranya mahasiswa dapat memiliki buku referensi agar bisa mempelajari lebih mendalam, sehingga suasana perkuliahan menjadi lebih kondusif, berikut buku referensi : 1. Hopcroft; Motwani; Ullman, “Introduction to automata theory, Languages and Computation”, Pearson Education, 2001. 2. Swinglly Purba, “Otomata dan Bahasa Formal”, Graha Ilmu,Yogyakarta, 2008. 3. Firrar Utdirartatmo, “Teori Bahasa dan Otomata”, Graha Ilmu, Yogyakarta, 2005. 4. Roni Djuliawan, M.T., “Diktat Kuliah Teori Bahasa & Otomata”, Teknik Informatika – Universitas Widyatama, 2003. 5. Zvi Kohavi, Switching and Finite Automata Theory, McGraw-Hill, 2005. 6. Rinaldi Munir, “Materi Kuliah Matematika Diskrit”, Informatika-ITB, Bandung, 2003. 7. Rinaldi Munir, “Matematika Diskrit”,Informatika, Bandung, 2001.
B. Bahasa Alami dan Bahasa Formal.
Menurut kamus webster, bahasa adalah “the body of words and method of combining words used and understood by a considerable community”. Sedangkan menurut Kamus Besar Bahasa Indonesia (KBBI), bahasa adalah : 1) Sistem lambang bunyi berartikulasi (yang dihasilkan oleh alat-alat ucap) yang bersifat sewenang-wenang dan konvensional yang dipakai sebagai alat komunikasi untuk melahirkan perasaan dan pikiran, 2) Perkataan-perkataan yang dipakai suatu bangsa. Menurut kedua definisi diatas, ungkapan dari suatu bahasa adalah kalimat atau perkataan. Kalimat dalam sebuah bahasa dibentuk dengan menggabungkan satu atau lebih kata-kata. Dalam pembentukan kalimat, perhatian kita hanya tertuju pada sintaks atau bentuk kalimat, dan bukan pada semantik atau makna kalimatnya. Sebagai contoh, Suhardiman menendang bola kearah gawang Elang menyambar ayam Adik makan dengan lahap adalah kalimat yang sah sesuai dengan kaidah tata bahasa dari Bahasa Indonesia. Contoh kalimat berikut, Rudi menggigit anjing rumah menendang bola dengan cepat juga benar secara sintaks meskipun maknanya secara sense tidak ada. Sedangkan kalimat berikut, dengan cepat ayah matematika menutup bukan kalimat yang sah secara sintaks karena tidak mengikuti kaidah tata bahasa. Bahasa komunikasi yang digunakan oleh manusia, yaitu bahasa ucap seperti Bahasa Indonesia, Inggris, Jerman, Spanyol dan sebagainya disebut bahasa alami atau bahasa natural (naturale language). Sintaks bahasa alami sangat rumit dan kita tidak mungkin menspesifikasikan semua aturan sintaksnya. Bahasa yang kaidah sintaksnya dapat dispesifikasikan secara matematis dengan baik disebut bahasa formal. Jadi, bahasa formal dapat didefinisikan secara abstraks sebagai “sistem matematik”. Kaidah sintaks dalam teori bahasa formal tidak hanya bermanfaat untuk studi linguistik bahasa alami – seperti penterjemah secara otomatis dari suatu bahasa ke bahasa lain, tetapi juga berguna untuk studi bahasa pemrograman. Dalam pemrograman sering kita jumpai dengan pesan “sintaks error”, ini menunjukkan bahwa penulisan program yang tidak mengikuti aturan atau kaidah dari bahasa pemrograman yang kita gunakan. Demikian salah satu contoh fungsi atau manfaat dalam mempelajari teori bahasa dan otomata.
C. Hubungan Antar Materi Kuliah.
Materi perkuliahan teori bahasa dan otomata berkaitan dengan bahasa dan tata bahasa, kalau kita pahami tentang bahasa yaitu bagaimana seseorang dapat menginterpretasikan sesuatu yang ada dapat diterima oleh akal pikiran sehingga membentuk suatu pola berpikir yang terstruktur atau tersusun dengan baik. Walaupun ada juga pola berpikir yang tidak tersusun dengan baik, akan tetapi bagaimana pun pola berpikir harus bisa dimengerti oleh orang lain (bisa juga oleh mesin). Sehingga perlu adanya suatu pola berpikir yang tersusun dengan baik agar bisa dipahami oleh orang lain (atau pun mesin). Pola berpikir secara tersusun dengan baik tentunya perlu suatu kajian lain yaitu penyampaian bahasa dan tata bahasa. Bahasa dan tata bahasa merupakan ilmu yang memanfaatkan akal pikiran seseorang dengan tatanan atau susunan tertentu yang tersampaikan dengan baik. Sehingga perlu bidang kajian bagaimana menyusun suatu tatanan agar tersampaikan dengan baik, salah satu bidang kajian untuk tatanan agar tersampaikan dengan baik yaitu teori bahasa dan otomata. Teori bahasa dan otomata memiliki materi tertentu untuk menyusunan suatu tatanan bahasa dengan baik. Adapun materi yang akan dipelajari pada mata kuliah teori bahasa dan otomata, yaitu : a. Bahasa dan Tata Bahasa. b. Hirarki Chomsky. c. Mesin Pengenal Regular Grammar. d. FSA (Finite State Automata). e. Ekspresi Reguler. f. Context Free Grammar. g. Push Down Automata. Materi kuliah yang disebutkan diatas merupakan materi tentang teori bahasa dan otomata yang diproses secara baik sehingga ada keterkaitan antara satu dengan yang lainnya. Tidak hanya keterkaitan antar materi saja, akan tetapi ada juga yang terkaitan dengan mata kuliah lainnya, yaitu : a. Struktur Data dan Algoritma Lanjut, b. Matematika Diskrit, c. Semua mata kuliah Pemrograman. 1.7. Ringkasan Tatanan bahasa atau tata bahasa digunakan untuk membangkitkan kalimat dari suatu bahasa dan untuk memeriksa apakah suatu kalimat termasuk didalam bahasa tersebut. Seperti halnya tata bahasa, finite state machine (FSM) digunakan untuk mengenali kalimat dari suatu bahasa dan untuk menghasilkan keluaran sesuai dengan spesifikasi yang didefinisikan. Konsep tata bahasa dan FSM keduanya saling berkaitan, dan antara keduanya dapat saling ditransformasikan satu sama lain. Mesin Turing adalah pengenal bahasa yang lebih kompleks, yang dalam pengenalannya mesin ini dilengkapi dengan memori. Mesin Turing dapat mengenali kalimat yang tidak dapat dikenali oleh FSM sekalipun. Mesin Turing adalah model komputasi yang paling umum. Ia dapat melakukan pekerjaan apa saja yang dapat dilaksanakan oleh komputer.
1.8. Referensi Bacaan
Pertemuan kuliah yang kedua akan dilakukan secara online, dengan menggunakan teknologi internet beserta software aplikasi yang mendukung ke arah pembelajaran secara online. Pada petermuan kedua sekiranya perlu referensi untuk bacaan bagi mahasiswa agar tercipta suatu kondisi pembelajaran yang baik, walaupun pembelajaran tersebut melalui online (e-learning). Adapun referensi bacaan untuk mahasiswa yaitu : a. Roni Djuliawan, M.T., “Diktat Kuliah Teori Bahasa & Otomata”, Teknik Informatika – Universitas Widyatama, 2003. b. Rinaldi Munir, “Materi Kuliah Matematika Diskrit”, Informatika-ITB, Bandung, 2003. c. Rinaldi Munir, “Matematika Diskrit”,Informatika, Bandung, 2001. d. Hopcroft; Motwani; Ullman, “Introduction to automata theory, Languages and Computation”, Pearson Education, 2001.
1.9. Quiz / Tugas
Pada pertemuan pertama perkuliahan yang kita lakukan, sekiranya perlu diadakan quiz untuk mengetahui tingkat pemahaman mahasiswa terhadap materi perkuliahan yang telah disampai. Adapun soal quiz sebagai bahan renungan dalam memahami materi kuliah, berikut soal quiz : a. Apa yang dimaksud dengan bahasa dan tata bahasa ? b. Bagaimanakah bahasa dan tata bahasa diterapkan dalam teknologi komputer ? c. Bagaimanakah komputer mampu mengenal bahasa yang digunakan untuk kompiler ? d. Apa yang dimaksud dengan pemrograman ? e. Bagaimanakah pemrograman yang kita lakukan dapat diinterpretasikan dalam algoritma pemrograman ?