← Cara Saya Berpikir

Sistem sebagai Instrumen Eksperimen, Bukan Produk

Artifact sebagai alat pembuktian

Ada prinsip yang sering diabaikan peneliti TI: sistem yang dibangun dalam riset bukan produk — ia adalah alat uji hipotesis. Arsitektur sistem, pemilihan komponen, dan cara modul berinteraksi seharusnya ditentukan oleh research question dan variabel eksperimen, bukan oleh preferensi teknis atau tren industri.

Seorang engineer membangun sistem agar berfungsi dengan baik, scalable, dan user-friendly. Seorang eksperimentalis membangun sistem agar bisa mengisolasi variabel. Kedua tujuan ini tidak selalu sejalan. Sistem yang paling elegan secara arsitektural belum tentu paling mudah dieksperimenkan.

Hevner et al. (2004) mendefinisikan sistem dalam konteks riset sebagai artifact — objek yang sengaja diciptakan untuk mendemonstrasikan atau menguji klaim tertentu. Artifact bukan tujuan akhir; ia instrumen pembuktian.

System as Experiment Model

Setiap komponen sistem harus bisa ditelusuri balik ke variabel penelitian, dan setiap variabel harus bisa ditelusuri ke research question:

  1. RQ → Variable (Dekomposisi): research question dipecah menjadi variabel: independen (dimanipulasi), dependen (diukur), dan kontrol (dijaga konstan). Contoh: RQ tentang caching strategy menghasilkan IV = strategi caching, DV = waktu respons, kontrol = beban server dan ukuran data.

  2. Variable → System Component (Mapping): setiap variabel dipetakan ke komponen sistem tertentu. IV → modul caching. DV → logging module yang mengukur latensi. Variabel kontrol → konfigurasi environment yang di-lock.

  3. System Component → Experimental Setup (Konfigurasi): komponen dirangkai menjadi skenario eksperimen. Setup A menggunakan strategi X; Setup B menggunakan strategi Y. Semua variabel kontrol identik di kedua setup.

  4. Experimental Setup → Output (Eksekusi): eksperimen dijalankan dan menghasilkan data terukur yang langsung terkait dengan DV.

Empat prinsip desain sistem eksperimental

Traceability: setiap komponen bisa ditelusuri balik ke variabel penelitian, dan setiap variabel ke RQ. Jika ada komponen yang tidak bisa ditelusuri, ia mungkin tidak dibutuhkan — atau sebaliknya, ada variabel yang belum diimplementasikan.

Modularity: modul yang mengimplementasikan variabel berbeda harus bisa diswap secara independent. Ini yang memungkinkan ablation study: matikan satu komponen, lihat dampaknya.

Controllability: ada mekanisme untuk mengatur nilai variabel independen dan menjaga variabel kontrol tetap konstan. Parameter tidak di-hardcode; dikonfigurasi secara eksplisit.

Measurability: sistem memiliki mekanisme built-in untuk mengukur variabel dependen. Logging bukan afterthought — ia bagian integral dari desain sistem eksperimental.

Jebakan arsitektur yang umum

Over-engineering: menambahkan fitur atau komponen yang tidak terkait dengan RQ, yang justru mempersulit isolasi variabel.

Under-logging: tidak mencatat cukup informasi selama eksperimen, sehingga sulit merekonstruksi kondisi ketika ada pertanyaan dari reviewer.

Hidden coupling: dependensi tak terlihat antar komponen yang membuat variabel kontrol "rembes" ke variabel lain.

Config drift: parameter yang berbeda antara skenario A dan B bukan karena perbedaan yang disengaja, melainkan karena lupa mengatur ulang konfigurasi.

Sistem eksperimental yang baik mungkin terlihat "berlebihan" dari perspektif engineering — modul yang seharusnya digabung justru dipisah, konfigurasi di-parameterisasi semuanya. Tapi itulah yang membuat hasilnya bisa dipercaya.

Helmi Bahara
Tentang penulis Helmi Bahara

Systems Architect & AI Workflow Thinker