Catatan Seorang Prajurit Kecil

Ikon

biarlah semua itu berjalan sesuai "skenario" NYA – jika kau telusuri, semua logika itu akan kau temukan

Rekayasa Perangkat Lunak – (Bagian 1)


Udah lama ga nge post, disibukan oleh kerjaan kantor yang terus bertambah…;-) tapi pengen maksain untuk nge post, ya udah jadinya tugas kuliah di posting disini, yah..itung-itung sharing juga, takutnya apa yang saya tulis keliru atau sedikit sesat alias menyimpang…;-)… ya udah langsung aja…

Perangkat lunak merupakan salah satu sistem terkompleks yang pernah dibuat oleh manusia. Dalam sejarahnya hingga saat paper ini ditulis, perangkat lunak sudah mengalami banyak perubahan dan kemajuan baik dari segi metodologi pengembangan, model pengembangan, paradigma pengembangan maupun ruang lingkup dari perangkat lunak itu sendiri. Sebagai contoh: sebelum era tahun 90 an, para pengembang perangkat lunak menggunakan metodologi terstruktur (Pressman menyebutkan metodologi ini sebagai metodologi konvensional) dalam membangun perangkat lunak, metodologi ini menuntut para pengembang perangkat lunak menggunakan paradigma terstruktur dimana sudut pandang pengembang difokuskan kepada proses dan algoritma penyelesaian masalah, namun setelah era tahun 90 an, paradigma orientasi objek di populerkan, dimana paradigma ini menggunakan sudut pandang pengembangan perangkat lunak yang memandang segala sesuatu sebagai objek yang memiliki attribute dan metode. Paradigma dan metodologi berorientasi objek telah terbukti mampu dalam memberikan solusi untuk proyek pengembangan perangkat lunak baik skala kecil, sedang maupun besar, sehingga banyak pengembang perangkat lunak (bahkan hampir seluruhnya) mengubah paradigma mereka dari paradigma konvensional menjadi paradigma berorientasi objek.

Dari segi produk yang dihasilkan, para pengembang perangkat lunak dituntut untuk bisa menghasilkan perangkat lunak yang mulai menggantikan peran manusia dalam melakukan pekerjaan sehari-hari, sebagai contoh perangkat lunak dalam ruang lingkup Artificial Intelligent (AI) yang sering kita lihat dalam lingkungan bisnis yaitu: Decision Support System (DSS), dimana dengan menggunakan perangkat lunak DSS, seorang manager akan sangat terbantu bahkan digantikan perannya dalam mengambil sebuah keputusan, contoh: penentuan prestasi karyawan dengan menggunakan fuzzy logic, sehingga bisa didapatkan besarnya bonus yang harus diberikan atau naik turunya jabatan seorang karyawan.

Seiring dengan tuntutan akan permintaan perangkat lunak yang semangkin kompleks, maka dibutuhkan sebuah ilmu yang memberikan standar dalam pembangunan perangkat lunak, agar metode, prosedur, paradigma dan kebutuhan pengembangan lainnya bisa dilakukan secara sistematis dan terarah, ilmu ini sering disebut sebagai Rekayasa Perangkat Lunak atau Software Engineering, yang akan dibahas lebih dalam pada Bab 2.

Pengembangan perangkat lunak yang tidak menggunakan ilmu rekasaya perangkat lunak akan mengalami kesulitan baik dalam hal, testing, penggunaan, maintenance hingga pengembangan perangkat lunak kearah yang lebih kompleks, dimana akan menyebabkan biaya pengembangan perangkat lunak membengkak, waktu penyelesaian terlambat, kebutuhan konsumen (user) tidak bisa terpenuhi dan lain sebagainya. Sebagai gambaran berikut ini penulis sajikan grafik yang menginformasikan proses pembangunan perangkat lunak di dunia.

Sumber: GAO, quoted in CMU/SEI-93-EM-8

Dari informasi ini kita bisa menarik sebuah kesimpulan bahwa pengembangan perangkat lunak mengalami lebih banyak kegagalan dibandingkan kesuksesan, salah satu faktor penyebabnya adalah penggunaan rekayasa perangkat lunak yang tidak terstruktur dan sistematis.

Berikut ini paradigma-paradigma yang sering digunakan dalam melakukan pengembangan perangkat lunak (Bambang Hariyanto, 2004):

  1. Paradigma Konvensional
  2. Paradigma Berorientasi Objek
  3. Paradigma Metode Formal
  4. Paradigma Cleanroom
  5. Paradigma Berbasis Komponen

Sebelum mengarah ke pembahasan lebih jauh mengenai kelima paradigma diatas, sebelumnya penulis akan memberikan penjelasan perbedaan antara paradigma dan metodologi, karena banyak sekali para pengembang perangkat lunak keliru memahami kedua istilah ini. Bambang Hariyanto (2004) menjelaskan bahwa model atau metodologi pengembangan perangkat lunak memberikan kerangka bagi jalur yang harus dilalui aktivitas-aktivias pengembangan, sebagai contoh: waterfall, spiral, prototype dan lain sebagainya, sementara paradigma mengacu kepada cara pandang spesifik dalam usaha pencarian solusi, yaitu: menyagkut konseptualisasi permasalahan dan solusi, bukan berkaitan dengan urutan aktivitas penyelesaian.

Filed under: Software Engineering, , , , , , , ,

2 Responses

  1. […] About Me ← Rekayasa Perangkat Lunak – (Bagian 1) […]

  2. […] ini daftar referensi yang saya gunakan dalam menulis seri Rekayasa Perangkat Lunak dari 1, 2, 3 dan […]

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: