Generasi Pertama
BAHASA MESIN
Bahasa mesin adalah bahasa internal komputer yang mengeksekusi secara langsung tanpa terjemahan (translation). Disebut generasi pertama karena merupakan jenis yang paling awal dikembangkan tahun 1940-an dan awal 1950-an semua program harus dikodekan dalam bahasa mesin.

Generasi Kedua
BAHASA ASSEMBLY
Penggunaan komputer secara komresial pada tahun 1950-an mengakibatkan dikembangkannya bahasa assembly.
Ciri-ciri bahasa assembly :
– Kode ditandai dengan nama yang mudah diingat seperti ADD, SUB, dan MULT
– Alamat penyimpanan (storage addresses) nyata dimana data ditempatkan dapat didefinisikan dengan nama-nama seperti AMT1 dan AMT2 untuk memudahkan rujukan
Sama seperti bahasa mesin, bahasa assembly tergantung komputer. Untuk menerjemahkan kode-kode diperlukan program khusus yang disebut ASSEMBLER.

Generasi Ketiga
BAHASA TINGKAT TINGGI
Penggunaan komputer dalam bisnis berkembang sangat dramatis pada tahun 1950-an. Bahasa mesin dan assembly terlalu sulit, sehingga muncul third-generation languages (3GLs) yang lebih mudah untuk program dan portable.
Disebut tingkat tinggi karena mudah dipelajari dan program tingkat-tinggi memerlukan proses penerjemahan oleh komputer yang sangat rumit yang disebut COMPILER atau INTERPRETER.
Seperti generasi pendahulunya 1GL dan 2GL, 3GL disebut bahasa prosedural, sedangkan 4GL dan 5GL disebut bahasa nonprosedural, yakni program harus menentukan kumpulan instruksi yang tepat yang dibutuhkan untuk menyelesaikan tugas yang diberikan.
Contoh bahasa tingkat-tinggi :
– FORTRAN
– Cobol
– Pascal
– BASIC
– MODULA-2
– ADA
– Object-oriented programming language

Generasi Keempat
Ciri-ciri :
– Mudah untuk dipelajari dan dipahami
– Tepat untuk pengaksesan database
– Nonprosedural
– Memfokuskan pada memaksimalkan produktivitas manusia
– Pembuat aplikasi
– Bahasa untuk semua pemakai

Contoh:
– Query language seperti SQL, QBE, dan INTELLECT
– Report generator

Prinsip Pokok dalam design 4GL :
– Prinsip pekerjaan minimal
– Prinsip keterampilan minimal
– Prinsip pengindaran syntax dan mechanic asing
– Prinsip waktu kosong (delay)
– Prinsip usaha minimal (min error)
– Prinsip perawatan minimal (costumize)
– Prinsip hasil maksimal

Karakter pokok 4GL:
– Apakah diperuntukan untuk perhitungan rutin atau keputusan
– Apakah diperuntukan untuk pemakai terakhir atau DP profesional
– Apakah memerlukan ketrampilan programmer atau tidak
Komponen 4GL:

4GL dengan tujuan umum yang baik mempunyai komponen non-prosedural yang mungkin disembunyikan pada fsilitas prosedural. Seperti gambar diatas :
– Application parameter, meliputi pemberian nama parameter, catalog, versi, pembuat dsb.
– Data specification, penentuan spesifikasi laporan berdasarkan data yang diambil.
– Screen specification, penentuan bentuk tampilan.
– Dialog specification, menentukan interaksi manusia dengan komputer.
– Specification OF Rules, aturan-aturan untuk penentuan keputusan. Biasanya dipisahkan dari badan aplikasi.

Bagaimana 4GL Digunakan
Masalah dalam pemrosesan data:
– Pemakai tidak dapat memperoleh aplikasi ketika memerlukannya.
– Terdapat kesalahan program.
– System yang digunakan sering tidak memenuhi persyaratan pemakai.
– Sukar untuk memahami DP dan berkomunikasi secara tepat.
– Pemakai harus menandatangani spesifikasi, sulit pengendaliannya.

System Development Life Cycle

Tipe Life Cycle
Beberapa tipe life cycle yang ada dalam penggunaannya dengan 4GL:
– System Ad-hoc, pemakai/analisis akan menyaring, membuat, dan memanipulasi data.
– Prototype Cycle, prototype dibuat oleh system analyst dan reaksi pemakai pada prototype menyebabkan terjadinya modifikasi.
– Prototype 3GL-Cycle, diprogram untuk mendapatkan efisiensi mesin yang lebih besar.
– Spesifikasi dan 4GL Cycle, analisa dan spesifikasi dengan life cycle tradisional, tetapi code dibuat dengan code generator.
– Lingkaran Bahasa Spesifikasi, pada lingkungan ini Administrator data akan menjaga kamus dan data yang digunakan organisasi.

Gelombang 4GL
Gelombang perkembangan 4GL:
1. Bahasa Off-line, digunakan pemakai untuk mengisi form. Contoh : MARK IV, DMS.
2. Bahasa yang dapat beroperasi pada terminal seperti mesin ketik. Contoh: SQL, NOMAD, dan DATATRIEVE.
3. Bahasa untuk monitor dumb vdu, pemakai berinteraksi dengan tampilan dua dimensi. Contoh: MAPPER, FOCUS, RAMIS, dan QBE.
4. Bahasa yang dirancang untuk waktu tanggap desi detik dari PC atau LAN. Contoh: MULTIPLAN 1 LOTUS, SYMPHONI, dan FRAMEWORK.
5. Bahasa yang menggunakan grafik untuk design program. Contoh: CAD atau CAM.

Kriterian Pemilihan 4GL
* ALingkungan aplikasi:
– Untuk pemakai akhir
– Penghitungan tertentu
– Batch System, On-line System, atau perhitungan eksplorasi
– Kerja komersial
– Volume transaksi rendah
– Jenis komputer
– Ukuran basis data
– Akses melalui aplikasi
– Spesifikasi kompleks
* Kategori Fungsi:
– Simple query languages
– Complex query & update languages
– Application generators
– Graphics languages
– Application languages
– Decision support languages

Evolusionary Level Syntax
Beberapa gelombang evolusi dalam pengembanagn 4GL yang meningkatkan kekuatan dialognya:
– Operasi Off-line
– Dialog satu dimensi dengan terminal seperti mesin ketik
– Dialog dua dimensi dengan terminal vdu sederhana
– Dialog menggunakan grafik
– Peralatan dengan keterkaitan expert-system

Peralatan
Peralatan yang diperlukan dan dapat diuji kualitasnya:
– Fasilitas kreasi basis data
– Bahasa query
– Pembuatan laporan/grafik
– Bahasa prosedural
– Pointer layer
– Pembuat dialog
– Peralatan untuk pembuatan dokumentasi.
– Peralatan untuk design system dan spesifikasi

Evolusi masa depan
Perbedaan evolusi bahasa komputer dipengaruhi oleh:
– Perkembangan mesin yang digunakan oleh pengembang aplikasi
– Peningkatan respon desi detik dari perangkat
– Penggunaan garfik berwarna
– Penekanan bahasa pokok pada bahasa spesifikasi bukan bahasa pemrograman
– Dokumentasi spesifikasi sistem diorientasikan pada grafik
– Teknik non-prosedural akan digunakan
– Pengguanaan default yang maksimum untuk meminimalkan pengembangan
– Deteksi kesalahan dalam pengembangan aplikasi
– Aplikasi berbasiskan basis data

Generasi Kelima
Sering digunakan untuk akses database atau membuat sistem pakar (expert system) atau knowledge-based system.
Dalam konsep, ditujukan untuk bahasa alami (natural languages) yang semirip mungkin dengan hubungan kemanusiaan. Contoh, LISP dan Prolog.
Sekarang ini banyak sistem pakar dikodekan baik dalam LISP maupun Prolog, meski untuk hal yang sama bisa ditulis dalam C atau C++. Usaha yang sekarang dilakukan adalah memperbaiki bahasa AI (Artificial Intellegence) dengan mengkombinasikan kemampuan terbaik dari LISP dan Prolog.

Sumber