Kasus error ini dari sisi sistem dapat dibagi menjadi dua area, hardware dan software. Dengan mengasumsikan bahwa kasus ini lebih condong pada sisi software maka kemungkinan error bisa dilihat lagi dari 2 sisi: 1. Logical Error, yaitu kesalahan logika dari program itu sendiri. Ini adalah kesalahan yang paling sulit ditelusuri. Disini perlunya system analyst yang bertugas sebagai menterjemahkan user requirements menjadi system/software specification serta QA Specialyst yang berperan melakukan VALIDASI dan VERIFIKASI proses dan produk akhir software; 2. Development error, bisa termasuk saat compilation, code interpretation, linking, maupun runtime error. Kesalahan ini relatif mudah ditelusuri. Rasanya semua compiler dengan bahasa pemrograman apapun sudah mendukung guide untuk melakukan koreksi. Singkatnya Compiler secara otomatis akan memberitahu jenis, bahkan letak kesalahan code yang kita bangun.

Pembahasan – Cahyo Hardo

Believe, this is a really good information. I got it from Trevor Kletz’s Book, An engineer View’s of Human Error. Hope we can learn something or at least we remember about human error associated with computer, especially related to the plant.

Mas Budhi, kindly request to post it on milist migas indonesia.

Attachment : error in computer-controlled plants.pdf

Tanggapan 1 – Waskita Indrasutanta

Masukan yang bagus sekali dari Mas Cahyo. Kalau bisa, diusahakan permit untuk dipublikasikan di Migas_Indonesia online.

Tips tambahan:

Saya masih sering melihat system yang dipasok beberapa System Integrator tidak mempunyai security untuk accessibility pada konfigurasi system, sehingga peluang kesalahan Operator dalam memberikan respond bisa terjadi, dan juga membuka peluang bagi pihak-pihak yang tidak bertanggung jawab. Operator sebetulnya tidak boleh dipusingkan dengan kemungkinan kesalahan yang bisa terjadi dengan memberikan pembatasan wewenang Operator hanya untuk keperluan operasional plant. Konfigurasi dan Administrasi system harus ditangani oleh ‘System Administrator’ yang benar-benar mengerti apa yang ddilakukan oleh system.

Berikut adalah beberapa ketentuan yang sebaiknya dispecify (disyaratkan) pada setiap project yang menggunakan Computer untuk dipenuhi oleh System Integrator pelaksana:

1. Access Level dari pengguna system harus mengikuti procedure operational dari system dan dibagi-bagi menjadi beberapa level yang diprotek dengan login name dan password, misalnya minimal sbb:

a. Guest (kalau diperbolehkan): Hanya bisa melakukan ‘view only’ (no control) untuk screen atau site yang diperbolehkan.

b. Operator: ‘View’ dan ‘Control’ untuk semua operating parameter untuk site / lingkup yang diperbolehkan.

c. Supervisor: Seperti Operator, tetapi mempunyai wewenang lebih, seperti: merubah alarm setpoint, trip setpoint, generate non-schedule report, dsb.

d. Superintendent: Seperti Supervisor tetapi untuk lingkup Plant secara keseluruhan (lingkup superintendent).

e. System Administrator: Mempunyai accessibility pada keseluruhan system.

2. Pada waktu Computer boot up, gunakan Administrator Auto Logon (HMI memerlukan Administrator rights untuk bisa bekerja), dan langsung masuk ke Login screen dari HMI (dengan menggunakan fasilitas Startup folder), dimana access level diatas (butir #1) diatur melalui Login Name yang sudah dikonfigurasikan oleh System Administrator. Dipasangkan Keyboard Filter, seperti ‘Windows Menu button’, [Ctrl] + [Alt] + [Del], yang pada prinsipnya hanya System Administrator yang bisa keluar dari HMI menuju Operating System (OS).

3. Configuration Tools pada Engineering Workstation (EWS) hanya bisa diakses oleh System Configurator.

Dengan demikian, segala hal yang sifatnya adalah untuk meng-administer dan meng-kofigurasi system, hanya dilakukan oleh System Administrator dan System Configurator yang diberi wewenang dan yang mengerti betul seluk-beluk dari system, network dan operating system-nya.

Semoga bermanfaat bagi rekan-rekan.

Tanggapan 2 – Syahrizal Mustafa

Dulu ketika awal2 saya bergabung di milis ini pernah saya launch topik ‘Software Engineering’ yang kemudian terjadi diskursus yang berkembang melabar dan kemana-mana tapi intinya audiens punya persepsi bahwa topik yang saya maksudkan tersebut adalah (gampangnya): ‘suatu alat bantu SOFTWARE untuk keperluan ENGINEERING’. Persepsi yang agak keliru dari apa yang saya maksudkan. Kita tinggalkan itu dan kembali pada topik ‘(hse) Errors in computer-controlled plants’.

Kasus error ini dari sisi sistem dapat dibagi menjadi dua area, hardware dan software. Dengan mengasumsikan bahwa kasus ini lebih condong pada sisi software maka
kemungkinan error bisa dilihat lagi dari 2 sisi:

1. Logical Error, yaitu kesalahan logika dari program itu sendiri. Ini adalah kesalahan yang paling sulit ditelusuri. Disini perlunya system analyst yang bertugas sebagai menterjemahkan user requirements menjadi system/software specification serta QA Specialyst yang berperan melakukan VALIDASI dan VERIFIKASI proses dan produk akhir software.

2. Development error, bisa termasuk saat compilation, code interpretation, linking, maupun runtime error. Kesalahan ini relatif mudah ditelusuri. Rasanya semua compiler dengan bahasa pemrograman apapun sudah mendukung guide untuk melakukan koreksi. Singkatnya Compiler secara otomatis akan memberitahu jenis, bahkan letak kesalahan code yang kita bangun.

Kedua kesalahan diatas mestinya sudah diantisipasi secara dini jika softwrae yang dibuat sudah mengikuti kaidah ilmu SOFTWARE ENGINEERING (saya singkat SE).

Dalam SE sendiri ada beberapa metodologi pengembangan software salah satunya V-life cycle misalnya yang memiliki Development process dan Integral process.

I. Development process adalah aktifitas pengembangan software yang sekuensnya terdiri dari:

1. Software requirement

2. Preliminary Design

3. Detail Design

4. Coding

5. Module (CSU) Testing

6. Application Integration

II. Integral process adalah aktifitas integratif yang mencatat dan merangkum seluruh aktifitas pada development process meliputi:

1. Software Quality Management (SQM)

2. Software Configuration Management (SCM)

Mungkin karena ilmu SE masih relatif baru (di dunia muncul pada dekade 60-an dan di Indonesia baru pada dekade 80-an), banyak orang menganggap baik secara sadar maupun tidak mendefenisikan SOFTWARE adalah CODE PROGRAM tok. Padahal kalau kita mengikuti paradigma SE dengan V-life cycle saja misalnya, SOFTWARE harus juga menyertakan sejumlah dokumen yang diproduce dari setiap aktifitas diatas baik untuk development process maupun integral process.

Kasus error pada topik kita ini ini bisa saja karena aktifitas SQM (II. 1) tidak dijalankan, lebih parah lagi kalau requirement analisys-nya (I. 1) nggak terbangun sehingga sulit melakukan test (I. 5) karena tidak ada dasar against what requirement does the module shall be comlpied?. Terakhir (ini yang PALING PARAH), jangan2 ketika membuat software memang tidak mengikuti kaidah SE alias langsung nongkrong di komputer sambil menghayal apa yang akan di-code, dapet inspirasi, langsung tulis code-nya. Wah, ini sih programming ala hackers/crackers bukan sebagai Software Engineer.

Tanggapan selengkapnya dari rekan-rekan Mailing List Migas Indonesia ini dapat dilihat dalam file berikut: