digilib@itb.ac.id +62 812 2508 8800

Abstract syntax tree (AST) dan Control flow graph (CFG) adalah representasi sebuah kode program yang dapat digunakan untuk berbagai macam hal. Salah satunya adalah pembangunan sistem penilaian otomatis pembelajaran pemrograman. Notasi Algoritmik adalah sebuah notasi yang digunakan di Prodi Teknik Informatika ITB untuk kepentingan pembelajaran pemrograman termasuk terkait dengan evaluasi pembelajaran pemrograman. Hingga tugas akhir ini dibuat, belum ada penelitian yang membahas cara bagaimana untuk membangkitkan AST dan CFG dari Notasi Algoritmik, padahal hal tersebut dapat membawa manfaat seperti digunakan dalam pembangunan sistem penilaian otomatis untuk mengurangi masalah-masalah penilaian evaluasi pembelajaran pemrograman yang masih dilakukan manual. Atas dasar hal tersebut, pada tugas akhir ini dilakukan penelitian untuk membangkitkan AST dan CFG dari Notasi Algoritmik. AST dapat dibangkitkan dari sebuah teks Notasi Algoritmik dengan proses lexical analysis dan syntax analysis. Pada tahap lexical analysis, didefinisikan kumpulan token yang digunakan pada Notasi Algoritmik dan pada proses syntax analysis, didefinisikan grammar dari Notasi Algoritmik. Setelah AST berhasil dibangkitkan, proses pembangkitan CFG dilakukan dengan teknik rekursif yang melakukan proses traversal pada simpul-simpul AST. Dari 13 kasus uji yang digunakan pada tugas akhir, hasil menunjukkan bahwa AST dapat dibangkitkan dengan benar setelah melalui proses lexical analysis dan syntax analysis. Sementara itu, CFG dapat dibangkitkan dengan hanya menggunakan AST serta teknik rekursif yang melakukan proses traversal pada simpul-simpulnya. Dengan adanya kakas yang dapat digunakan untuk membangkitkan AST dan CFG dari Notasi Algoritmik, maka pembangunan sistem penilaian otomatis yang menggunakan Notasi Algoritmik dapat dilakukan di masa depan.