REKAYASA PERANGKAT LUNAK ( 1st week)
RAHMAD HIDAYAH /41813120037 FASILKOM / SISTEM INFORMASI DOSEN : WAHYU HARI HAJI, S.Kom, MM
REKAYASA PERANGKAT LUNAK A. Definisi Perangkat Lunak Ada beberapa definisi perangkat lunak yang pernah dikemukakan antara lain : Software = Perangkat lunak (Kumpulan program komputer dengan fungsi tertentu ) Perangkat lunak menurut Pressman,1997 1. Instruksi (program komputer) yang bila dieksekusi dapat menjalankan fungsi tertentu, 2. Struktur data yang dapat membuat program memanipulasi informasi 3.Dokumen yang menjelaskan operasi dan penggunaan program (Pressman, 1997). Perangkat lunak adalah program komputer, prosedur, aturan, dan dokumentasi yang berkaitan serta data, yang bertalian dengan operasi suatu sistem komputer (IEEE, 1993). Perangkat lunak adalah seluruh perintah yang digunakan untuk memproses informasi. Perangkat lunak dapat berupa program atau prosedur.
Program adalah kumpulan perintah yang dimengerti oleh komputer sedangkan prosedur
adalah perintah yang dibutuhkan oleh pengguna dalam memproses
informasi (O’Brien, 1999).
a.i. Karakteristik Perangkat Lunak Perangkat lunak lebih dikenal sebagai elemen lojik daripada fisik, oleh karena itu perangkat lunak memiliki karakteristik yang berbeda dari perangkat keras : 1. Perangkat lunak dikembangkan atau direkayasa, jadi tidak diproduksi dalam pengertian klasik. 2. Merupakan produk yang unik (tidak ada seri produksi). 3. Perangkat lunak tidak pernah akan rusak/aus karena selalu diperbaharui 4. Tidak terlihat (invisible). 5. Perangkat lunak pada umumnya dibangun sesuai keinginan, jadi tidak dibentuk dari komponen yang sudah ada.
6. Fleksibel, sehingga mudah dimodifikasi. 7. Dihubungkan (linked) dengan sistem komputer.
a.ii. Pengertian Rekayasa Perangkat Lunak Istilah Rekayasa Perangkat Lunak (RPL) secara umum disepakati sebagai terjemahan dari istilah 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 yang mendasar antara perangkat lunak (software) dan program computer seperti yang di jelaskan dalam definisi pembahasan diatas. Berikut ini beberapa definisi RPL dari yang pernah dikemukakan •
Pembentukan
dan
penggunaan
prinsip
rekayasa
(engineering)
untuk
mendapatkan perangkat lunak secara ekonomis namun andal dan dapat bekerja secara efesien pada komputer (Fritz Bauer, 1968). •
Penerapan
pendekatan
yang
sistematis,
disiplin,
dan
terukur
untuk
pengembangan, operasi, dan pemeliharaan perangkat lunak (IEEE, 1993). •
Suatu disiplin yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk pembangunan perangkat lunak komputer (Pressman, 97).
•
Merupakan aplikasi dari prinsip-prinsip sains untuk Mengurutkan transformasi masalah menjadi solusi yang dapat bekerja dengan baik Urutan pemeliharaan perangkat lunak tersebut sampai tidak dapat digunakan lagi (Alan M. Davis)
Sesuai dengan beberapa definisi yang telah disampaikan, maka ruang lingkup RPL dapat digambarkan seperti gambar diatas. Software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak. Software Design mencakup proses penentuan arsitektur, komponen, antarmuka, dan karateristik lain dari perangkat lunak. Software Construction berhubungan dengan detail 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. Configuration Management berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu. Engineering Management berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak. Tools & Method mencakup kajian teoritis tentang alat bantu dan metode RPL. Process berhubungan dengan definisi, implementasi, pengukuran, pengelolaan, perubahan, dan perbaikan proses RPL. Quality menitikberatkan pada kualitas dan daur hidup perangkat lunak.
B. Jenis Jenis Perangkat Lunak Dilihat dari sudut pandang fungsinya, perangkat lunak dapat dikelompokkan menjadi : 1. Perangkat lunak sistem Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk operasional komputer. • sistem operasi • penerjemah bahasa pemrograman (compiler/interpreter) 2. Perangkat lunak aplikasi Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk membantu menyelesaikan masalalah-masalah yang dihadapi oleh pemakai. • program paket yang sudah jadi • program aplikasi buatan sendiri Sedangkan dilihat dari aplikasinya, perangkat lunak dibedakan menjadi : a. Perangkat Lunak Sistem (Sistem Software) Sekumpulan program yang ditulis untuk kepentingan program lain, contoh
editor, driver dan lain-lain b. Perangkat Lunak Waktu Nyata (Real Time Software) Perangkat
lunak
yang
digunakan
untuk
mengukur/menganalisis
atau
mengontrol proses pemasukan data dari lingkungan luar sampai menghasilkan laporan yang diinginkan c. Perangkat Lunak Bisnis (Business Software) Perangkat lunak yang memberikan fasilitas operasi untuk bisnis atau fasilitas pengambilan keputusan manajemen, contoh sistem akuntansi , inventory,
payroll dan lain-lain d. Perangat Lunak Rekayasa dan Sains (Engineering and Scientific Software) Perangkat lunak yang digunakan di dalam bidang aplikasi teknik dan kerekayasaan Perangkat lunak jenis ini biasanya berhubungan dengan komputasi data numerik, CAD (Computer Aided Design), simulasi sistem, dan lain-lain.
e. Embedded Software Perangkat lunak yang digunakan untuk mengontrol suatu produk dan sistem dimana perangkat lunak tersebut disimpan. Biasanya ditempatkan di ROM, contoh Tombol di Microwave Oven f. Perangkat Lunak Komputer Pribadi (Personal Computer Software) Banyak digunakan pada aplikasi yang bersifat perorangan, contohnya : pengolah kata, spreadsheet, game, DBMS dan lain-lain. g. Perangkat Lunak Intelegensia Buatan (Artificial Intelligent Software) Dibuat dengan menggunakan teknik algoritma non-numerik untuk memecahkan masalah yang kompleks, digunakan dalam bidang aplikasi kecerdasan buatan, contohnya : game, expert sistem, neural network, Turbo Prolog, dan lain-lain C. Tujuan dan pentingnya Rekayasa Perangkat Lunak Teknologi dalam kehidupan sehari-hari menjadi peran yang sangat vital dan sangat diperlukan. Teknologi yang awalnya dikembangkan untuk mempermudah manusia dalam menjalankan kehidupan sehari-hari, semakin nyata dengan banyaknya penemuan-penemuan baru dalam segala bidang komunikasi, kesehatan, pengolahan data dan juga biang-bidang lain yang sangat signifikan. Dengan terus berkembangnnya teknologi seiring kompleksnya kebutuhan manusia untuk mampu beertahan dikehidupan ini, maka perkembangan teknologi
ini
penting
untuk
dikuti,
bahkan
dipelajari
dikembangkan sesuai dengan kebutuhan kita dan orang lain.
dan
kemudian
Dewasa ini Semua negara maju ekonominya bergantung pada teknologi informasi yang sistemnya di kendalikan oleh perangkat lunak (Software). Sehingga dalam perkembangannya Software tersebut selalu meengalami perubahan guna demi kesempurnaan dan perbaikan serta kemudahan dalam pengaplikasiannya.itulah sebabnya
kenapa
RPL
dibutuhkan
guna
pengembangan
sistem
yang
berkesinambungan Adapun Tujuan dari Rekayasa perangkat lunak antara lain dapat dijabarkan sebagai berikut:
Menghasilkan sebuah perangkat lunak yang berkualitas. Yang dimaksud dengan berkualitas dapat dilihat dari tiga sisi, sisi sponsor (individu atau organisasi yang telah mengeluarkan biaya dalam pembangunan perangkat lunak), sisi pemakai (siapapun yang menggunakan perangkat lunak tersebut), sisi maintainer /
modifier (yang memelihara dan memodifikasi perangkat lunak tersebut).
Tujuan kedua dari RPL adalah menghasilkan perangkat lunak dengan biaya yang efisien.
Sedangkan tujuan ketiga dari RPL adalah menghasilkan perangkat lunak tepat pada waktunya.
D. Kesimpulan
Prangkat lunak adalah Instruksi (program komputer) yang bila dieksekusi dapat menjalankan fungsi tertentu.
RPL adalah Penerapan pendekatan yang sistematis, disiplin, dan terukur untuk
pengembangan, operasi, dan pemeliharaan perangkat lunak
Tujuan RPL adalah adalah menghasilkan perangkat lunak tinggi, tepat waktu, berbiaya rendah, dan multiplatform.
dengan kinerja
E. Daftar Pustaka i. Rekayasa Perangkat Lunak Jilid I by Aunur R. Mulyanto
ii. Pressman, Roger. S. ”Software Engineering : A Practioner’s Approach.” 4th. McGrawhill. 1997 iii. http://www.wikipedia.org