Software ENGINEERING
SOFTWARE ENGINEERING
Istilah Software Engineering mulai dipopulerkan tahun 1968 pada Software Engineering Conference yang diselenggarakan oleh NATO. Sebagian orang mengartikan RPL hanya sebatas pada bagaimana membuat program komputer. Padahal ada perbedaan yangmendasar antara perangkat lunak (software) dan program komputer.
Suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan
RUANG LINGKUP
Sesuai definisi yang telah disampaikan sebelumnya, maka ruang lingkup Software engineering dapat digambarkan sebagai berikut.

Gambar 1.3. Ruang lingkup Software engineering
· Software requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak.
· Software design mencakup proses penentuan arsitektur, komponen, antarmuka, dan karakteristik lain dari perangkat lunak.
· Software construction berhubungan dengan detil pengembangan perangkat lunak, termasuk algoritma, pengkodean, pengujian, dan pencarian kesalahan.
· Software testing meliputi pengujian pada keseluruhan perilaku perangkat lunak.
· Software maintenance mencakup upaya-upaya perawatan ketika perangkat lunak telah dioperasikan.
· Software configuration management berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu.
· Software engineering management berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak.
· Software engineering tools and methods mencakup kajian teoritis tentang alat bantu dan metode RPL.
· Software engineering process berhubungan dengan definisi, implementasi, pengukuran, pengelolaan, perubahan dan perbaikan proses.
· Software quality menitikberatkan pada kualitas dan daur hidup perangkat lunak.
1. SOFTWARE ENGINEERING DAN DISIPLIN ILMU LAIN
Cakupan ruang lingkup yang cukup luas, membuat Software engineering sangat terkait dengan disiplin bidang ilmu lain. Tidak saja dengan sub-bidang dalam disiplin ilmu komputer namun dengan beberapa disiplin ilmu lain di luar ilmu komputer.
Gambar 1.7. Hubungan keterkaitan Software engineering dengan ilmu lain
· Bidang ilmu manajemen meliputi akutansi, finansial, pemasaran, manajemen operasi, ekonomi, analisis kuantitatif, manajemen sumber daya manusia, kebijakan dan strategi bisnis.
· Bidang ilmu matematika meliputi aljabar linier, kalkulus, peluang, statistik, analisis numerik dan matematika diskrit.
· Bidang ilmu manajemen proyek meliputi semua hal yang berkaitan dengan proyek, seperti ruang lingkup proyek, anggaran, tenaga kerja, kualitas, manajemen resiko, dan penjadwalan proyek.
· Bidang ilmu manajemen kualitas meliputi pengembangan sistem kualitas, manajemen resiko dan keandalan, perbaikan kualitas, dan metode-metode kuantitatif.
· Bidang ilmu ergonomika menyangkut hubungan (interaksi) antara manusia dengan komponen-komponen lain dalam sistem komputer.
· Bidang ilmu rekayasa sistem meliputi teori sistem, analisis biayakeuntungan, pemodelan, simulasi, proses dan operasi bisnis.
2. PERKEMBANGAN REKAYASA PERANGKAT LUNAK
Meskipun baru dicetuskan pada tahun 1968, namun Software engineering telah memiliki sejarah yang cukup panjang. Gambar 1.8 menyajikan intisari perkembangan Software engineering. Dari sisi disiplin ilmu, Software engineering masih relatif muda dan akan terus berkembang.
Arah perkembangan yang saat ini sedang dikembangkan antara lain meliputi :

3. PROFESI DAN SERTIFIKASI
Profesi sebagai seorang Software Engineer mungkin masih terasa asing di telinga orang Indonesia. Sebagian besar orang Indonesia mungkin lebih familiar dengan sebutan Ahli Teknologi Informasi, Analis Sistem Informasi, Programmer, Operator atau sebutan profesi lainnya. Hal ini karena adanya kerancuan tentang istilah Software engineering seperti telah disebutkan di awal bab. Namun di negara-negara yang maju dalam bidang teknologi informasi, sebutan Software Engineer telah mulai banyak digunakan.
Sertifikasi kompetensi dalam bidang Software engineering, saat ini masih menjadi perdebatan di kalangan ahli dan penyedia perangkat lunak. Sebagian besar sertifikasi dalam industri perangkat lunak biasanya sangat spesifik untuk perangkat lunak tertentu. Sebagai contoh, perusahaan perangkat lunak seperti Redhat Linux Inc., Adobe Inc., Oracle, atau Microsoft, memberikan sertifikasi kemampuan pada seseorang yang menguasai perangkat lunak yang diproduksinya.
ACM (Association for Computing Machinery) pernah menyelenggarakan sertifikasi untuk program Software Engineer pada tahun 1980an, namun dihentikan karena kurangnya peminat. IEEE (Institute of Electrical and Electronics Engineers) telah mengeluarkan lebih dari 500 sertifikat profesi perangkat lunak. Di Canada, telah dikeluarkan sebuah sertifikat legal untuk RPL yang disebut sebagai ISP (Information Systems Profesional).
Saat ini, sertifikasi untuk Software engineering di Indonesia juga belum tersedia, namun telah disusun Standar Kompetensi Kerja Nasional Indonesia untuk Bidang Programmer Komputer. Meskipun belum memenuhi cakupan bidang Software engineering secara keseluruhan, namun paling tidak dapat digunakan sebagai pendekatan sertifikasi bidang Software Engineering.
Referensi :
1. Pressman, Roger.S. "Software Engineering : A Practioner's Approach." 4th .McGrawHill. 1997
2 .Sommerville, Software Engineering 7 Edition. England,Pearson Addison Wesley, (2004).

