Ensiklopedia Projek Kuliah Ilkomerz
Sebelumnya saya pernah membuat artikel tentang tips menghadapi projek kuliah. Kali ini saya akan menjelaskan lebih rinci mengenai apa saja yang akan kamu hadapi pada projek-projek kuliah. Projek yang akan dijelaskan akan diurutkan berdasarkan kemunculannya dari semester 3 hingga semester 7.
Penjelasan tentang projek ini hanya berdasarkan pada pengalaman saya, beberapa bagian mungkin ada yang tidak relevan dengan projek yang kamu hadapi saat ini
Rangkaian Digital
Kamu diminta untuk membuat rangkaian digital menggunakan mikrokontroler dan komponen-komponen pendukungnya dalam suatu tim beranggotakan dua orang. Kamu akan diberikan daftar topik yang dapat dipilih. Topik-topik yang muncul beragam mulai dari membuat jam digital, kalkulator, konversi mata uang, counter dll. Untuk membuatnya, kamu harus menguasai cara memrogram mikrokontroler dengan bahasa assembly. Menurut pengalaman, mempelajari materi dari kuliah dan praktikum sudah cukup untuk dapat mengerjakan projek ini.
Basis Data
Kamu diminta untuk membuat sistem (biasanya berbentuk website) yang memanfaatkan database management system (DBMS) dalam tim. Kamu akan diberikan daftar topik yang dapat dipilih sebagai projek kuliah. Pada praktikum biasanya kamu akan diajari bagaimana cara merancang suatu database yang baik dan menggunakan DBMS PostgreSQL untuk implementasinya. kamu juga akan dikenalkan tentang membuat sistem sederhana yang dapat mengolah database dengan menggunakan PHP, sekitar pada pertengahan semester.
Hal terpenting dari projek ini adalah bagaimana caranya kamu merancang database seefisien mungkin, dengan mengacu kepada teori-teori seperti pemilihan tipe data, pemilihan storage engine, pemodelan diagram E-R, normalisasi dan denormalisasi. Semua itu akan diajarkan baik pada kuliah maupun praktikum. Pada presentasi akhirnya, kamu juga harus dapat menunjukkan dokumentasi perancangan dan dapat menjelaskan mengapa kamu membuat struktur database yang demikian.
Komputer Grafik
Kamu diminta untuk membuat aplikasi atau pemodelan 3D yang memanfaatkan teknologi OpenGL dan library Glut menggunakan bahasa C. Aplikasi yang dibuat dapat berupa games, sedangkan pemodelan 3D dapat berupa diorama atau perancangan bangunan. Pada praktikum kamu akan diajari dasar-dasar membuat grafik. Namun mungkin untuk membuat projek ini kamu harus banyak belajar dari sumber luar, apalagi jika kamu ingin membuat games. Penguasaan teori yang baik pada aljabar linear sangat membantu pada projek kuliah ini.
Rekayasa Perangkat Lunak
Kamu diminta untuk membuat sistem atau aplikasi dengan mengimplementasikan metode pengembangan perangkat lunak dan dokumentasinya. Kamu dapat memilih metode apa yang ingin kamu gunakan, namun biasanya yang direkomendasikan adalah metode waterfall. kamu juga harus menentukan siapa yang akan menjadi project manager, system analyst, designer, dan programmer pada tim kamu. Implementasi sistem dapat berupa mobile application dan website.
Meskipun kamu diminta untuk membuat sistem atau aplikasi, pada sesi praktikum kamu akan lebih disibukan dengan pembuatan dokumentasi projek. Dokumentasi projek terdiri dari tiga, yaitu Spesifikasi Kebutuhan Perangkat Lunak (SKPL), Deksripsi Perancangan Perangkat Lunak (DPPL), dan Dokumen Uji Perangkat Lunak (DUPL). Singkatnya, ketiga dokumen tersebut berisikan tentang catatan semua langkah-langkah pengerjaan projek ini, mulai dari analisis, perancangan dan pengujiannya. Setiap publikasi dokumen akan ada sesi presentasi. Selain itu akan ada sesi revisi dokumen apabila dokumen yang kamu buat masih kurang baik. Dan yang paling penting, pada mata kuliah ini kamu dianggap sudah memiliki kemampuan yang cukup untuk teknis pemograman perangkat lunaknya.
Komunikasi Data dan Jaringan Komputer
Kamu diminta untuk membuat rancangan jaringan komputer menggunakan aplikasi simulasi jaringan Packet Tracer. Topik projek yang diberikan merupakan protokol-protokol stkamur pada internet, mulai dari Border Gateway Protocol, Open Shortest Path First, FTP dan masih banyak lagi. Beberapa dari topik tersebut mengharuskan kamu untuk mencari sumber informasi tambahan dari luar.
Sistem Pakar
Kamu diminta untuk membuat sistem pakar (?). Pembuatan sistem pakar melibatkan banyak membaca referensi serta pengumpulan pengetahuan dari seorang pakar. Pada kuliah, kamu akan diajarkan bagaimana cara mengumpulkan pengetahuan dari pakar dengan berbagai macam metode. Disini kamu dituntut untuk dapat memilih metode yang paling sesuai dengan kebutuhan projek kamu. Topik yang diberikan biasanya berhubungan dengan pertanian. Selain itu, kamu harus menentukan sendiri pakar yang akan menjadi sumber referensi kamu.
Untuk teknis pembuatan sistem, kamu harus dapat mengimplementasikan teori atau algoritme machine learning (diberikan pada kuliah). Kamu juga perlu menganalisis algoritme apa yang cocok dengan pengetahuan yang telah ada peroleh dari pakar. Bentuk sistem dapat berupa website, aplikasi desktop atau aplikasi mobile. Sama halnya seperti pada projek Rekayasa Perangkat Lunak, kamu dianggap sudah memiliki kemampuan yang cukup untuk teknis pemograman algoritme yang digunakan.
Data Mining
Kamu diminta untuk melakukan pengolahan dan analisis pada kumpulan data. Topik yang diberikan merupakan metode-metode pada data mining seperti classification, clustering, dan association rule mining. Untuk melakukan data mining kamu akan diajarkan menggunakan aplikasi Weka dan bahasa R. Selain itu, kamu harus mencari sendiri data yang digunakan pada projek kamu.
Pengembangan Sistem Berorientasi Objek
Kamu diminta untuk membuat aplikasi dengan mengimplementasikan konsep OOP. Topik yang diberikan mulai dari aplikasi mobile, website, aplikasi desktop, dan games. Bahasa pemograman yang dapat digunakan pada projek dibatasi, dan yang direkomendasikan adalah bahasa Java (karena pada semua materi kuliah dan praktikum, contoh implementasi menggunakan Java). Bagi yang dapat mengimplementasikan konsep design pattern pada projeknya, maka akan mendapatkan nilai lebih. Kamu sangat perlu belajar dari sumber luar untuk projek ini karena pada praktikum kamu hanya akan diajarkan dasar-dasarnya saja.
Sistem Informasi
Kamu diminta untuk membuat sistem yang dapat menyediakan informasi sesuai dengan kebutuhan klien. Biasanya kamu mengusulkan sendiri topik projeknya. Kamu juga harus mencari sendiri klien yang sesuai dengan topik projek yang telah diusulkan. Pengerjaan projek ini sangat client oriented sehingga membutuhkan analisis yang mendalam terhadap masalah yang dihadapi oleh klien kamu. Pada sesi praktikum kamu akan dilatih untuk menganalisis terhadap studi kasus yang diberikan. Untuk pembuatan sistem, kamu tidak dituntut untuk membuat sistem yang sangat canggih. Penilaian terbesar pada projek ini adalah seberapa dalam pemahaman kamu terhadap permasalahan klien dan seberapa jauh sistem yang kamu buat dapat menyelesaikan masalah klien kamu.
Pengantar Pemrosesan Bahasa Alami
Kamu diminta untuk membuat sistem yang mengimplementasikan teori pemrosesan bahasa alami. Topik yang dapat diambil sangat banyak, mulai dari klasifikasi suara manusia, pengenalan nada musik, penerjemahan suara manusia ke teks dsb. Sama halnya seperti pada projek sistem pakar, kamu juga akan bertemu dengan algoritme-algoritme machine learning. Pada praktikum kamu akan diajarkan cara mengimplentasikan algoritme-algoritme tersebut menggunakan Matlab.
Pengantar Pengolahan Citra Digital
Kamu diminta untuk membuat sistem yang dapat mengolah citra menjadi suatu informasi yang berguna. Teori-teori yang digunakan adalah lanjutan dari mata kuliah komputer grafik dan kecerdasan buatan. Kamu mengusulkan sendiri topik projeknya. Topik yang dapat diusulkan minimal melibatkan pengenalan citra. Topik yang dapat diambil sangat beragam mulai dari face recognition, klasifikasi citra, object detection, pengenalan teks pada citra hingga augmented reality. Pada sesi praktikum kamu hanya akan diajarkan dasar-dasar pengolahan citra menggunakan OpenCV C++ sehingga kamu perlu mencari informasi tambahan dari luar untuk dapat mengerjakan projek kamu.
Temu Kembali Informasi
Kamu diminta untuk membuat sistem yang dapat memperoleh informasi pada kumpulan dokumen teks. Kamu mengusulkan sendiri topik projek yang kamu inginkan. Topik yang dapat diambil mulai dari klasifikasi dokumen, klusterisasi dokumen, search engine, summarization dan masih banyak lagi. Mata kuliah ini tidak ada sesi praktikum sehingga untuk teknis implementasi sistem, kamu harus banyak mempelajari dari sumber luar.
Pemrosesan Paralel
Kamu diminta untuk membuat dan menganalisis program yang dijalankan secara paralel. Analisis disini adalah membandingkan program yang dijalankan secara sekuensial dengan secara paralel. Program dibuat menggunakan OpenMP atau MPI (diajarkan pada sesi praktikum). Selain itu untuk membuat program paralel, kamu juga perlu memahami konsep partitioning, communicate, agglomerative, dan mapping.
Penutup
Hampir dari semua projek yang ada menuntut kita untuk belajar dari sumber luar dalam hal teknis implementasinya. Kamu dapat mencarinya di internet atau bertanya kepada senior-senior kamu yang sudah pernah mengerjakan projek tersebut. Apabila ada yang ingin menambah atau mengoreksi artikel ini, kamu dapat memberikan saran kamu pada kolom komentar.