Pengertian
Rekayasa Perangkat Lunak
Pada tahun 1969 Fritz Bauer memberikan definisi
rekayasa perangkat lunak adalah sebagai berikut :
“The establishment and use of sound engineering principles in
order to obtain economically software that is reliable and work efficiently on
real machines.”
Hampir setiap pembaca
tergoda untuk menambah sendiri definisi tersebut, karena definisi tersebut
hanya menyinggung sedikit saja tentang aspek teknis dan kualitas perangkat
lunak, dan tidak secara langsung menyinggung kebutuhan dan kepuasan pelanggan,
pengabaikan pencamtuman pentingnya pengukuran dan matriks, tidak menyinggung pentingnya
sebuah proses. Apakah sound enginnering
aplication yang dapat diaplikasikan kepada pengembangan komputer? Bagaimana
kita secara ekonomis membangun perangkat lunak sehingga menjadi dapat
diandalkan dan reliable? Apakah yang dibutuhkan untuk menciptakan program
komputer yang bekerja secara efisien pada lebih dari satu mesin riril yang
berbeda? Pertanyaan-pertanyaan ini masih terus menjadi tantangan bagi
pengembangan perangkat lunak.
Pada tahun 1985 Richard Fairly mendefinisikan rekayasa
perangkat lunak sebagai berikut :
“The technological and managerial dicipline
concernment with systematic production and maintenance of software products
that are developed and modified on time and within cost estimates.”
Definisi ini
sudah menyinggung aspek teknis pengembangan perangkat lunak, pengelolaan tim
yang terlibat dalam pengembangan tersebut, pemeliharaan perangkat lunak yang
telah dikembangkan, serta waktu serta biaya pengem-bangan.
Kemudian pada tahun 1993,
IEEE mengembangkan definisi yang lebih komprehensif yaitu sebagai berikut :
Rekayasa perangkat lunak
adalah : (1) Aplikasi dari sebuah pendekatan kuantifiabel, disiplin, dan
sistematis terhadap pengembangan, operasi, dan pemeliharaan perangkat lunak;
yaitu aplikasi dan rekayasa perangkat lunak; (2) Studi tentang
pendekatan-pendekatan tentang (1).
Lingkup Rekayasa Perangkat Lunak
Lingkup rekayasa perangkat lunak bisa digambarkan seperti
Gambar 1.5. Rekayasa perangkat lunak merupakan suatu kegiatan untuk
menghasilkan suatu produk, sehingga harus berada pada satu komitmen dasar
menuju kualitas. Untuk itu fokus kualitas menjadi batu landasanya. Lingkup
kedua adalah proses. Proses-proses rekayasa perangkat lunak adalah perekat yang
menjaga bentangan teknologi secara bersama-sama dan memungkinkan perkembangan
perangkat lunak yang tepat waktu dan rasional. Proses-proses tersebut membatasi
kerangka kerja untuk serangkaian area proses kunci yang harus dibangun demi
keefektifan penyampaian teknologi pengembangan perangkat lunak. Area proses
kunci ini membentuk dasar bagi kontrol manajemen proyek pengembangan perangkat
lunak serta membangun kontek dimana metode teknis diaplikasikan sehingga sebuah
produk yang berkualitas bisa dihasilkan
Evolusi
Perangkat Lunak.
Pada awal tahun
1990-an Toffler menggambarkan adanya pergeseran kekuatan dimana struktur
kekuatan lama (pemerintah, pendidikan, industri, dan militer) mengalami
disintegrasi ketika komputer membawa ke arah demikratisasi pengetahuan.
Sedangkan pada tahun 1992 Yourdon mengkawatirkan perusahaan-perusahaan Amerika
akan kehilangan sisi kompetitif mereka di dalam bisnis yang berhubungan dengan
perangkat lunak dan meramalkan penurunan serta jatuhnya para pemrogram Amerika.
Tahun 1993 Hammer dan Champy berpendapat bahwa teknologi informasi akan
memainkan peranan sentral dalam pengembangan kerjasama. Pada pertengahan tahun
1990 daya tembus komputer dan perangkat lunak menimbulkan banyak pendapat bahwa
komputer menekankan sisi legitimasi tetapi mengabaikan keuntungan besar yang
diperoleh.
Perkembangan
perangkat lunak bisa digambarkan pada Gambar 1.4. Pada masa awal era komputer,
perangkat lunak dilihat hanya sebagai suatu permenungan. Pemrogram komputer
menjadi sebuah seni “seat-of-pants” dimana di situ terdapat beberapa metode
yang sistematis. Perkembangan perangkat lunak sebenarnya tidak bisa diatur
sampai terjadi jadwal yang bergeser, atau biaya yang mulai melonjak. Para
pemrogram kemudian berusaha untuk membuat semuanya benar kembali, dan dengan
cara yang heroik akhirnya mereka berhasil. Pada masa itu perangkat lunak
dirancang secara khusus untuk aplikasi tertentu saja dan hanya memiliki areal
distribusi yang terbatas. Produk perangkat lunak yang dijual kepada pelangan
atau masyarakat masih langka. Kebanyak dikembangkan dan digunakan oleh orang
atau organisasi yang sama, dibuat untuk dipakai sendiri. Era kedua evolusi sistem
komputer antar pertengahan tahun 1960 dan 1970-an. Sistem multiprogram dan
multiuser memperkenalkan konsep baru interaksi manusia dan mesin. Teknik
interaktif membuka sebuah dunia aplikasi yang baru serta tingkat kecanggihan
perangkat lunak dan perangkat keras yang baru pula. Sistem real-time mampu melakukan pengontrolan dalam menghasilkan output
tidak lagi dalam skala menit, melainkan detik. Kemajuan dalam penyimpanan on-line membawa ke generasi pertama sistem
mamajemen database. Pada era kedua ini
juga ditandai dengan kehadiran software-house.
Produk perangkat lunak didistribusikan ke pasar yang lebih luas dan
multidisiplin. Program mainframe dan minikomputer didistribusikan kepada
masyarakat luas. Pengusaha, pemerintah, industri, serta akademisi masing-masing
mengembang-kan paket perangkat lunak paling mewah dengan mengeruk banyak uang
Aplikasi
Perangkat Lunak
Perangkat lunak
dapat diaplikasikan ke berbagai situasi dimana serangakaian langkah prosedural
(seperti algoritma) telah didefinisikan. Kandungan (content) dan determinasi
informasi merupakan faktor penting dalam menentukan sifat aplikasi perangkat
lunak. Content mengarah pada arti dan
bentuk informasi yang masuk dan keluar. Misalnya, banyak aplikasi bisnis
memakai data input dengan struktur data lebih tinggi (misal database) dan
mengahasilkan laporan yang sudah terformat. Perangkat lunak yang mengontrol mesin
otomatis menerima bentuk data diskrit dengan struktur yang terbatas dan
menghasulkan perintah mesin individual dalam ekskusi yang cepat. Sedangkan determinasi informasi merujuk pada
predikbilitas urutan dan timing informasi.
Berikut
beberapa jenis aplikasi perangkat lunak :
a. Perangkat
lunak sistem. Sekumpulan program untuk melayani program–program lain, misalnya
sistem operasi, kompiler, editor, utilitas pengatur file, driver, prosesor
telekomunikasi.
b. Perangkat
lunak real-time. Program-program untuk mengontrol/menganalisis/ memonitor
kejadian dunia nyata pada saat terjadinya. Misalnya program untuk mengontrol
mesin industri.
c. Perangkat
lunak bisnis. Program untuk pemrosesan informasi di dunia bisnis, mulai dari
payroll, account payable, inventory, post system, sampai perangkat lunak sistem
informasi manajemen yang bisa mengakses satu atau lebih database.
d. Perangkat
lunak teknik dan ilmu pengetahuan. Jangkauan aplikasinya meliputi, asmronomi,
vulkanologi, kedokteran, analisis otomotif, biologi, mesin-mesin pabrik, sampai
pada perangkat bantu dalam perancangan (computer aided design) untuk konstuksi
bangunan, komponen elektronik, rancangan mesin, simulasi sitem, dan lain-lain.
e. Embeded
Software. Program yang disertakan dalam suatu perangkat dan berfungsi untuk mengontrol
hasil serta sistem perangkat tersebut. Contoh : key pad control untuk microwave,
fungsi digital pada automobil (pengontrol bahan bakar, penampilan dash board,
sistem rem, dll).
f. Perangkat
lunak komputer personal. Program–program yang bisa dijalankan pada komputer
personal. Contoh : pengolah kata, multimedia, hiburan, manajemen database,
aplikasi keuangan bisnis, dll.
g. Perangkat
lunak kecerdasan buatan dan jaringan syaraf tiruan. Sistem pakar atau disebut
juga sistem berbasis pengetahuan. Program yang digunakan untuk
menggerakkan/mengontrol robot, permainan game, pengolah gambar dan pola (image
dan voice).
Untuk Materi Lengkapnya silahkan download dibawah, jangan lupa komentar yah
0 comments:
Post a Comment