I have not failed, I have just found 10,000 ways that won’t work … (Thomas Alva Edison) Hidup saya pernah ribet gara2 salah pilih topik penelitian. Saya nggak persiapkan dulu semua sebelum penelitian saya mulai, ketersediaan dataset, cara pengukuran penelitian, dan juga target publikasi. Selesai dan bisa publikasi? Ya, tetap berhasil melakukan penelitian dan publikasi, tapi kalau dilihat lagi, banyak waktu dan energi saya terbuang untuk hal yang nggak penting. Sebenarnya kalau cara saya efektif dan efisien, dalam waktu yang sama, lebih banyak kontribusi ke pengetahuan dan publikasi ilmiah yang bisa saya lakukan. Saya juga kurang bisa menjalin komunikasi secara cerdas dan efektif dengan supervisor saya. Secara umum, saya banyak belajar dari jalan perdjoeangan saya ini, dan ini jadi pembelajaran terbaik untuk saya di kemudian hari. Di program Ph.D saya yang kedua, saya lebih efisien dan efektif bergerak. Cara saya sistematis mulai dari memilih topik, melakukan literature review, merangkumkan state-of-the-art methods, memilih masalah penelitian, menyusun research question, dan saya tahu sebelum melakukan penelitian, bagaimana cara saya mengukur hasil eksperimen saya. Saya perbaiki gaya dan cara saya berkomunikasi dengan supervisor, saya lebih intensif dan komprehensif ketika melakukan progress report atau menguraikan alur penelitian yang saya lakukan. Dan akhirnya, saya bisa selesaikan program Ph.D dalam 4 semester, dengan total 8 publikasi ilmiah (5 journal dan 3 conference). Ini bahasan materi saya kali ini. Membahas bagaimana mempersiapkan semua supaya studi S3 atau juga bisa untuk studi S2 supaya lancar dan tepat waktu, dengan kualitas penelitian tetap tinggi. Secara umum materi saya siapkan khusus untuk bidang computing, meskipun karena penelitian sifatnya generik, pengalaman ini bisa digunakan juga untuk bidang lain. Download slide:...
Analisis dan Desain Sistem dengan Unified Modeling Language (UML)...
Nak, reusing designs through patterns yields faster and better maintenance (gamma et al, 1995). Albert endres (2003), menobatkan ungkapan 4 jagoan, the gang of four, gamma, helm, johnson dan vlissides, sebagai salah satu hipotesis terpenting yg berpengaruh besar ke industri software dunia beberapa dekade setelah buku itu terbit … Saya membeli buku design pattern di atas pada tahun 1995 di jepang, ketika masih semester 1 undergraduate program. Buku yg covernya berwarna putih biru, yg bikin pusing bacanya, lebih pusing lagi baca komentar erich gamma di introduction, “Don’t worry if you don’t understand this book completely on the first reading. We didn’t understand it all on the first writing!” … Buku ini terbit berbarengan dengan mulai berakhirnya perang metodologi object-oriented analysis and design, yg melibatkan maestro2 penting dunia semacam coud yourdon, grady booch, ivar jacobson dan james rumbaugh. Rekonsiliasi mereka membawa kita ke dunia pemodelan software bernama unified modeling language (UML), yg kemudian distandarkan oleh OMG di tahun 1997, dan digunakan di industri hingga saat ini. Beberapa konsep design pattern masuk ke UML dibawa oleh Quatrani di tahun 2001, melahirkan gaya baru notasi sequence diagram, yg menggunakan pola boundary-control-entity (BCE), atau orang sekarang lebih senang menggunakan term model-view-controller (MVC). Tidak banyak buku dan tutorial yg menjelaskan UML dari hulu ke hilir beserta contoh riilnya, saya mencoba mengurai benang kusut ini dengan suatu penjelasan yg sebenarnya berbentuk evolusi pemikiran. Saya pakai metode yg sama utk ngajar pertama di tahun 1997-1998 di jepang, baik di kampus atau perusahaan2 di jepang. Saya perbaiki dari tahun ke tahun, saya formulasi utk jadi standard, nomenklatur bahkan peraturan resmi baik di instansi pemerintah dan di swasta dan bumn. Saya ajarkan lebih komprehensif di kelas2 saya tentang Systems Analysis and Design dan Software Engineering. Download Slide:...
Knowledge Management: Konsep, Proses, Sistem atau Apa?
Ketika pegawai meninggalkan perusahaan, pengetahuan merekapun ikut pergi. Perusahaan tidak mengelola pengetahuannya dengan baik, sehingga transfer pengetahuan tidak terjadi. Organisasi perlu mengelola pengetahuan anggotanya untuk: Mengetahui kekuatan (dan penempatan) seluruh SDMPenggunaan kembali pengetahuan yang sudah ada tidak perlu mengulang proses kegagalanMempercepat proses penciptaan pengetahuan baru dari pengetahuan yang adaMenjaga pergerakan organisasi tetap stabil meskipun terjadi arus keluar-masuk atau rotasi SDM Apakah hal di atas ini yang disebut dengan manajemen pengetahuan (knowledge management)? Apakah knowledge management itu suatu konsep, arsitektur, proses atau nama suatu sistem aplikasi? Materi ini akan membahas tuntas tentang knowledge management dari berbagai perspektif, termasuk didalamnya contoh riil penerapan di organisasi seperti apa. Materi bisa didownload melalui:...
Software Engineering Research Trends
Membangun software bukanlah tujuan utama penelitian, hanya testbed untuk mempermudah kita dalam mengukur hasil penelitian. Tidak ada listing code, UML atau screenshot software di paper-paper journal terindeks (SCOPUS/WoS), kecuali penelitian tentang perbaikan paradigma pemrograman, analisis design, dsb. Ketika pada penelitian kita mengusulkan perbaikan suatu algoritma (proposed method). Contoh penelitian bidang image processing, topik penelitian face recognition, memikirkan perbaikan metode atau algoritma untuk pengenalan wajah dengan lebih akurat atau efisien. Penelitian bidang data mining, topik tentang decision tree, memikirkan perbaikan algoritma decision tree sehingga bisa memprediksi (klasifikasi) dengan lebih akurat. Nah untuk mempermudah eksperimen dan evaluasi, kita menulis kode program (software) untuk menguji dan mengevaluasi performance dari algoritma yang kita usulkan Bahkan penelitian bidang software engineering, bukan penelitian tentang pengembangan software yang hasil akhirnya produk software, tapi penelitian untuk perbaikan berbagai aspek metodologi pengembangan software, termasuk didalamnya bagaimana metode requirement gathering yang lebih efisien, perbaikan proses pengembangan software, perbaikan metode dan teknik tentang pengujian software, bagaimana software architecture yang lebih sistematis, dsb. Lha terus bidang software engineering itu sebenarnya bidang apa? Trend penelitiannya juga ke arah mana? Mana topik penelitian bidang software engineering yang sebaiknya saya angkat untuk penelitian saya? Materi dalam bentuk slide, dan bisa didownload dengan mengklik gambar...
10 Mitos Software Engineering
10 mitos dalam dunia software engineering, yang selama ini disangka bahwa ini benar, tapi ternyata merupakan kekeliruan. Tingkat kegagalan project software di dunia ini mencapai lebih dari 40%. Di Amerika, Standish Group mencatat kegagalan mencapai 42%, sedangkan General Accounting Office menemukan fakta bahwa kegagalan pengembangan software mencapai 53% (Dennis, 2012). Semakin besar ukuran dari software, semakin besar kemungkinan kegagalan dalam pengembangan dan penerapan. Ketika kita mencoba mengkritisi lingkungan di sekitar kita, kita akan menemukan fakta yang unik bahwa banyak penerapan software yang seperti dipaksakan ada. Software tersebut tidak membawa manfaat dan keuntungan apapun untuk kita, bahkan menyebabkan peningkatan biaya dan waktu. 10 mitos yang menyebabkan kegagalan pengembangan software akan dibahas pada materi ini. Materi tersaji dalam bentuk slide, dan merupakan versi update dari artikel 6 mitos kesalahan pengembangan software yang telah diupload sebelumnya. Download: romi-se-mitos.pdf Tersedia video penjelasan materi 10 mitos software engineering di Youtube di...
Big Data Trends 2018
Manusia, suka tidak suka, sadar tidak sadar, memproduksi data setiap hari, dan kuantitasnya kian hari kian membesar. Diskusi masalah data sebesar 128 GB di tahun 1990 sudah termasuk kemewahan, tapi di tahun 2018 ini, cukup tertampung di USB flash memory yang ukurannya hanya seujung kuku. Sejak Tim Berners Lee memformulasikan World Wide Web di tahun 1989, sejak itulah dimulainya era Data Science. Menjadi semakin kelihatan kasat mata ketika era Web 2.0 datang, dimana setiap pengguna Web mendapatkan kesempatan mengisi dan berkontribusi di konten Web, tidak hanya membaca dan mendengarkan apa yang disajikan saja. Ketika sosial media menjamur, tak pelak lagi, ramalan Jim Gray dan Alex Szalay tentang Evolution of Sciences di Communication of ACM di tahun 2002, terbukti benar terjadi. Evolusi sains bergerak dari empirical, theoretical, computational dan sejak 1990 lahirlah data science. Fokus materi Big Data Trends ini membahas lima dimensi big data: culture, mining, methods, use cases, dan research. Pembahasan dimulai dari adanya perubahan kultur dan gaya hidup manusia. Bagaimana kultur baru menyebabkan banjirnya data, dimana harus diatasi dengan mengolah data menjadi pengetahuan supaya bermanfaat bagi manusia. Kemudian berikutnya akan dibahas tentang metode dan teknologi untuk mengola data menjadi pengetahuan, beserta contoh penerapan big data dalam berbagai bidang. Dan terakhir perkembangan penelitian di bidang big data, dan sedikit perbedaan sudut pandang antara industri dan peneliti ketika memandang masalah big data ini. Materi tentang Big Data Trends ini, saya gunakan sebagai pengantar ketika saya diminta membawakan tema tentang data mining, big data dan tema seputar data science. Materi tersaji dalam bentuk slide presentasi, yang alurnya saya sesuaikan dengan gaya saya mengajar. Mudah-mudahan bisa diikuti dan dipahami dengan baik 🙂 Download Slide: Big Data Trend...
10 Mitos Penelitian Computing
Saya mengupdate materi tentang mitos penelitian dan publikasi yang sebelumnya sudah saya tulis di sini, supaya bisa dipahami lebih komprehensif. Singkat kata, dari berkeliling mengamati praktek penelitian computing atau komputer atau informatika di Indonesia, saya menemukan beberapa pola penelitian, yang sebenarnya hanyalah mitos yang secara konsep penelitian relatif kurang tepat. 10 mitos penelitian computing inilah yang selama ini kita percayai kebenarannya, dan bahkan menjadi gaya turun temurun penelitian kita di bidang computing. Praktek ini menyebabkan kualitas penelitian kita menjadi rendah, dan akhirnya menyebabkan kegagalan atau rejection ketika mencoba melakukan publikasi di jurnal terindeks. Materi tentang rangkuman 10 Mitos Penelitian Computing ini, saya gunakan sebagai pengantar ketika saya diminta menjadi keynote speaker di beberapa conference. Selain itu juga saya gunakan pada saat berkesempatan mengisi workshop atau doctoral bootcamp di beberapa tempat. Materi tersaji dalam bentuk slide presentasi, yang alurnya saya sesuaikan dengan gaya saya mengajar. Mudah-mudahan bisa diikuti dan dipahami dengan baik 🙂 Download Slide: romi-rm-mitos-apr2020.pdf (updated 23 April...
Research in Progress 2016: Software Defect Prediction
Bidang penelitian software engineering adalah bidang yang saya geluti sejak memulai kehidupan menjadi akademisi di Saitama University, Jepang di tahun 1994-2004. Di Jepang saya banyak bergerak di fase software engineering di bagian depan, yaitu topik penelitian tentang requirement engineering. Ini terlihat dari publikasi saya selama di Jepang kebanyakan ada di topik requirement engineering. Tidak hanya murni pendekatan software engineering, tapi saya juga menggunakan banyak metode machine learning untuk menghasilkan pola dan model, baik untuk requirement elicitation, requirement pattern, object-oriented analysis, automated software design, dsb. Ini memungkinkan saya lakukan karena lab penelitian saya dulu memang mengangkat topik penelitian lebih ke arah knowledge-based software engineering. Mulai tahun 2012, saya mencoba peruntungan baru, berpindah ke bagian belakang dari fase software engineering, yaitu topik penelitian tentang software defect prediction (prediksi cacat software) dan software testing. Pada topik ini metode machine learning dan soft computing lebih kental saya gunakan. Contribution to knowledge yang saya kejar tidak hanya mengarah ke model dan pola yang terbentuk dari proses pemodelan (software engineering), tapi juga ke arah perbaikan algoritma untuk machine learningnya sendiri. Tidak terasa sudah 4 tahun saya menggeluti topik software defect prediction ini, dan sudah waktunya saya memberikan laporan research in progress untuk topik software defect prediction yang selama ini saya lakukan. Tidak hanya saya lakukan sendiri, sebagian mahasiswa bimbingan juga saya minta meneruskan perdjoeangan saya di topik ini. Metode saya untuk pembimbingan penelitian mahasiswa tidak hanya melalui pertemuan darat (offline), tapi juga diskusi online yang kita lakukan rutin hampir setiap hari menggunakan Trello dan group Telegram Intelligent Systems. Pencapaian yang sudah saya hasilkan tidak hanya di publikasi paper di journal, tapi juga pembimbingan tesis mahasiswa, dan berkesempatan menjadi reviewer di berbagai journal Q1/Q2 di bidang software engineering dan puluhan journal lokal, baik yang terakreditasi dikti maupun tidak. JOURNAL REVIEWER Information & Software Technology,...
Systematic Literature Review: Pengantar, Tahapan dan Studi Kasus...
Systematic literature review atau sering disingkat SLR atau dalam bahasa indonesia disebut tinjauan pustaka sistematis adalah metode literature review yang mengidentifikasi, menilai, dan menginterpretasi seluruh temuan-temuan pada suatu topik penelitian, untuk menjawab pertanyaan penelitian (research question) yang telah ditetapkan sebelumnya (Kitchenham & Charters, 2007). Metode SLR dilakukan secara sistematis dengan mengikuti tahapan dan protokol yang memungkinkan proses literature review terhindar dari bias dan pemahaman yang bersifat subyektif dari penelitinya. SLR adalah metode literature review yang biasa dilakukan peneliti di bidang farmasi dan kedokteran, meskipun boleh dikatakan baru mulai dibawa ke dunia computing wa bil khusus software engineering pada tahun 2007 oleh Barbara Kitchenham lewat papernya berjudul Guidelines in performing Systematic Literature Reviews in Software Engineering. Pengantar dan metode-metode yang ada untuk melakukan literature review sudah dibahas pada artikel sebelumnya tentang Literature Review: Pengantar dan Metode. Pada artikel ini, akan dibahas secara khusus dan mendetail tentang systematic literature review (SLR), beserta tahapan dan studi kasusnya. Untuk bisa memahami artikel ini dengan baik, direkomendasikan untuk mendownload dua dokumen di bawah: Slide: Systematic Literature Review (SLR). Penjelasan komprehensif tentang metodologi penelitian dan systematic literature review. Contoh kasus utama mengikuti artikel ini, tapi ada contoh-contoh kasus bidang non computing. Systematic Literature Review: Pengantar, Tahapan dan Studi Kasus. Penjelasan komprehensif dari artikel ini, termasuk studi kasus tentang SLR mengikuti paper di bawah Paper: Romi Satria Wahono, A Systematic Literature Review of Software Defect Prediction: Research Trends, Datasets, Methods and Frameworks, Journal of Software Engineering, Vol. 1, No. 1, April 2015 Youtube: Secara umum tahapan melakukan SLR terdiri dari 3 bagian besar: Planning, Conducting dan Reporting. Detail tiap tahapan seperti pada gambar di bawah. 1. PLANNING Research Question (RQ) adalah bagian awal dan dasar berjalannya SLR. RQ digunakan untuk menuntun proses pencarian dan ekstraksi literatur. Analisis dan sintesis data, sebagai hasil dari SLR,...
Literature Review: Pengantar dan Metode
Literature review atau tinjauan pustaka adalah istilah yang sering dikerjakan oleh mahasiswa ketika sedang mengerjakan skripsi, tesis atau disertasi. Dosen dan peneliti juga fasih menggunakan istilah ini karena kehidupan akademisi sangat dekat dengan perilaku literature review. Literature review atau tinjauan pustaka pasti akan kita lakukan misalnya ketika kita memulai memahami suatu topik penelitian baru, mengikuti trend penelitian baru dan memahami state-of-the-art dari suatu topik penelitian. Sayangnya literature review sering dimaknai sederhana yaitu hanya membaca literatur ilmiah, padahal sebenarnya prosesnya tidak sesederhana itu. Literature review tidak hanya bermakna membaca literatur, tapi lebih ke arah evaluasi yang mendalam dan kritis tentang penelitian sebelumnya pada suatu topik. Literature Review is a critical and in depth evaluation of previous research (Shuttleworth, 2009). Literature review yang baik adalah yang melakukan evaluasi terhadap kualitas dan temuan baru dari suatu paper ilmiah. Perlu dipahami bahwa yang disebut dengan literatur ilmiah dapat berupa: Paper dari Journal Ilmiah Paper dari Conference (Proceedings) Thesis dan Disertasi Report (Laporan) dari Organisasi yang Terpercaya Buku Textbook Sebaiknya dipahami bahwa untuk menghindari tsunami literatur ketika kita memulai suatu topik penelitian, usahakan mengutamakan journal ilmiah yang terindeks oleh Web of Science (ISI) dan SCOPUS. Keduanya saat ini terpercaya sebagai organisasi pengindeks dan perangking journal dan proceedings di dunia penelitian. Web of Science atau dulu bernama ISI sebelum akhirnya diakuisisi oleh Thomson Reuters, mengindeks sekitar 12 ribu journal ilmiah di dunia ini, dan termasuk pengindeks journal yang paling terpercaya. Sedangkan SCOPUS mengindeks kurang lebih 20 ribu journal ilmiah, dan biasanya menjadi standard publikasi ilmiah dan syarat kelulusan bagi mahasiswa di luar negeri yang mengambil program S2 dan S3. Untuk mengecek apakah suatu journal dan proceedings terindeks SCOPUS, bisa menggunakan situs ScimagoJR.Com. Manfaat dari literature review yang kita lakukan diantaranya adalah sebagai berikut. Tanda dalam kurung saya berikan untuk memberi clue tentang jenis literatur jenis...