Definisi dan Model Proses dalam Rekayasa Perangkat Lunak

  • 0
Rekayasa Perangkat Lunak (software engineering) adalah pembangunan dengan menggunakan prinsip atau konsep rekayasa dengan tujuan menghasilkan perangkat lunak yang bernilai ekonomi yang dipercaya dan bekerja secara efisien menggunakan mesin.

Rekayasa Perangkat Lunak bisa disebut juga sebagai pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna.

“Rekayasa perangkat lunak adalah sebuah studi dan aplikasi dari sebuah pendekatan kuantifiabel, disiplin, dan sistematis kepada pengembangan, operasi dan pemeliharaan perangkat lunak yang kesemuanya itu merupakan aplikasi rekayasa yang berkaitan dengan perangkat lunak.” -IEEE 610.12


“Rekayasa perangkat lunak adalah pengemangan dan penggunaan prinsip rekayasa dalam rangka memperoleh perangkat lunak yang dapat dipercaya dan dapat bekerja serta efisien pada mesin nyata.” -Fritz Bauer

“Rekayasa perangkat lunak adalah sebuah disiplin dimana dalam menghasilkan perangkat lunak bebas dari kesalahan dan dalam pengiriman anggaran dapat tepat waktu serta memuaskan keinginan pemakai.” -Stephen R. Schach


Model Proses dalam Rekayasa Perangkat Lunak

1. Model Waterfall

Pada model Waterfall atau disebut model air terjun, ada beberapa fase yang harus kita terapkan, yaitu:

  1. Analisis kebutuhan lalu pendefenisiannya
  2. Perancangan Sistem dan Perangkat lunaknya
  3. Implementasi dan unit testing
  4. Integrasi dan pengujian sistem
  5. Pengoprasian dan persawatan

Dimana sebuah proses akan kembali ke state sebulumnya agar tidak ada perubahan setelah proses menuju state di bawahnya sebab sangat sulit. Setiap model pasti ada kekurangan dan kelebihan, dan berikut merupakan kekurangan dan kelebihan dari model Waterfall :

Kekurangan Model Waterfall:

  • Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses.
  • Hal ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna (user).
  • Model air terjun harus digunakan hanya ketika persyaratan dipahami dengan baik.

Kelebihan Model Waterfall:

  • Bisa digunakan jika suatu persyaratan untuk membuat suatu software sudah dipahami dengan baik dan sudah lengkap semua persyaratan yang ada.


2. Model RAD

Rapid Aplication Model (RAD) adalah sebuah proses perkembangan perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen.

Kelebihan Penggunaan Model RAD

  • Dimungkinkan dalam proses pembuatan membutuhkan waktu yang sangat singkat (60-90 hari).
  • Menghemat biaya, karena penekannya adalah penggunaan komponen-komponen yang sudah ada.
  • RAD menggunakan kembali komponen-komponen yang sudah ada, maka beberapa komponen program sudah diuji sehingga kita dapat melakukan penghematan waktu dalam uji coba.

Kekurangan Penggunaan Model RAD
Seperti semua proses model yang lain, pendekatan RAD memiliki kekurangan-kekurangan sebagi berikut :

  • Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.
  • RAD menuntut pengembangan dan pelanggan yang memiliki komitmen di dalam aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal. RAD menekankan perkembangan komponen program yang bisa dipakai kembali. Reusable menjadi batu pertama teknologi objek dan ditemui di dalam proses rakitan komponen
  • Tidak semua aplikasi sesuai untuk RAD. Bila sistem tidak dapat dimodulkan dengan teratur, pembangunan komponen penting pada RAD akan menjadi sangat problematis.
  • RAD menjadi tidak sesuai jika risiko teknisnya tinggi. Hal ini terjadi bila sebuah aplikasi baru memforsir teknologi baru atau bila perangkat lunak baru membutuhkan tingkat interoperabilitas yang tinggi dengan program komputer yang ada.


3. Model Prototyping

Metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem informasi yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau digabungkan dengan sistem informasi yang lain bila perlu.

Keunggulan Prototyping:

  • User dapat berpartisipasi aktif
  • Penentuan kebutuhan lebih mudah diwujudkan
  • Mempersingkat waktu pengembangan SI

Kelemahan Prototyping :

  • Proses analisis dan perancangan terlalu singkat
  • Mengesampingkan alternatif pemecahan masalah
  • Bisanya kurang fleksible dalam mengahadapi perubahan
  • Prototype yang dihasilkan tidak selamanya mudah dirubah
  • Prototype terlalu cepat selesai


4. Model Spiral

Model ini cukup baru ditemukan,yaitu tahun 1988 oleh Barry Boehm. Spiral adalah salah satu bentuk evolusi yang menggunakan metode iterasi natural yang dimiliki oleh model prototyping dan digabungkan dengan aspek sistematis yang dikembangkan model waterfall.

Kelebihan model Spiral :

  • Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
  • Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
  • Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.

Kelemahan model Spiral:

  • Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
  • Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
  • Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.


5. Model Incremental

Model Incremental dalam rekayasa perangkat lunak, menerapkan rekayasa perangkat lunak perbagian, hingga menghasilkan perangkat lunak yang lengkap. Proses membangun berhenti jika produk telah mencapai seluruh fungsi yang diharapkan.

Kelebihan Incremental :

  • Kebutuhan pengguna / customer dipenuhi pada setiap bagian yang selesai terlebih dahulu 
  • Bagian yang selesai terlebih dahulu menjadi prototipe 
  • Resiko rendah 
  • Bagian yang punya prioritas tertinggi dapat dites secara intensive 

Kekurangan Incremental

  • Permasalahan
  • Batasan proses tidak jelas
  • Sistem kurang terstruktur
  • Kemampuan aplikasi
  • Untuk sistem dengan interaksi skala kecil dan medium
  • Untuk antarmuka user
  • Untuk sistem dengan masa penggunaan pendek


Referensi

https://tintasaya.wordpress.com/rekayasa-perangkat-lunak/proses-rekayasa-perangkat-lunak/
http://aryapramana.blogspot.com/2011/09/model-proses-rekayasa-perangkat-lunak.html
http://www.bambanghariyanto.com/2012/06/pengertian-rekayasa-perangkat-lunak.html
http://malikah-tutik.blogspot.com/2013/03/model-proses-rekayasa-perangkat-lunak.html
http://id.wikipedia.org/wiki/Rekayasa_perangkat_lunak
http://denyhermawan92.blogspot.com/2013/04/pengertian-internet.html
http://komandankempong.blogspot.com/2011/09/model-proses-rekayasa-perangkat-lunak.html

Tidak ada komentar:

Posting Komentar