Kamis, 16 Februari 2023

Konsep Rekayasa Perangkat Ulang

Rekayasa Perangkat Lunak (RPL)

Rekayasa Perangkat Lunak adalah prinsip sekaligus teknik mendesain perangkat lunak yang mudah digunakan dan tepat guna. Jadi, RPL adalah bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembangan perangkat lunak dan manajemen kualitas. 

Dalam pengembangan perangkat lunak skala besar tidak bisa dikerjakan Oleh satu orang saja oleh karena itu diperlukan kerja sama tim yang baik agar pengembangan dapat berjalan lancar sesuai rencana oleh karena itu diperlukanlah teknik-teknik RPL. RPL diperlukan pada pengembangan perangkat lunak dengan skala besar dan sedang. Teknik-teknik RPL dalam pengembangan perangkat lunak secara garis besar yaitu:

  • Spesifikasi perangkat lunak
  • Pengembangan perangkat lunak
  • Validasi perangkat lunak
  • Evolusi perangkat lunak
Tujuan Rekayasa Perangkat Lunak tidak berbeda dengan bidang rekayasa yang lain. Bidang rekayasa akan selalu berusaha menghasilkan output yang kinerjanya tinggi waktu penyelesaian yang tepat dan Berbiaya rendah. Secara lebih khusus kita dapat menyatakan tujuan RPL adalah sebagai berikut:
  • Menghasilkan perangkat lunak yang kinerjanya tinggi, andal serta tepat waktu.
  • Memperoleh biaya produksi perangkat lunak yang rendah.
  • Menghasilkan perangkat lunak yang biaya perawatan rendah.
  • Menghasilkan perangkat lunak yang bisa bekerja di berbagai jenis platform.

Ruang Lingkup Rekayasa Perangkat Lunak: 


  • Software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak
  • Software desain mencakup proses penampilan arsitektur, komponen, antar muka, dan karakteristik 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
  • Software configuration management berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu
  • Software engineering management berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak
  • Software engineering tools and methods mencakup kajian teoritis tentang alat bantu dan metode RPL
  • Software engineering process berhubungan dengan definisi, implementasi pengukuran, pengelolaan, perubahan dan perbaikan proses RPL
  • Software quality menitik beratkan pada kualitas dan daur hidup perangkat lunak

Proses Perangkat Lunak adalah sarangkaian kegiatan dan hasil-hasil relevan yang menghasilkan perangkat lunak sebagian besar dilakukan oleh perekayasa perangkat lunak. Ada 4 kegiatan pada proses perangkat lunak: 

  • Spesifikasi
Apa yang harus dilakukan oleh perangkat lunak dan batasan/kendala pengembangannya. Dengan tujuan untuk menetapkan layanan apa yang dituntut dari sistem dan batasan pada operasi serta pengembangan sistem.
  • Pengembangan
Adalah perancangan dan implementasi perangkat lunak, perangkat lunak yang memenuhi spesifikasi harus diproduksi.
  • Validasi
Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak bekerja sesuai dengan apa yang diinginkan oleh pelanggan
  • Evolusi 

Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan.

Perbedaan Software Engineering dengan Software Development

Software engineer memiliki tugas penting dalam monitoring proses pengembangan software. Sedangkan software developer lebih fokus dalam pembuatan program yang dapat bekerja dengan baik. Dengan kata lain, perbedaan utama dari software engineer dan software developer adalah software developer hanya berfokus pada satu area saja. Salah satunya adalah membangun kode. Sedangkan software engineer adalah orang yang merancang, merencanakan, dan mengimplementasikan prinsip engineering ke pengembangan software. Software engineer juga harus memantau keseluruhan proyek dan meng-handle area yang lebih luas. Perbedaan yang paling menonjol adalah software engineer fokus mengawasi, sedangkan developer fokus membangun program yang fungsional.

Ada 8 prinsip profesional software engineering yang di buat oleh ACM/ICEE-CS (Asosiasi Profesi), delapan prinsip tersebut adalah:

  • Public atau Masyarakat, artinya perekayasa perangkat lunak atau seorang insinyur software harus bertindak secara konsisten sesuai dengan kepentingan masyarakat.
  • Client and Employer atau Klien dan Atasan, artinya seorang perekayasa perangkat lunak harus melakukan yang terbaik bagi klien dan atasan mereka dan tetap konsisten dengan kepentingan masyarakat.
  • Product atau Produk, artinya perekayasa perangkat lunak akan menjamin bahwa produk mereka dan modifikasi yang mereka lakukan terhadapnya memenuhi standar profesional setinggi tingginya.
  • Judgment atau Penilaian, artinya perekayasa perangkat lunak akan mempertahankan integritas dan independensi penilaian profesional mereka.
  • Management atau Manajemen, artinya manajer dan perangkat lunak akan mengikuti dan mempromosikan pendekatan etis terhadap manajemen pengembangan dan pemeliharaan perangkat lunak.
  • Profession atau Profesi, artinya perekayasa perangkat lunak akan mementingkan integritas dan reputasi profesi konsisten dengan kepentingan masyarakat.
  • Collegues atau Kolega, artinya perekayasa perangkat lunak harus bersikap adil dan mendukung terhadap koleganya.
  • Self atau Diri Sendiri, artinya perekayasa perangkat lunak akan berpartisipasi dalam pembelajaran seumur hidup mengenai praktek profesi mereka dan akan mempromosikan pendekatan etis terhadap praktek profesi tersebut.


Kesimpulan

Rekayasa Perangkat Lunak adalah prinsip sekaligus teknik mendesain perangkat lunak yang mudah digunakan dan tepat guna. Jadi, RPL adalah bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembangan perangkat lunak dan manajemen kualitas.  RPL memiliki tujuan seperti, Menghasilkan perangkat lunak yang kinerjanya tinggi, andal serta tepat waktu, memperoleh biaya produksi perangkat lunak yang rendah, menghasilkan perangkat lunak yang biaya perawatan rendah, menghasilkan perangkat lunak yang bisa bekerja di berbagai jenis platform.

Software Engineering dengan Software Development adalah berbeda Software engineer memiliki tugas penting dalam monitoring proses pengembangan software. Sedangkan software developer lebih fokus dalam pembuatan program yang dapat bekerja dengan baik.


Resource :

https://repository.penerbitwidina.com/publications/410361/rekayasa-perangkat-lunak

https://www.markijar.com/2016/01/pengertian-tujuan-dan-ruang-lingkup.html

https://tophanakbar.wordpress.com/2014/08/13/ruang-lingkup-rpl/

https://www.gamelab.id/news/1817-jangan-sampai-tertukar-ini-perbedaan-software-engineer-dan-software-developer

https://proyeksoftware.blogspot.com/2016/10/software-engineering-code-of-ethics.html

Tidak ada komentar:

Posting Komentar

Analisis dan Design PL

Structured System Analisys and Design  (SSAD) atau Analisis dan Desain Sistem Terstruktur adalah salah satu metodologi dalam mengembangkan ...