Metaheuristic Optimization

Optimalisasi (optimization) merupakan usaha menemukan hasil maksimal (maximization) atau minimal (minimization), tergantung dari kasus yang ingin dioptimalkan. Besar atau kecilnya hasil optimalisasi berdasarkan hitungan sebuah fungsi yang dikenal dengan nama fungsi objective (terkadang untuk bidang RS-GIS lebih disukai fungsi kriteria – criteria function). Secara algoritmik fungsi objektif dikenal dengan istilah fitness function. Selain itu ada batasan-batasan (constraint) tertentu dalam mencapai harga optimal dari objective tersebut.

Deterministik atau Stochastic

Untuk mencapai nilai minimal/maximal fungsi objective beragam metode sudah dikembangkan. Secara garis besar metode-metode yang ada dibagi menjadi deterministic dan stochastic. Deterministic merupakan metode lama dengan bantuan gradient, khusus untuk fungsi-fungsi kontinyu. Di sekolah dulu kita pernah menghitung nilai minimal sebuah fungsi dengan menurunkan dan menyamakannya dengan nol (dikenal dengan metode Newton). Metode stochastic muncul ketika yang akan dioptimalisasi bukan fungsi kontinyu, tidak konvergen, tidak bisa diturunkan dan aspek-aspek analitis lainnya. Beberapa literatur-literatur terkini menyebut metode stochastic dengan sebutan baru yang dikenal dengan nama metaheuristic. Pertama kali istilah ini diperkenalkan oleh Fred Glover di tahun 1986. Dalam proses pencarian, ada dua aspek yang ingin dikejar, diversifikasi (focus ke global optimal secepatnya, dikenal dengan istilah exploration), dan aspek lokalitas untuk mencari yang benar-benar optimal di suatu wilayah tertentu (dikenal dengan sebutan exploitation). Dua aspek tersebut (exploration dan exploitation) harus dikompromikan untuk menghasilkan metode heuristik yang tepat.

Metaheuristic

Metaheuristic merupakan gabungan kata Meta dan Heuristic. Heuristic artinya mencari jawaban dengan cara trial & error sementara meta berarti melampaui atau tingkat yang lebih dari. Jadi metaheuristic tidak hanya mencari jawaban dengan coba-coba saja melainkan dengan bantuan atau arahan dari faktor-faktor lain. Faktor-faktor itulah yang membuat banyaknya variasi dari metaheuristic ini. Algoritma-algoritma metaheuristic yang banyak dikenal dan diterapkan antara lain:

1. Simulated Annealing

Metode ini meniru proses pendinginan baja yang dicor. Fungsi yang digunakan adalah fungsi eksponensial:

dengan kB konstanta Boltzmann dan T adalah suhu (kelvin). E merupakan energi yang perubahannya setara dengan perubahan fungsi objektif:

Dengan gamma konstanta yang biasanya berharga 1 untuk penyederhanaan.

2. Genetic Algorithm

Algoritma genetika diperkenalkan oleh John Holland di tahun 60-an. Metode ini meniru sifat alami evolusi dimana yang adaptif adalah yang optimal. Setelah fungsi objektif ditentukan, maka serentetan algoritma bekerja mencari nilai optimal fungsi tersebut. Keunikan metode ini adalah mengkombinasikan antar nilai sementara yang diperoleh dengan kawin silang (crossover) dan mutasi. Awalnya nilai-nilai tersebut harus di-encode menjadi biner agar beberapa bitnya bisa disalingtukarkan dengan nilai lainnya dan juga untuk mutasi. Namun saat ini banyak dikembangkan metode tanpa mengkonversi bilangan tersebut menjadi biner. Pemilihannya pun (selection) berdasarkan bentuk peluang (roulette wheel) dimana nilai yang memiliki harga fitness besar akan memiliki peluang yang besar pula.

3. Differential Evolution

Differential Evolution (DE) merupakan metode pengembangan dari algoritma genetika yang diperkenalkan oleh R. Storn dan K. Price di tahun 96-97. Jika pada algoritma genetika kromosom dalam bentuk biner, DE menggunakan vektor sebagai kromosom.

Mutasi, crossover, dan selection sedikit lebih rumit dari algoritma genetika. Secara detail silahkan buka makalah aslinya.

4. Ant Colony Optimization

Metode ini meniru prinsip semut dalam usaha mencari makanan. Semut menggunakan senyawa kimia bernama pheromone ketika berjalan. Jalur yang banyak dilalui semut akan memiliki konsentrasi pheromone yang lebih banyak. Penurunan fungsi konsentarasi pheronome adalah berikut ini.

Jika ada jalur yang memiliki konsentrasi pheromone melebihi jalur yang lain maka jalur ini dikatakan favorit dan umpan balik positif berlaku di sini dan lama kelamaan berlaku kondisi “self-organized”.

5. Bee Algorithms

Sesuai dengan namanya, algoritma ini mengikuti pergerakan lebah dalam mencari sumber materi pembuatan madu. Mirip dengan semut, tawon juga mengeluarkan pheromone yang disertai dengan tarian “waggle dance”. Bee algorithm dikembangkan oleh Moritz and Southwick 1992, Craig A Tovey, Xin-She Yang, dan lain-lain.

Turunan algoritma ini cukup banyak, antara lain: honeybee algorithm, artificial bee colony, bee algorithm, virtual bee algorithm, dan honyebee mating algorithm. Banyak dikembangkan untuk optimasi posisi tertentu dalam suatu jaringan (misal server).

6. Particle Swarm Optimization

Particle Swarm Optimization (PSO) meniru pergerakan sekelompok binatang (ikan, burung, dll) dalam mencari makanan. Berbeda dengan algoritma genetika yang berganti individu (punah, baru, dan mutasi), PSO menjaga jumlah kelompok individu dan hanya perubahan posisi saja. Algoritma ini dikembangkan oleh Kennedy dan Eberhart (lihat pos yang lalu).

PSO memiliki dua nilai sebagai patokan pergerakan kerumunan: local optima dan global optima. Local optima merupakan nilai terbaik tiap individu di masa lampau (biasanya hanya sebelumnya saja) sementara global optima adalah nilai terbaik di kerumunan tersebut. Bobot antara keduanya menggambarkan karakter PSO apakah selfish atau sosialis. Selain itu langkah pergerakan menentukan karakter PSO apakah lebih tinggi daya jelajah atau lebih sempit tetapi berkualitas.

7. Tabu Search

Tabu search dikembangkan oleh Fred Glover di tahun 1970 (tapi baru dipublikasikan dalam bentuk buku di tahun 1997-an). Berbeda dengan PSO yang menggunakan data lampau satu atau dua iterasi sebelumnya, tabu search merekam seluruh data yang lampau. Manfaatnya adalah mengurangi jumlah komputasi karena data yang lama sudah ada dan tidak perlu dihitung ulang. Algoritma ini masih banyak peluang untuk dikembangkan dengan cara hybrid dengan metode lain.

8. Harmony Search

Ide dari algoritma ini adalah musik. Metode ini diperkenalkan oleh Z.W. Geem di tahun 2001. Prinsipnya adalah di tiap iterasi ada tiga jenis pencarian antara lain berdasarkan: daftar irama yang sudah terkenal dimainkan, mirim dengan yang ada dengan beberapa penekanan (pitching), dan merancang komposisi yang benar-benar baru. Pitch adjustment mengikuti pendekatan Markov Chain:

dengan b merupakan bandwidth yang mengontrol pitch adjustmant.

9. Firefly Algorithm

Metode ini dikembangkan oleh Xin-She Yang pada tahun 2008 dengan mendasari prinsip kerjanya dengan seekor kunang-kunang. Fakta unik kunang-kunang antara lain:

  • Kunang-kunang tidak memiliki jenis kelamin, interaksi dengan kunang-kunang lain tidak berdasarkan jenis kelamin.
  • Ketertarikan berdasarkan kecerahan dari cahaya. Kunang-kunang yang lebih bercahaya, lebih menarik kunang-kunang lain yang kurang bercahaya.

Kecerahan berdasarkan lanskap dari fungsi objektif-nya:

dengan beta merupakan tingkat kecerahan. Pergerakan kunang-kunang i mengikuti ketertarikan dengan kunang-kunang lain, j ditentukan dengan persamaan:

10 Advanced Method

Beberapa metode masuk kategori terkini dan sangat advanced, misalnya Cuckoo Search (CS) yang akan dibahas di lain waktu bersama-sama metode-metode terkini lainnya. Diyakini metode-metode terbaru tersebut lebih baik dari yang saat ini banyak digunakan (algoritma genetika, dan PSO). Sekian, semoga bisa membantu bagi yang tertarik dengan metode-metode optimasi metaheuristik.

Systematic Literature Review (SLR)

Studi literatur sudah lama saya dengar, tetapi baru kali ini ada istilah systematic literature review (SLR) yang banyak muncul di artikel-artikel jurnal terkini. Studi literatur sistematik ini bermaksud untuk merinci dan menyimpulkan teknologi yang saat ini digunakan dengan manfaat dan batasan yang dimilikinya. Selain itu metode ini bisa juga untuk memperoleh research gap serta wilayah penelitian baru yang menarik untuk diteliti. Framework dan background bisa pula diketahui dengan SLR untuk memposisikan riset baru.

SLR memiliki tiga langkah/tahapan yaitu Planning, Conducting dan Reporting. Sebenarnya langkah ini pernah saya jalankan, hanya saja tidak sistematis, ada yang Planning dan Conducting saja tanpa Reporting, misalnya. SLR sendiri diperkenalkan oleh Barbara Kitchenham, silahkan unduh di sini. Awalnya SLR (atau disingkat juga SLRs) merupakan pengembangan dari Evidence-Based Software Engineering (EBSE) yang masuk ranah rekayasa perangkat lunak.

Planning

Pada fase ini identifikasi terhadap apa yang dibutuhkan dalam melakukan studi literatur harus sudah fix. Berbeda dengan membaca novel yang kita sendiri tidak tahu isinya dan butuh “surprise” ketika membacanya. Membaca artikel ilmiah kita harus tahu terlebih dahulu isinya sebelum membaca, mengetahui di sini adalah gambaran umumnya saja dulu. Yang kedua pada fase ini adalah menentukan pertanyaan penelitian (research question) yang menjadi dasar dalam melakukan studi literatur.

Conducting

Fase ini adalah proses pencarian terhadap sumber-sumber literatur. Terdiri dari: identifikasi penelitian, memilih riset-riset yang utama, meng-asses kualitas suatu literatur, mengekstrak data-data dan terus memonitor, dan mensintesis data. Biasanya LSR menggunakan media “searching” yang sudah tersedia di beberapa pengindeks (Scopus, SAGE, IEEE Explore, Wiley Online, Science Direct, dan lain-lain. Biasanya penggunaan String sangat membantu (dengan logika OR dan AND), misal: ((“technology-organization-environment” OR “TOE” ) AND (“framework” OR “conceptual framework” OR “structure”)).

Reporting

Fase ini menghasilkan bahan-bahan literatur yang sudah tersistematis dengan baik. Biasanya dari ratusan artikel diolah menjadi puluhan dan akhirnya belasan yang siap dibaca dan dianalisa. Biasanya ada tiga tahapan yaitu Database Search dari pengindeks-pengindeks yang tersedia di internet (baik gratis/berbayar) yang memperoleh data sebanyak ratusan. Berikutnya Abstract, Title, and Keyword review yang mensortirnya menjadi puluhan saja. Terakhir adalah Full Review sebanyak kira-kira belasan. Tentu saja jumlah tidak harus seperti contoh di atas.

Demikian ulasan singkat metode LSR dalam studi litertur, semoga bermanfaat. Selamat membaca artikel ilmiah.

Jangan Kau Halangi Dia yang Ingin Studi Lanjut

Studi lanjut, khususnya jenjang doktoral saat ini merupakan hal yang mendesak, khususnya bidang-bidang yang dibutuhkan di era “internet of things” (IoT) ini. Berbeda dengan S2 yang kesannya “terpaksa”, untuk S3 sepertinya banyak hal yang menghalangi dosen melanjutkan ke S3. Mungkin postingan ini sharing sedikit mengenai plus-minus kebijakan yang banyak diterapkan di beberapa institusi di tanah air.

Urut Kancing

Ini adalah istilah antri berdasarkan aspek tertentu seperti senioritas, kebutuhan suatu jurusan akan adanya tenaga pengajar, dan lain-lain. Perhatikan saja suatu antrian, misalnya di “customer service” sebuah bank, ketika ada satu antrian yang lama maka antrian berikutnya akan terhambat. Banyak hal yang membuat lamanya antrian, khususnya jika dipilih yang senior terlebih dahulu. Seperti banyak terjadi, para senior cenderung mencari kampus yang dekat dengan tempat kerja. Masalah meninggalkan keluarga, keuangan (ingin tetap mengajar), dan sejenisnya merupakan hal-hal yang biasa menjadi batu hambatan. Sementara beberapa dosen middle dan terkadang juga junior sudah siap baik dari sisi akademik maupun hal-hal lain (apalagi yang belum berkeluarga). Jadi, pimpinan harus mengamati ketika suatu jurusan tidak ada yang berangkat, kemungkinan ada hambatan dari ijin senior terhadap yuniornya.

Masa Mengabdi

Ada hal lain yang membuat beberapa dosen tidak ingin melanjutkan. Beberapa kampus menerapkan aturan setelah menyelesaikan studi S2 diharuskan balik ke kampus untuk mengamalkan ilmunya terlebih dahulu. Lamanya bahkan ada yang mengikuti aturan ikatan dinas (5 hingga 7 tahun). Akibatnya ketika masa mengabdinya selesai, walaupun diminta oleh institusi melanjutkan kuliah, mereka cenderung enggan karena berbagai hal. Hal yang utama adalah terputusnya riset ketika S2 dulu karena lama-nya menunggu, ditambah lagi aktivitasnya tidak mengarah ke riset dan cenderung administratif. Padahal riset harus diikuti baik dari riset sendiri maupun membaca jurnal-jurnal internasional yang ketika lulus aksesnya biasanya distop sementara kebanyakan kampus kecil di tanah air tidak berlangganan, walaupun bisa saja dengan cara minta tolong rekan lain yang memiliki akses ke jurnal untuk diunduhkan (atau situs bajakan). Ada sedikit cerita rekan saya dari Jawa Timur yang selesai S2, balik ke kampus setahun mengabdi. Tapi selama setahun itu sudah intensif bimbingan dosen pembimbingnya ketika master untuk S3 walau belum terdaftar. Minimal konsultasi masalah tema riset S3. Nah, ketika setahun terlewati lalu mendaftar di kampus tersebut (tentu saja diterima karena sudah komunikasi dengan calon promotor) risetnya cepat sekali, bahkan lulus 2 tahun 9 bulan. Jadi untuk yang master jangan terlalu lama, khawatir akan malas lagi untuk studi lanjut.

Perang Doktor

“Lihat ijasah S2-nya!”, kata si mba staf di kopertis 4 (sekarang namanya lldikti4) ketika mengajukan ijin lanjut S3 dulu. Saya heran dan bertanya mengapa kok langsung di “skak” dengan pertanyaan itu? Ternyata ada instruksi jika S3 tidak linear harus ditolak pengajuan ijin beasiswanya. Ternyata ada maksudnya.

Kuliah S3 bukanlah waktu yang singkat. Jika selesai dan ternyata tidak sesuai dengan linearitas keilmuwan akan mubazir. Ada teman yang mengambil S3 yang berbeda jauh dengan S2 dan risetnya. Alhasil agak kesulitan naik pangkat mengingat harus ada linearitas S3 dengan riset-riset terdahulu yang jauh berbeda dengan S2-nya. Bagaimana jika sudah S3 dan linear dengan riset-risetnya? Berikutnya adalah perang doktor. Di sini perang yang dimaksud adalah persaingan dari sisi Tri Darma. Pengajaran dan pengabdian sepertinya tidak begitu bersaing, nah yang penelitian lah yang bersaing. Untuk meningkatkan kinerja kampus, pimpinan universitas (yang serius memperhatikan tri-darma) akan memacu dosen-dosennya untuk mempublikasikan artikel ilmiah. Nah, doktor tanpa publikasi tentu saja akan kalah “perang” dengan yang banyak publikasinya. Sebagai juri/wasit-nya biasanya menggunakan indeks-indeks yang terpercaya seperti Scopus dan di Indonesia ada Sinta (dengan kata lain Ristek-Dikti jurinya). Silahkan salahkan kedua pengindeks tersebut, itu hak Anda. Tapi perlu diingat, tanpa ada juri/wasit bagaimana mungkin pertandingan dilaksanakan.

Apakah Riset Seperti Sinterklas?

Lihat apa yang kita gunakan saat ini yang membantu aktivitas kita, misalnya komputer. Alat ini tidak diciptakan setahun atau beberapa tahun yang lalu. Sejak arsitekturnya yang dikenalkan oleh John Von Neumann, baru penggunaannya tampak nyata setelah Alan Turing memperkenalkan metode komputasi untuk membongkar mesin enkripsi buatan Jerman di perang dunia II. Atau contoh lain kendaraan, misalnya mobil. Alat transportasi ini menerapkan siklus otto buatan Nikolaus Otto (bensin) maupun atau Diesel oleh Rudolf Diesel (solar) yang ketika teknik itu diriset, dunia masih menyiksa binatang untuk kendaraan. Untungnya jaman itu jumlah “penyinyir” sedikit. Bisa dibayangkan si otto yang asyik riset dinyinyirin: “apa manfaatnya siklus itu bagi kami para petani?” dan diharapkan harus berkontribusi langsung, jika tidak, tidak akan didanai.

Pendidikan tinggi di Indonesia menganut tridarma yang terdiri dari pengajaran, penelitian, dan pengabdian. Ketiganya saling terkait, walaupun dalam prakteknya tidak tampak hubungannya. Yang satu asyik mengutak-atik jaringan wireless dari GPRS, 2G, 3G, 4G, hingga 5G, yang satu lagi mengembangkan teknologi mobile, serta lainnya Big Data. Ketika digabungkan jadilah aplikasi Grab, Gojek, dan sejenisnya yang ternyata merubah peta bisnis para era disrupsi ini.

Problem yang saat ini muncul terkait dengan publikasi yang wajib dilaksanakan oleh seorang dosen. Banyak kampus yang berlomba-lomba publikasinya dengan bantuan pengindeks internasional, Scopus. Kekhawatirannya agak beralasan mengingat hasil risetnya yang tidak berdampak langsung saat ini. Tetapi apakah memang harus berdampak langsung? Masih ingatkah hasil publikasi tentang dampak tsunami gunung merapi yang sudah diriset beberapa tahun sebelum kejadian di Banten dua bulan lalu? Tidak berdampak langsung sih … bagi yang enggan membaca.

Jangan lupa, penelitian berbeda dengan pengabdian. Walaupun bisa saja penelitian dan pengabdian yang berjalan seiringan. Tetapi beberapa riset dasar agak sulit jika langsung diterapkan ke masyarakat tanpa adanya campur tangan penelitian lain. Tapi bisa kan? Ya kalau dibilang bisa ya tentu saja bisa. Seperti aplikasi NELPIN untuk membantu para nelayan mencari ikan. Bagaimana dengan Scopus? Ternyata aplikasi tersebut dipublikasikan pada jurnal internasional dan terindeks Scopus. Toh bisa juga riset dan pengabdian berjalan berirama, dan tentu tidak saling memaksakan penelitian yang harus mengabdi secara langsung. Oiya, silahkan baca artikel jurnal internasional tersebut.

Apakah hanya fokus ke publikasi itu buruk? Untuk menjawabnya silahkan baca buku “University Inc.” dimana kampus cenderung mengembangkan riset berdasarkan pesanan industri. Bahkan sudah menyasar ke profesor-profesor agar riset sesuai dengan permintaan industri (obat-obatan, keteknikan, dan lain-lain). Untuk menghindari hal itu, memaksa agar hasil riset dipublikasi agar terbaca oleh khalayak ramai menurut saya sangat bermanfaat. Terkadang ada yang jago menemukan tetapi kurang luwes dan lincah memanfaatkannya, atau memang membutuhkan peneliti bidang lain yang telah membaca hasil publikasinya. Tebarkanlah hasil riset sebanyak-banyaknya, biasanya ada beberapa yang bisa dimanfaatkan oleh peneliti lain, bukannya membatasi hanya pada penelitian yang bermanfaat saat ini saja, karena belum tentu yang tidak bermanfaat saat ini tidak bermanfaat di masa yang akan datang. Sayang kan jika tidak dipublikasi dan tersimpan di gudang padahal belum tentu tidak bermanfaat nanti. Ingat, De Morgan dan George Boole yang dibilang “kurang kerjaan” di jamannya ketika utak-atik logika tatkala komputer belum ada. Yuk, perbanyak publikasi … kalau bermanfaat kan katanya pahala mengalir terus walau yang bersangkutan wafat.

Database Objek

Ketika pertama kali database diperkenalkan di tahun 70-an, bentuknya adalah relasional dan dikenal dengan istilah Relational Database Management System (RDBMS). Bentuk ini adalah bentuk terkenal yang sampai sekarang menjadi andalan aplikasi-aplikasi terkini. Basis data ini menyimpan atribut-atribut suatu data yang statis misalnya nomor ID, nama, alamat, dan lain-lain. Sementara proses yang terjadi, yang biasanya berupa Create, Read, Update dan Delete (CRUD) dilakukan oleh aplikasi (program) yang mengakses basis data tersebut (di luar basis data).

Object Oriented

Perkembangan perangkat keras yang pesat membuat aplikasi pada bidang-bidang lain seperti rekayasa, multimedia, sistem informasi geografis, dan sejenisnya, berkembang pula. Beberapa aplikasi membutuhkan secara independen suatu data berubah ketika diberikan instruksi ke data tersebut. Dengan kata lain suatu data memiliki kemampuan memproses. Data dengan proses tersebut dikenal dengan istilah objek. Ketika ingin mengedit data suatu objek, maka program tinggal mengirim pesan ke objek tersebut agar salah satu datanya dirubah dengan mengaktifkan proses update pada objek tersebut. Masalahnya adalah vendor-vendor basis data sudah terlanjur mengembangkan RDBMS dengan sangat baik.

Object Relational Database Management System

Dengan memanfaatkan canggihnya sistem RDBMS, beberapa pengembang menawarkan konsep Object Relational Database Management System (ORDBMS), khususnya untuk penerapannya dalam basis data. Karena kelemahan RDBMS tidak memiliki penyimpanan berupa proses/method maka basis data tetap tersimpan dalam bentuk relasional tetapi menambahkan satu object yang berfungsi menangani proses-proses tertentu pada objek yang tersimpan dalam RDBMS. Ketika ingin mengedit suatu objek, maka satu objek yang bertugas meng-update diperintahkan mengedit objek tersebut di dalam sistem basis data.

Object Definition Language (ODL)

Dalam literatur RDBMS, sudah ada standar pengolahan basis data yang dikenal dengan nama Structure Query Language (SQL). Sementara itu komunitas Object Data Management Group (ODMB) mencoba membuat standar yang mirip SQL dengan nama Object Definition Language (ODL). Salah satu hasil dari ODL ini adalah suatu bahasa deklarasi mirip SQL untuk objek yaitu Language Integrated Query (LINQ). Silahkan baca-baca buku referensi berikut yang lumayan OK untuk penjelasan awal ODL.

Untuk mempraktekan basis data objek ada baiknya mencoba langsung dengan basis data yang memang dikhususkan untuk basis data objek, yaitu db4o dengan dua pilihan (java dan c#). Silahkan unduh manual-nya di sini. Ada hal-hal unik yang tidak dimiliki dalam literatur RDBMS yang menarik untuk dicoba, dan menarik juga untuk dibuatkan bukunya.

Business Intelligence

Membicarakan Business Intelligence (BI), berarti membicarakan penerapan teknologi informasi untuk meningkatkan produktivitas dan daya saing sebuah organisasi. Ada salah satu makalah yang bisa diunduh gratis untuk merunut dasar-dasar istilah andalan bidang Sistem Informasi (SI) ini. Selain itu silahkan baca artikel-artikel referensi yang disitasi oleh artikel jenis review tersebut.

Singkat kata, BI memanfaatkan metode-metode baik yang lawas yang terdapat dalam Sistem Pengambil Keputusan (Decesion Support System) dengan teknologi pendukungnya seperti Data Warehouse, Machine Learning, maupun teknologi terkini yang masuk Industri 4.0 seperti Big Data, AI, dan lainya. Bagan berikut bisa dijadikan patokan framework BI:

Sebelumnya harus bisa dibedakan Online Transaction Processing (OLTP) yang bertanggung jawab terhadap data transaksi dengan Online Analytical Processing (OLAP) untuk analisis yang dipakai pada framework BI. Data Mart sangat penting untuk mendukung pengambil keputusan. Data ini memang ekstrak dari data total yang bersumber dari Data Warehouse yang menggunakan istilah Extract Transform Load (ETL) yang sumbernya bisa dari dalam dan bisa juga dari luar (internet).

Jadi BI memang luas dan melibatkan teknologi-teknologi sehingga beberapa institusi sudah menjadikan BI sebagai jurusan baru yang terpisah dari jurusan Teknik Informatika, Teknologi Informasi, maupun Sistem Informasi. Yuk, yang tertarik dengan bidang ini segera mempelajari informasi terkininya lewat jurnal-jurnal.

Dear SISTER …

Sabtu ini masuk kerja dalam rangka pelatihan pengisian BKD online dan aplikasi SISTER. Sudah lama tidak ada acara di kampus pada hari sabtu. Untuk BKD online sepertinya tidak ada masalah karena sudah hampir satu semester ini menggunakannya dan fine-fine saja. Nah yang SISTER baru kali ini bisa dicoba, dan baru kali ini juga server sudah terpasang, dan repotnya baru hari itu juga instal ulang ke versi yang baru. Tapi salut juga dengan tim IT UNISMA yang bekerja cepat dan profesional.

Memang aplikasi-aplikasi buatan Ristekdikti memiliki nama-nama yang unik dan mudah dihafal, misalnya SINTA, ARJUNA, SIMLITABMAS, SISTER, yang sering diledek: “SINTA … RAMA-nya mana? Kok malah ARJUNA?” Btw, pinter juga tim Ristekdikti utak-atik singkatan. Oiya, untungnya Kementerian Riset, Teknologi dan Pendidikan Tinggi disingkat Kementerian “Ristekdikti”, bukan “Kemriting”. Nah, ini lagi .. SIM akademik kampus kami bernama SIMAK yang mirip kata Si Emak, he he.

Registrasi SISTER

SISTER diambil dari singkatan kata Sistem Informasi Sumber Daya Terintegrasi yang isinya mengintegrasikan seluruh aspek yang ada pada seorang dosen. Dari profil homebase, pengajaran, BKD, kepangkatan, dan upload-upload data penting lainnya. Sistem kerjanya adalah tiap kampus besar harus menyediakan server dengan spesifikasi tertentu, menginstal aplikasi, serta ada admin yang mengelola. Karena sifatnya yang tidak online murni, admin bertugas mensinkronkan database di kampus dengan Dikti (pusat). Di sini dikatakan kampus besar karena jika kampus kecil maka bisa “nebeng” di LLDIKTI di wilayahnya. Langkah awal bagi seorang dosen agar bisa menjalankan aplikasi SISTER adalah membuka alamat sister kampusnya, misalnya untuk UNISMA adalah link berikut ini. Cara registrasinya mirip dengan registrasi SINTA yaitu mendaftarkan email untuk login. Jika sudah, maka diminta membuka email.

Setelah membuka email maka ada link untuk aktivasi yang jika diklik maka akan diarahkan lagi ke aktivasi SISTER. Pastikan akun sudah aktif agar bisa digunakan sebagaimana mestinya.

 

Manfaatnya lagi adalah cepatnya proses pengajuan kepangkatan (PAK) dosen karena bisa lewat jalur online yang tidak perlu berkas-berkas yang berat. Setelah aksi foto-foto dengan pemateri dari LLDIKTI, acara selesai, dan foto berikut kudapan favorit tiap diadakan pertemuan dari tim serdos. Sekian catatan harian ini, semoga bisa mengingatkan rekan-rekan dosen akan adanya aplikasi SISTER dari Ristekdikti.

Prinsip Ketidakseimbangan 80/20

Alam semesta (nature) menurut buku “the 80/20 principle” menerapkan prinsip ketidakseimbangan antara sukses dan gagal. Oiya, prinsip 80/20 adalah prinsip yang diperkenalkan oleh Vilfredo Pareto, dimana 20% faktor menentukan 80% hasil. Alam semesta tidak memberlakukan prinsip seperti peluang koin yang dilempar yang sebesar 50/50. Ada sedikit yang kontroversial dan mungkin saja sebagian besar tidak setuju. Postingan ini sedikit mengulasnya.

Spesialisasi

Di era disrupsi tampak peran dari para generalis dominan. Bahkan beberapa pengusaha top seperti pemilik Microsoft, Facebook, Mac, dan lain-lain cenderung berkarakter generalis. Tapi di buku itu ternyata diminta fokus untuk menjadi para spesialis. Mengapa hal ini terjadi? Jawabannya adalah efek 20% elemen yang menghasilkan efek 80% dari hasil (profit, kinerja, dan sejenisnya). Jadi jika prinsip 80/20 sudah disadari keberadaannya maka para manajer, direktur, atau pemilik perusahaan akan fokus ke 20% pegawai yang memiliki sumbangsih tinggi terhadap hasil dan keuntungan. Tentu saja mereka adalah para spesialis-spesialis yang sangat efisien dalam bekerja, yang pada kenyataannya jumlahnya bisa saja jauh di bawah angka 20%, bahkan bisa 5% saja. Makin tidak terpakai saja orang-orang dengan keahlian biasa-biasa saja. Prinsip 80/20 muncul karena tuntutan pasar yang menginginkan produk yang dihasilkan dari proses yang efektif dan efisien karena berpengaruh terhadap harga yang murah tapi berkualitas, atau yang memanjakan konsumen.

Globalisasi

Globalisasi menggunakan prinsip pasar. Nah disinilah letak permasalahannya yakni pasar yang menuntut tinggi suatu produk. Tanpa memeriksa faktor 20% yang paling berpengaruh terhadap kinerja industri maka tuntutan pasar tidak terpenuhi. Sementara dengan adanya globalisasi mencari faktor 20% tersebut (spesialis-spesialis yang bekerja dengan efektif dan efisien) lebih mudah. Dampak negatifnya adalah kian tersingkirnya 80% pekerja-pekerja yang kurang efisien dan minim kontribusinya terhadap hasil/kenerja.

Menipisnya Kelas Menengah

Ada kabar bahwa di negara-negara maju, kelas menengah mulai menyusut. Karena jarang yang berpindah ke kelas 20%, maka sebagian besar terdepak ke 80% pekerja yang kurang berefek/berkontribusi terhadap output. Sebagian dosen di negara kita adalah kelas menengah. Nah, repot juga kalau sebagian besar terdepak ke kelas baru yang merupakan 80% kurang berpengaruh. Ditambah lagi peran teknologi informasi dengan Massive Open Online Courses (MOOCs) yang meminimalkan peran pengajar. Saat ini aturan baru cenderung mempermudah, misalnya jumlah minimal dosen homebase suatu jurusan yang tadinya enam menjadi hanya lima saja. Juga bisa berbagi (share) dosen homebase dengan kampus lain asal ada bukti kerja sama antar dua institusi tersebut. Ada sedikit kekejaman akibat prinsip 80/20 ini dimana yang makmur/terkenal/berperan semakin makmur/terkenal/berperan dan begitu juga sebaliknya bagi yang kurang makmur/kurang terkenal/kurang berperan. Jadi jangan heran misalnya ada pakar/ahli/pembicara yang antri diundang sementara yang lain banyak yang menganggur. Yuk, segera masuk ke 20% pekerja yang menentukan hasil dengan meningkatkan skill yang dibuktikan sertifikat-sertifikat atau ijasah.

Note: Wah ternyata ini postingan saya yang ke-1000 .. semoga bisa terus iseng menulis

Normalisasi dengan Mapping Standard Deviation (mapstd)

Selain dengan membentuk matriks ortogonal yang disukai backpropagation, ada banyak metode normalisasi. Dengan teknik minmax dapat dihasilkan bentuk yang cocok untuk range sempit (lihat post sebelumnya). Apakah ini yang terbaik? Tentu saja tergantung kasusnya. Untuk proyeksi (peramalan) metode normalisasi yang terkenal adalah yang berbasis statistik yaitu dengan mapping dengan standard deviation. Pertama-tama adalah menemukan rata-rata sebaran data tersebut:

Variabel Y adalah data dengan n adalah jumlah datanya. Berikutnya adalah menentukan standar deviasi atau dalam bahasa kita simpangan baku. Varians dikenal dengan rumus berikut:

Standar deviasi merupakan akar dari varians di atas. Jadi tiap data yang akan dinormalkan dengan cara ini dihitung berdasarkan nilai rata-rata dan standar deviasi di atas.

Untuk mempermudah, Matlab telah menyediakan fungsi mapstd. Silahkan buka Matlab (2008 ke atas). Ketik “help mapstd”, ikuti saja langkah-langkah di help yang dicontohkan Matlab.

Jika ingin melihat implementasinya, dapat dilihat skripsi mahasiswa UNY berikut ini untuk kasus peramalan saham (syariah):

Samurai Tak Bertuan

Ternyata istilah Ronin, alias samurai tak bertuan, berlaku juga untuk bidang lain di luar dunia persilatan Jepang. Bidang-bidang yang mengharuskan seseorang bekerja untuk orang lain dengan mengandalkan keahlian yang dimilikinya masuk juga kategori samurai. Termasuk staf pengajar (dosen dan guru).

Samurai terkenal sangat setia dengan tuannya, tetapi terkadang bisa saja berganti tuan. Begitu juga dosen, ada istilah lolos butuh ketika ada pergantian pemakai dosen dari satu institusi ke institusi lainnya (pindah homebase). Pindah homebase sudah biasa terjadi, tetapi untuk kasus-kasus tertentu sedikit rumit seperti dosen yang beralih dari swasta (PTS) ke negeri (PTN) dan kejadian yang terjadi di institusi saya, yaitu alih kelola dari pemilik lama ke yang baru.

Setengah Ronin

Ada satu masa transisi dimana pemilik lama telah memberi uang kompensasi (pesangon) dan pemilik baru belum memiliki akses karena dari sisi legal belum terpenuhi. Munculah para ronin yang bekerja berdasarkan tugas dan misi tertentu yang harus diselesaikan, tanpa memperdulikan siapa tuannya. Karena itulah dikatakan full ronin tidak juga, karena institusi masih eksis. Dikatakan seratus persen samurai, tidak juga karena belum tentu daimyo (tuan) baru mengangkatnya menjadi samurai, disamping banyak juga yang tidak bersedia karena masa kerja yang direset menjadi nol tahun.

Samurai Tak Bertuan yang Marhaen

Marhaen adalah istilah yang diperkenalkan oleh Soekarno yang ditujukan ke golongan kecil yang memiliki sumber daya ekonomi (misal sepetak sawah) mengolah lahan tersebut sendiri tanpa bos/juragan, tapi hanya mampu untuk menghidupi diri sendiri. Kalau yang sekarang terjadi adalah para ojek online, khususnya driver yang memiliki motor/mobil sendiri dengan hasil untuk mencukupi kehidupan sendiri, walaupun sebagian hasil usaha digunakan untuk sewa aplikasi (wajar layaknya ongkos yg lain seperti: bensin/solar, pajak kendaraan, dll). Dosen selama ini membutuhkan wadah berupa institusi pendidikan untuk memanfaatkan skill-nya layaknya sopir taksi yang membutuhkan perusahaan taksi. Nah kalau kejadiannya mirip-mirip banget, tidak tertutup kemungkinan di masa depan seorang dosen menjadi samurai tak bertuan yang marhaen. Sekian tulisan iseng ini, siapa tahu ada yang senasib.

Dosen Itu Peneliti

Salah satu aspek yang membedakan seorang dosen dengan guru atau tutor adalah keharusan seorang dosen untuk melakukan penelitian. Jika tidak maka tunjangan serdos tidak turun karena tidak mungkin mempublikasikan artikel ilmiah tanpa melakukan penelitian lebih dahulu. Lho, bukannya bisa saja menulis artikel ilmiah tanpa melakukan riset? Postingan ini bermaksud menjawabnya, disertai sedikit membahas penggalan hidup peneliti di Indonesia, maaf, maksudnya di Bekasi.

Jenis Artikel Ilmiah

Untuk menjawab pertanyaan di atas ada baiknya membedakan jenis-jenis artikel ilmiah. Walaupun sulit mengklasifikasikan jenis artikel, tetapi saat ini hanya ada dua jenis artikel ilmiah yaitu yang berasal dari riset (research article) dan yang berasal dari review artikel-artikel dengan topik tertentu (review article). Lihat pembahansannya di pos yang terdahulu. Review artikel biasanya dilakukan oleh expert atau minimal reviewer. Tidak mungkin melakukan review suatu topik tetapi belum pernah melakukan riset dengan topik tersebut.

Saya sempat diminta rekan dosen untuk mempublikasikan artikelnya tetapi isinya materi kuliah. Tentu saja bukan itu yang dimaksud dengan artikel ilmiah. Mungkin itu yang membedakan seorang pengajar dengan peneliti. Artikel ilmiah di jurnal seharusnya memang hasil penelitian yang merupakan sebuah pengembangan perbaikan atau temuan yang memperbaiki suatu sistem yang ada dan diterapkan saat ini. Mungkin agak sulit untuk mahasiswa S1 jika skripsi-nya akan dimasukan dalam suatu jurnal karena kebanyakan merupakan terapan suatu teknik/metode. Beberapa mahasiswa menambahkan aspek lain seperti penelitian tambahan yang menguji tingkat penerimaan sistem yang dibuat terhadap lokasi penelitian atau membandingkan dengan metode-metode lainnya, agar bisa dipublikasikan sebagai artikel ilmiah.

Transisi Pengajar ke Dosen

Dalam perkuliahan, dosen memang mengajarkan metode-metode yang saat ini telah digunakan (untuk materi terapan) dan ilmu-ilmu dasar pendukung metode (untuk materi dasar umum). Selama proses pengajaran terkadang dosen pengampu melakukan modifikasi-modifikasi untuk meningkatkan kinerja suatu metode. Terkadang modifikasi-modifikasi tersebut tidak diajarkan dalam silabus karena memang belum teruji dan khawatir jika langsung diajarkan ke mahasiswa akan berbahaya. Mungkin setelah dipublikasikan dalam suatu jurnal dan telah menempuh proses review dan kritik dalam bentuk sitasi oleh artikel lain dan masuk ke lecture note barulah bisa diajarkan dan sudah masuk dalam buku teks/ajar.

Sedikit sharing informasi, dosen S2 saya dulu programmer Java di perusahaan (saat ini seprtinya serius mengajar). Ada kebingungan darinya mengenai tema S3 yang akan ditempuh, khususnya programmer. Waktu itu saya sendiri bingung. Memang kebanyakan tema riset banyak mengandalkan alat statistik seperti AMOS, SPSS, Lisrel, dan lain-lain. Membuat alat atau menerapkan metode yang ada (bahkan sekedar membandingkan) sulit tembus ke jurnal internasional. Waktu berjalan dan ketika kuliah lanjut, banyak informasi beberapa programmer yang S3 membuat bahasa pemrograman sendiri (misalnya ruby) atau jenis no-SQL seperti MonggoDB yang diutak-atik dari MySQL. Saat ini saya mengajar teknik kompilasi, dengan membuat parser sendiri sepertinya layak dipertimbangkan membuat interpreter sendiri agar meningkatkan performa bahasa yang ada (PHP dkk), atau bahkan mengganti dengan bahasa sendiri.

Sinta

Kalau diikuti terus perkembangannya, Sinta cukup berkembang pesat dibanding ketika pertama kali dibuat. Namun kritik pedas pun sering bermunculan baik di grup-grup WA atau di situs internat, bahkan dari luar negeri (walau penulisnya orang Indonesia). Termasuk salah satu kritikannya adalah terhadap komunitas KO2PI dengan artikelnya yang disitasi 42 kali walau beberapa tidak ada kaitannya, kata si penulis. Tiap kritikan terhadap indeks buatannya, pemerintah malah memakai SINTA sebagai penentu penerimaan proposal hibah yang merupakan sumber tenaga dosen dalam melakukan darma penelitian. Tanpa ada ID Sinta maka seorang dosen tidak bisa mengajukan proposal di link SIMLITABMAS. Kabar terakhir dari penelitian, pencairan luaran tambahan jurnal nasional terakreditasi cukup melampirkan link hasil publikasi di jurnal-jurnal yang terindeks Sinta. Jadi, makin didemo, makin Sinta digunakan sebagai penentu yang mengeliminir dosen-dosen tidak ber-Sinta (jangan-jangan yang Demo anti Sinta & Scopus memiliki indeks Sinta bahkan Scopus yang baik .. wah, mengurangi saingan). Ada baiknya Sinta juga mengakomodir saran-saran dari peneliti sehingga tercipata alat indeks yang demokratis.

Esensi Riset

DIKTI mengharuskan dosen penerima hibah penelitian untuk mempublikasikan hasil penelitiannya ke jurnal, baik lokal, nasional, mapun internasional. Jadi, penelitian harus dipublikasikan? Tentu saja tidak dipaksa (kecuali ada kontrak-nya), apalagi memang yang mendanai pihak tertentu yang hasilnya dirahasiakan. Tetapi jika dananya dari rakyat, sudah tentu harus dipublikasikan agar manfaatnya terasa oleh rakyat. Repotnya, publikasi yang open access berbayar, sementara yang gratis tidak bisa dibaca oleh orang yang tidak berlangganan jurnal tempat penelitian itu dipublikasikan. Di sinilah polemiknya, ada yg bilang jurnal sebaiknya tidak bayar (tetapi yang membaca harus bayar atau membajak) atau bisa diakses orang banyak tetapi berbayar karena publisher butuh biaya untuk mempublishnya.

Riset seyogyanya merupakan perbaikan sistem/metode yang ada saat ini. Biasanya karena ada akibat/dampak negatif dari sistem/metode tersebut. Sebagai contoh menarik adalah riset tentang e-commerce yang saat ini menjamur. Ada jeda waktu antara metode/produk yang saat ini eksis, misalnya GRAB, GOJEK, UBER dan sejenisnya, dengan riset ke depan, misalnya metode yang ramah lingkungan (sustainable) karena meningkatnya e-commerce meningkatkan pula penjualan yang pada akhirnya membutuhkan transportasi yang lebih banyak dari sebelumnya. Jika dengan bahan bakar fosil, maka akan mempengaruhi polusi udara. Selain itu sampah kemasan, misalnya plastik, tentu akan lebih banyak karena jumlah pemesanan yang meningkat (silahkan buka paket online, pasti sulit karena dibalut plastik yang banyak). Ke depan, sepertinya ada teknik-teknik untuk mengurangi polusi (dengan kendaraan listrik atau kemasan yang bio-degradable). Mengajar mungkin bisa digantikan dengan aplikasi e-learning, youtube, dan learning management system (LMS) lainnya, sementara riset hanya manusia yang bisa melakukan. Sekian, semoga bisa menjadi bahan diskusi bersama.

Instal Python di Windows

Saya mengenal nama bahasa pemrograman Python pertama kali pada tahun 2003. Rekan saya selain mengajar ternyata bekerja di perusahaan pengembang perangkat lunak. Bahasa yang digunakan di perusahaannya adalah Python. Dengan gayanya yang unik ciri khas programmer dia mengatakan bahwa bahasa pemrograman tersebut sangat “powerful”. Terus terang saya tidak terlalu tertarik karena waktu itu Visual Basic, PHP, dan Delphi merupakan pilihan utama bahasa pemrograman para mahasiswa yang sedang menyelesaikan tugas akhirnya. Ternyata bagi para data scientist Python merupakan pilihan utama (selain bahasa R). Matlab sendiri tidak direkomendasikan karena berbayar.

Untuk optimalnya, Python diinstal di Linux karena full gratis. Jika diinstal di Windows tentu saja membutuhkan lisensi Windows. Tetapi bagi pengguna yang masih belum familiar dengan Linux (misalnya Ubuntu), dengan menginstal di Windows maka Python bisa langsung dipelajari. Situs untuk mengunduh software Python sudah tersedia (www.python.org). Saat tulisan ini dibuat tersedia versi 3.7.2. Pilih sesuai Platform OS Windows, misalnya 64 bit.

Saya lebih suka web-based installer karena tidak memenuhi ruang harddisk untuk master softwarenya. Jika ingin diinstal juga di komputer lain, pilih saja yang executable installer karena tidak perlu mengunduh dua kali.

Seperti biasa Windows butuh kepastian mengenai aplikasi yang akan diinstal. Ketik saja Run untuk memulai proses mengunduh sekalian menginstal. Saya lebih memilih menambahkan PATH Python agar bisa dijalankan di semua folder kerja dengan cara memberi checklist di pilihan tersebut.

Kita tinggal menunggu Setup Progres hingga selesai. Sebagai informasi, Python diciptakan oleh orang Belanda Guido Von Rossum yang sempat bekerja di Google. Maka tidak heran jika bahasa ini diterapkan di Google, Youtube, Yahoo, dan NASA.

Jangan khawatir, Python memiliki alat bantu yang bernama The IDLE Python Development Environment yang sering kita kenal pada bahasa pemrograman lainnya yaitu IDE.

Ada baiknya men-disable panjang path agar Python tidak bermasalah nantinya jika Path-nya di atas 260 karakter. Jalankan Python yang baru saja diinstal.

Seperti biasa tes program dengan “hello word” untuk memastikan bahasa pemrograman tersebut berjalan dengan normal.

Ternyata mirip dengan Shell pada Matlab dan sepertinya mudah juga, dan yang penting tidak berbayar. Silahkan mencoba.

 

 

Pengurangan Jumlah SKS

Kabar gembira untuk mahasiswa yang tidak suka ber banyak-banyak SKS. Oiya, di sini SKS maksudnya Satuan Kredit Semester bukan “Sistem Kebut Semalam”. Info-nya (semoga bukan hoax) total SKS S1 dan D3 akan dikurangi. Silahkan penjelasannya baca di situs republika. Seperti biasa, setiap kebijakan ada pro dan kontranya. Rektor IPB misalnya setuju dengan kebijakan menteri dalam memangkas SKS dengan harapan mahasiswa bisa mengembangkan hal-hal lain di luar perkuliahan. Tetapi rektor ITS tidak setuju jika kebutuhan lulusan belum sesuai dengan industri dan malah seharusnya ditambah jumlah SKS-nya.

SKS di Indonesia

Sebagai dosen biasa yang mengelola jurusan, itu pun D3, saya tentu sudah seharusnya mengikuti aturan pemerintah. Ada sedikit pengalaman yang bisa dishare. SKS di negara kita sedikit berbeda dengan di luar negeri yang hanya berfokus ke kompetensi lulusan. Tidak ada mata kuliah yang tidak berhubungan langsung dengan kompetensi, seperti agama, kewarganegaraan, dan sejenisnya di tingkat universitas. Mungkin di level SMA ke bawah ada. Dan anehnya ketika saya mengambil mata kuliah 12 SKS (empat mata kuliah) entah mengapa saya kewalahan kalau tidak dibilang babak belur. Dan ketika semester berikutnya ambil 9 SKS (tiga mata kuliah) ternyata tidak ada masalah. Jika dilihat aturan main yang diberikan pemerintah tentang SKS (teori dan praktek) di luar negeri sama dengan kita, bedanya pada pelaksanaannya di luar negeri memang benar-benar dilaksanakan jumlah jam-nya. Misal 3 SKS dengan 2 teori dan 1 praktek, jumlah jam praktek-nya cukup menguras waktu. Silahkan baca perbandingan dengan Thailand, Jepang dan Eropa di slide ke-7 link ini. Oiya, di Indonesia 1 SKS berarti per minggu 50 menit tatap muka, 50 menit kegiatan terstruktur dan 60 menit kegiatan mandiri, jika dihitung-hitung normalnya minimal seorang mahasiswa ambil 16 SKS, maksimal 20 SKS yang berbeda dengan negara-negara lain tentunya.

SKS di Mata Dosen

Salah satu maksud menristek-dikti mengurangi SKS adalah agar dosen bisa lebih fokus ke aspek lain dari tri-darma selain dari pengajaran, yaitu penelitian dan pengabdian pada masyarakat. Terus terang saya dan banyak rekan saya dulu merupakan dosen yang di awal berstatus dosen honorer (bahkan tanpa homebase). Beberapa saat ini sudah mulai melakukan tri-darma, terutama yang kerja utamanya mengajar, bukan praktisi. Namun masih banyak yang hanya mengandalkan mengajar sebagai aktivitas utama. Alasannya banyak dari yang memang kesulitan dalam melaksanakan riset (butuh kompetensi dan dana), atau alasan lainnya misal tidak ingin menelantarkan para mahasiswa karena dosennya sibuk riset … cieee. Ya, silahkan jalankan yang menurut kita benar. Jadilah dosen ideal yang murni dan tulus mengajar misalnya. Namun kondisi di era disrupsi cukup cepat berubah. Dosen butuh kepastian penghasilan, bahkan guru honorer pun saat ini mulai resah, untungnya ada tunjangan sertifikasi dosen. Dengan jumlah SKS yang kian menipis, sementara status yang walaupun ber-homebase tapi mengandalkan gaji dari jam mengajar. Tentu saja penghasilan akan berkurang signifikan karena para dosen lain yang berstatus tetap (bukan sekedar homebase) membutuhkan sekali jam mengajar karena tuntutan serdos.

SKS di Mata Institusi Pendidikan

Jangan lupa, era disrupsi yang telah banyak meminta korban saat ini mulai bergerak secara perlahan tapi pasti ke dunia pendidikan. Mahasiswa dapat mengakses media pembelajaran dari bermacam media, tidak harus dari dosen, walaupun untuk keterampilan tertentu tidak bisa hanya lewat aplikasi/media pembelajaran. Walau beberapa perusahaan raksasa dunia merekrut karyawan tidak lagi dengan kualifikasi akademik, melainkan skill, toh standar tetap diperlukan, alias institusi pendidikan tetap dibutuhkan. Bayangkan mengobati orang sakit, membangun gedung, jembatan, mengemudikan pesawat, dan keterampilan penting lainnya tidak ada standarisasi, tentu akan banyak mudharatnya. Untungnya selain pembelajaran, dua aspek lain tri-darma (penelitian dan pengabdian) sepertinya sulit ter-disrupsi. Tanpa ada penelitian, materi pembalajaran tidak akan berubah sejak jaman kuda gigit besi sampai sekarang, dan karena aktor yang meneliti hanyalah manusia maka tidak akan tergantikan dengan mesin artificial intelligent, bahkan mesin tersebut akan mensuport dan mempermudah peneliti baik dari sisi komputasi maupun pertukaran informasi (sepertinya untuk pengabdian juga). Belum lagi adanya Massive Open Online Course (MOOC) serta blended learning dan flipped learning yang maju mundur dan masih malu-malu, namun siap bergerak cepat ketika infrastruktur siap. Untungnya kunci menghadapi era disrupsi dan industri 4.0 sudah diketahui yaitu ada pada otomatisasi, efisiensi, dan pelayanan yang baik terhadap konsumen dengan literasi digital dan data (Big Data). Jadi nggak perlu khawatir … walau deg-degan juga sih.

Menjalankan MS Word di Ubuntu

Ada dua aplikasi terkenal yang mirip MS Word di Linux yaitu LibreOffice Writer dan satu lagi yang terkenal buatan Apache yaitu Open Office. Aplikasi yang digunakan untuk menjalankan MS Word di linux adalah PlayOnLinux. Aplikasi ini berupa mesin virtualisasi yang berupa wadah untuk proses instalasi MS Office di dalamnya. Silahkan lihat tatacara instalasinya di situs resmi ubuntu.

Tekan tombol Install pada PlayOnLinux dan pilih aplikasi yang berbasis Windows yang tersedia. Tentu saja siapkan juga software installernya. Sempat install MS Office 64 bit tetapi ternyata PlayOnLinux diperuntukan aplikasi berplatform 32bit. Akhirnya coba install Office 2010 32bit. Fasilitas-fasilitas unggul MS Word seperti Automatic Table of Contents, review, dan lain-lain dapat dijalankan di linux, sehingga mempermudah user yang sudah terbiasa dengan MS Word. Sayangnya ketika mencoba share to blog tidak berhasil teregister akun wordpressnya, entah mengapa. Ada baiknya menggunakan bawaan Linux seperti LibreOffice dan OpenOffice karena tentu saja lebih cepat, terutama jika sekedar mengetik. Selamat mencoba, siapa tahu berminat.

 

 

 

Perancangan Basis Data Buttom Up dengan Normalisasi

[basis.data|akuntansi|lab.software|per.15]

Dikenal dua pendekatan dalam merancang basis data yaitu top down dan buttom up. Top down biasanya dilakukan untuk sistem yang benar-benar baru, tidak pernah dilakukan transaksi sebelumnya walaupun secara manual. Atau jika ingin merombak sistem yang terdahulu yang tidak sesuai lagi dengan proses bisnis yang efisien. Sebagian besar e-commerce yang bermunculan saat ini (toko online maupun aplikasi taksi/ojek online) berbasis top down karena memang benar-benar baru.

Postingan ini khusus membahas metode buttom up yang lebih sederhana karena hanya mengkonversi transaksi manual menjadi terkomputerisasi juga online. Cara kerjanya menganalisa kebutuhan berdasarkan arsip-arsip manual yang ada misalnya nota penjualan, nota pembelian, dan laporan-laporan yang sebelumnya ada. Metode ini lebih sederhana dalam pengalihan sistem karena operator-operator tidak perlu belajar intensif karena proses yang ada tetap seperti sebelumnya, hanya mungkin perlu pelatihan penggunaan aplikasi sebagai pengganti sistem manual sebelumnya. Perhatikan sampel arsip nota penjualan di bawah ini. Bagaimana proses normalisasinya?

Ada beberapa jenis normalisasi tabel yaitu unnormalize (UNF), normal pertama (1NF), normal kedua (2NF), dan normal ketiga (3NF). Ada bentuk normal lainnya karena adanya konstrain terhadap relasi yang dimiliki misalnya Boyce-Code Normal Form (BCNF), normal keempat (4NF) dan kelima (5NF).

Unnormalize Form (UNF)

Bentuk normal ini gunanya untuk mendata calon-calon atribut suatu tabel. Adanya perulangan (redundancy) dan multivalue (satu field berisi lebih dari satu isian) diijinkan. Jadi contoh di atas bentuk UNF-nya adalah:

penjualan = no_nota + kode_kasir + nama_kasir + kode_customer + nama_customer + alamat + {kode + nama_barang + harga + jumlah} + total

Primary key diberi symbol “@”. Perhatikan adanya multivalue di atas yang diberi simbol “{ }”. Tugas berikutnya untuk normal pertama adalah membuat tabel tersebut dapat dibuat dalam satu tabel tanpa melanggar konsep basis data relational. Note: untuk basis data non-relational (berbasis objek) multivalue dapat diterapkan.

First Normal Form (1NF)

Penghilangan multivalue dapat dilakukan dengan cara membuat kunci komposit antara barang dengan penjualan. Kandidatnya adalah kode barang + no_nota sebagai primary key-nya.

Penjualan = @no_nota + @kode + kode_kasir + nama_kasir + kode_customer + nama_customer + alamat + nama_barang + harga + jumlah + total

Walaupun terdapat redundansi, misalnya no_nota yang sama tetapi karena primary key menggunakan gabungan no_nota dan kode barang maka selama gabungan keduanya unik, tidak melanggar prinsip primary key. Terkadang beberapa kunci kandidat bisa diidentifikasi untuk proses lebih lanjut, misalnya kode_customer dan kode_kasir.

Second Normal Form (2NF)

Untuk normal kedua, syarat mutlaknya selain 1NF adalah ketergantungan fungsional (functional dependency) antara satu atribut dengan atribut lainnya. Perhatikan bentuk 1NF sebelumnya, keluarkan (bentuk tabel baru) jika ada atribut yang tergantung dengan salah satu primary key (no_nota saja atau kode barang saja). Tercatat ada beberapa antara lain:

  1. nama_barang, harga dan jumlah tergantung kode
  2. kode_customer, nama_customer, alamat dan total, kode kasir dan nama kasir tergantung no_nota.

Nama, harga dan jumlah tergantung kode barang begitu juga yang terlibat transaksi penjualan (pelanggan dan kasir) tergantung nota penjualan. Karena kedua ketergantungan parsial di atas (partial dependency) hanya tergantung pada salah satu kunci komposit primary key, maka harus dihilangkan agar memenuhi syarat 2NF.

  1. barang = @kode + nama_barang + harga
  2. penjualan =@no_nota + kode_kasir + nama_kasir + kode_customer + nama_customer + alamat + total
  3. detilpenjualan = @no_nota + @kode + jumlah

Perhatikan tidak ada atribut yang tergantung secara parsial.

Third Normal Form (3NF)

Bentuk 2NF jika masih terdapat ketergantungan secara transitif antara satu atribut dengan atribut lainnya harus dinormalkan agar bisa menjadi normal ketiga. Perhatikan tabel penjualan yang memiliki beberapa atribut non-key ternyata antara satu atribut tergantung dengan atribut lainnya:

  1. nama_kasir tergantung kode_kasir
  2. nama_customer dan alamat tergantung kode_customer

Oleh karena itu perlu dibuat dua tabel baru. Tabel penjualan hanya menyertakan kunci tamu (foreign key) saja dengan simbol “#” di depannya.

  1. kasir = @kode_kasir + nama_kasir
  2. Pelanggan = @kode_customer + nama_customer + alamat
  3. barang = @kode + nama_barang + harga
  4. penjualan =@no_nota + #kode_kasir + #kode_customer + total
  5. detilpenjualan = @no_nota + @kode + jumlah

Jika tidak ada lagi ketergantungan transitif pada tiap-tiap atribut non-key maka proses normalisasi ketiga telah selesai. Biasanya sampai 3NF saja jika tidak ada konstrain/batasan-batasan ketat atribut tertentu, misalnya harga barang yang tergantung dari pelanggan tertentu, dan lain-lain. Semoga ujian akhir nanti lancar.