BAB
II
PEMBAHASAN
2.1 PENGERTIAN SOFTWARE ENGINEERING
Rekayasa perangkat
lunak merupakan sati disiplin ilmu yang bertujuan mengembangkan system
perangkat lunak yang efektif dari segi biaya. Perangkat lunak bersifat abstrak
dan tidak nyata. Perangkat lunak tidak terbuat dari unsur, mengikat hukum
fisika atau proses manufaktur. Dalam beberapa hal, kenyataan ini menyederhanakan
rekayasa perangkat lunak karena tidak ada pembatasan fisis terhadap potensi
perangkat lunak. Alam tetapi, dalam hal ini , tidak adanua batasan natural ini
berarti bahwa perangkat lunak dengan mudah dapat menjadi sangat kompleks dan
dengan demikian sangat sulit dipahami.
Rekayasa perangkat
lunak masih meruoakan disiplin yang relative muda. Istilah rekayasa perangkat
lunak pertama kali diajukan pada tahun 1968 pada konferensi yang diselenggarakan
untuk membahas apa yang pada waktu itu disebut “krisis perangkat lunak”. Krisis
pernagjat lunak ini merupakan akibat langsubg dari lahirnya perangjat keras
kimputer generasi ketiga yang canggih ( pada waktu itu ). Kecanggihannya
membuat aplikasi computer yang belum terealisasi pada saat itu menjadi
proposisi yang layak. Perangkat lunak yang dihasilkan menjadi beberapa kali
lipat lebih besar dan lebih kompleks dari system perangkat lunak sebelumnya.
Pengalaman awal dalam
pembuatan system ini menunjukkan bahwa pendekatan informal terhadap
pengembangan perangkat lunak tidaklah cukup baik. Proyek biaya kadangkala
terlambat selama bertahun-tahun, proyek-proyek tersebut memakan biaya yang jayh
lebih besar dari pada yang pertama kali
diramalkan, tidak dapat diandalkan , silit untuk dipelihara, dan memiliki
kenrja yang buruk. Pengembangan perangkat lunak berada dalam keadaan krisis.
Biaya perangkat keras jatuh, sementara biaya perangkat lunak naik dengan cepat.
Diperlukan teknik dan metode baru untuk mengendalikan kompleksitas system
perangkat lunak yang besar.
Teknik ini menjadi
bagian dari rekayasa perangkat lunak dan sekarng digunakan secara luas walaupun
tidak secara universal. Namun demikian, masih terdapat masalah dalam
menghasilkan perangkat lunak kompleks yang dapat memenihi harapan user,
diselesaikan tepat waktu, dan relative murah. Banyak proyek perangkat lunak
yang masih bermasalah dan mengakibatkan beberapa komentator ( Preesman 1997 )
berpendapat bahwa rekayasa perangkat lunak berada dalam status kesulitan yang
kronis.
2.2 Pengertian perangkat Lunak
Banyak orang menyamakan
istilah perangkat lunak dengan program computer. Sesungguhnya, pandangan ini
terlalu dangkal, perangkat lunak tidak hanya mencakup program, tetapi juga
semua dokumentasi dan konfigurasi data yang berhubungan, yang diperlukan untuk
membuat agar program beroperasi dengan benar. System perangkat lunak biasanya
terdiri dari sejumlah program yang terpisah, file-file konfigurasi uang
digunakan untuk membuat program-program ini, dokumentasi user uang menjelaskan
bagaimana penggunaan system tersebut.
Rekayasa perangkat
lunak berrugas mengembangkan produk perangkat lunak, yaitu perangkat lunak yang
dapat dijual kepelanggan. Ada dua tipe produk perangkat lunak:
1.
Produk generic
Produk
ini meruoakan system stand-alone ( berdiri sendiri ) standar yang diproduksi
oleh organisasi pengembang dan dujual pada pasar terbuka kesiapapun yang bisa
membelinya. Kadangkala perangkat lunak ini disebut sebagai perangkat lunak
shrink-wrapped ( dikecilkan dan dikemas
), contoh jenis produk ini adalah database, pengolah kata ( world processor ),
paket untuk menggambar, dan alat bantu managemen proyek.
2.
Produk pesanan ( yang disesuaikan)
Produk
pesanan ini merupakan system-sistem yang dipesan oleh pelanggan tertentu.
Perangkat lunak dikembangkan khisis bagi pelanggan tersebut oleh kontraktor
perangkat lunak. Beberapa contoh khusus perangkat lunak jenis ini adalah system
control untuk peranti elektronik, system yang ditulis untuk mendukung proses
bisnis tertentu, dan system control lalu lintas udara.
2.3
Pengertian perangkat lunak
Rekayasa perangkat lunak adalah disiplin
ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal
spesifikasi system sampai pemeliharaan system setelah digunakan. Pada definisi
ini ada dua istilah kunci:
1. Disiplin
rekayasa, perekayasa membuat suatu alat kerja. Mereka menerapkan teori metode
dan alat bantu yang sesuai, selain itu mereka menggunakannya dengan selektif
dan selalu mencoba mencari solusi terhadap permasalahan walaupun tidak ada
teori atau metode yang mendukung. Perekayasa juga menyadari bahwa mereka harus
bekerja dalam batasan organisasi dan keuangan, sehingga mereka berusaha mencari
solusi dalam batasan-batasan ini.
2. Semua
aspek produksi perankat lunak, rekayasa perangkat
lunak tidak hanya berhubungan dengan proses tekis dari pengembangan perangkat
lunak tetapi juga dengan kegiatan seperti manajemen proyek perangkat lunak dan
pengembangan alat bantu, metode, dan teori untuk mendukung produksi perangkat
lunak.
2.4
Perbedaan antara rekayasa perangkat
lunak dengan computer science
Pada intinya computer
science berhubungan dengan teori dan metode yang mendasari system komputer dan
perangkat lunak, sedangkan rekayasa perangkat lunak berhubungan dengan
masalah-masalah praktis dalam memproduksi perangkat lunak. Pengetahuan tentang
komputer science sangat penting bagi perekayasa perangkat lunak, sama seperti
pengetahuan tentang fisika sangat penting bagi teknis listrik.
Idealnya seluruh
rekayasa perangkat lunak harus didasari oleh teori computer science, tetapi
pada kenyataannya tidak demikian. Perekayasa perangkt lunak tidak jarang
terpaksa menggunakan pendekatan ad hoc untuk mengembangkan perangkat lunak.
Teori komputer science yang elegan tidak selalu dapat diterapkan pada masalah
nyata, yakni masalah kompleks membutuhkan solusi perangkat lunak.
2.5
Perbedaan antara rekayasa perangkat
lunak dengan rekayasa system
Rekayasa system atau lebih tepatnya
rekayasa system berbasis komputer, berhubungan dengan semua aspek pengembangan
dan evolusi system kompleks dimana semua perangkat lunak memainkan peran utama.
Dengan demikian, rekayasa system berkenaan dengan pengembangan perangkat keras,
perancangan kebijakan dan proses, dan penyebaran system sebagaimana pada
rekayasa perangkat lunak.
2.6
pengertian proses perangkat lunak
proses perangkat lunak adalah
serangkaian kegiatan dan hasil-hasil relevannya yang menghasilkan perangkat
lunak. Kegiatan-kegiatan ini sebagian dilakukan oleh perekayasa perangkat
lunak. Ada empat kegiatan proses dasar yang umum bagi seluruh kegiatatan proses
perangkat lunak. Kegiatan-kegiatan ini adalah:
1. spesifikasi
perangkat lunak. Fungsionalitas perangkat lunak dan batasan kemampuan
operasinya harus di operasikan.
2. Pengembangan
perangkat lunak. Perangkat lunak yang memenuhi spesifikasi tersebut harus
diproduksi.
3. Validasi
perangkat lunak. Perangkat lunak harus divalidasi untuk menjamin bahwa
perangkat lunak melakukan apa yang diinginkan oleh pelanggan.
4. Evolusi
perangkat lunak. Perangkat lunak harus berkembang untuk memenuhi kebutuhan
pelanggan yang berubah-ubah.
Proses perangkat lunak
yang berbeda mengatur kegiatan ini dengan cara yang berbeda dan dijelaskan
dengan tingkat kerincian berbeda pula. Waktu kegiatan bervariasi, sebagaimana
hasilnya. Pengaturan yang berbeda dapat menggunakan proses yang berbeda untuk
menghasilkan produk dengan jenis yang sama. Namun demikian, untuk beberapa
jenis aplikasi tertentu, beberapa proses yang lebih sesuai dari yang lain nya . jika digunakan
proses yang tidak sesuai, maka kualitas kegunaan produk perangkat lunak yang
akan dikembangkan tersebut mungkin akan berkurang.
2.7
pengertian model proses perangkat lunak
model proses perangkat lunak merupakan
deskripsi yang disederhanakan dari proses perangkat lunak yang dipresentasikan
dengan sudut pandang tertentu. Model sesuai sifatnya, merupakan penyederhanaan
sehingga model proses perangkat lunak merupakan abstraksi dari proses
sebenarnya yang dideskripsikan. Model proses bisa mencakup kegiatan yang
merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran
orang yang terlibat pada rekayasa perangkat lunak.
No comments:
Post a Comment