Topik ini memetakan tempat COBOL benar-benar berjalan, yaitu sektor perbankan, asuransi, dan pemerintahan, serta pola pemrosesan batch malam hari. Lingkungan produksi utamanya adalah sistem z/OS di komputer mainframe, sedangkan bagian akhir menunjukkan bagaimana GnuCOBOL membawa bahasa yang sama ke workstation Linux, yaitu komputer kerja biasa. Pemetaan ini menjelaskan mengapa satu bahasa berusia puluhan tahun masih menanggung beban operasional sehari-hari.
Sektor yang mengolah data dalam volume besar#
Penggunaan COBOL terpusat pada sektor yang kegiatannya berupa pemrosesan record bisnis dalam volume besar. Pada perbankan, sistem inti yang mencatat tabungan, pemindahan dana, dan penutupan harian ditulis dengan COBOL. Pada asuransi, perhitungan premi, pembaruan polis, dan pengolahan klaim berjalan di atas program yang berusia puluhan tahun. Pada pemerintahan, lembaga pajak, badan statistik, dan administrasi kependudukan menggunakan COBOL untuk mengolah data warga negara.
Ketiga ranah itu memiliki ciri yang sama, yaitu aturan bisnis yang kompleks, tuntutan akurasi desimal pada nilai uang, dan sistem yang harus berjalan tanpa henti selama bertahun-tahun. Aturan bisnisnya berubah perlahan, sedangkan setiap prosesnya harus meninggalkan jejak yang dapat ditelusuri kembali. Karakter pekerjaan demikian menghendaki bahasa yang ketat pada bentuknya tetapi dapat diandalkan pada hasilnya, dan COBOL memang dirancang untuk tuntutan tersebut. Pilihan bahasa yang diambil pada 1960-an bertahan karena kebutuhan sektor ini sendiri tidak banyak bergeser.
Pemrosesan batch malam hari#
Sebagian besar pekerjaan COBOL berbentuk pemrosesan batch, yaitu eksekusi sekumpulan pekerjaan secara terjadwal tanpa interaksi pengguna. Ketika cabang bank tutup, pekerjaan batch berjalan pada jendela waktu malam hari (batch window) untuk menghitung bunga, menutup pembukuan harian, memperbarui berkas master, dan menyiapkan laporan untuk pagi berikutnya. Pola ini cocok dengan karakter COBOL, karena membaca berkas berurutan dari awal sampai akhir, menghitung, lalu menulis hasilnya adalah pekerjaan yang paling dikuasai bahasa ini.
Alur khasnya berupa rangkaian yang terurut dan saling bergantung.
- Berkas mutasi yang terkumpul sepanjang hari disiapkan dan diperiksa kelengkapannya.
- Program bunga menghitung bunga harian setiap rekening dan memperbarui saldo.
- Program pembukuan merangkum seluruh perubahan menjadi angka penutupan hari.
- Program laporan mencetak rekening koran dan ringkasan untuk pagi berikutnya.
Urutan pekerjaan tidak boleh terbalik. Pembukuan, misalnya, baru ditutup setelah semua mutasi diterima, sehingga penjadwalan menjadi bagian penting dari desainnya. Kegagalan satu pekerjaan menunda pekerjaan berikutnya, dan karena itu sistem batch dilengkapi pengecekan hasil serta prosedur pemuatan ulang.
Mainframe z/OS sebagai lingkungan produksi utama#
Hampir seluruh beban produksi COBOL berjalan di mainframe, komputer besar yang dirancang untuk beban transaksi tinggi dan ketersediaan jangka panjang, dengan z/OS dari IBM sebagai sistem operasinya. Pemusatan beban pada satu sistem besar menyederhanakan pengurusan ribuan pekerjaan batch yang harus berurutan setiap malam, dan ketersediaan tinggi menjadi syarat layanan yang tidak boleh berhenti. COBOL di sana tidak berdiri sendiri. Bahasa penjadwalan JCL menentukan urutan pekerjaan batch, monitor transaksi CICS melayani pengguna daring, dan basis data DB2 menyimpan data program-program COBOL. Ketiganya membentuk lanskap tempat program COBOL hidup.
Diagram berikut merangkum posisi COBOL pada arsitektur perusahaan sekaligus letak bahasa yang sama di workstation latihan.
Bagian kiri diagram menunjukkan bahwa batch malam hari, layanan daring, dan penyimpanan data berjalan berdampingan di satu sistem. Bagian kanan menunjukkan bahwa compiler GnuCOBOL menghadirkan bahasa yang sama di Linux tanpa perangkat keras apa pun dari bagian kiri diagram. Pemisahan dua sisi itu juga menegaskan pembagian peran kedua compiler, yaitu compiler resmi untuk produksi dan GnuCOBOL untuk latihan serta pengujian modernisasi.
GnuCOBOL membawa bahasa itu ke Linux#
Compiler GnuCOBOL menerjemahkan kode COBOL menjadi C, lalu menyerahkan hasilnya kepada compiler C seperti gcc untuk dijadikan program yang dapat dieksekusi, sehingga bahasa ini dapat dipelajari dan diuji pada workstation Linux biasa. Sintaks dan perilaku bahasanya mengikuti standar COBOL yang sama, sehingga keterampilan dari latihan tetap berlaku ketika program serupa dibaca di lingkungan produksi. Ketersediaan bahasa ini di Linux menurunkan hambatan belajar COBOL secara nyata, karena tidak ada lagi kebutuhan akses mainframe untuk menulis program pertama. Pada pekerjaan modernisasi, GnuCOBOL juga berperan sebagai lingkungan pengujian, yaitu tempat program warisan dianalisis dan dijalankan ulang sebelum diubah.
Perilaku GnuCOBOL dapat berbeda dari compiler resmi pada hal-hal kecil, misalnya format tampilan tertentu. Karena itu, sistem produksi di mainframe tetap menggunakan compiler resminya. Untuk keperluan pembelajaran pada jalur ini, perbedaan semacam itu tidak menghalangi satu pun materi.
Ringkasan#
- COBOL menanggung pemrosesan inti pada perbankan, asuransi, dan pemerintahan karena kebutuhan akurasi desimal dan volume data yang tinggi.
- Pekerjaan utamanya berbentuk batch malam hari, yaitu perhitungan bunga, penutupan pembukuan, dan pembaruan berkas master secara terjadwal.
- Mainframe z/OS beserta JCL, CICS, dan DB2 adalah lingkungan produksi utamanya, sedangkan GnuCOBOL menghadirkan bahasa yang sama di workstation Linux untuk belajar dan modernisasi.
Referensi#
- IBM Enterprise COBOL for z/OS documentation — IBM — Dokumentasi resmi compiler COBOL yang menjalankan beban produksi di z/OS.
- What Is COBOL? — IBM — Gambaran umum ranah penggunaan COBOL pada perbankan dan sektor pengolah data lainnya.