Konsep Rekayasa Perangkat Lunak


Definisi rekayasa perangkat lunak (English: Software Engineering) adalah bidang profesional yang mempelajari dan mempelajari pengembangan perangkat lunak, seperti pembuatan, pemeliharaan, perawatan, penyebaran, modifikasi, dan pengaksesan perangkat lunak yang ada agar menjadi lebih efektif dan efisien. 

I. Penjelasan, konsep, dan tujuan mengenai RPL

a. Penjelasan

    Menurut Fritz Bauer dalam buku Rekayasa Perangkat Lunak karya Ratna Wardani, rekayasa perangkat lunak ialah sebuah kegiatan yang menerapkan dan memanfaatkan prinsip-prinsip rekayasa untuk menghasilkan perangkat lunak yang ekonomis, andal, dan bekerja secara efisien pada mesin-mesin yang nyata.

b. Konsep RPL

    Konsep rekayasa perangkat lunak adalah salah satu bidang keilmuan atau profesi yang berfokus pada produksi dan pengembangan perangkat lunak.

c. Tujuan RPL

    Tujuan RPL diantaranya adalah:

    1. Memperoleh biaya produksi perangkat lunak yang rendah.

    2. Menghasilkan perangkat lunak yang memiliki cara kerja yang cepat dan tinggi, andal serta tepat waktu.

    3. Memproduksi perangkat lunak yang dapat bekerja pada berbagai jenis platform.

    4. Membuat perangkat lunak yang biaya perawatannya rendah.


II. Cakupan RPL

    Cakupan atau ruang lingkup rekayasa perangkat lunak mengacu pada definisi persyaratan dan persyaratan perangkat lunak. berurusan dengan rincian perangkat lunak, seperti algoritma, pengkodean, debugging, dan pengujian. Itu termasuk aktivitas pemeliharaan setelah perangkat lunak digunakan. 

    Rekayasa Perangkat Lunak sendiri memiliki ruang lingkup kerjanya masing-masing sebagai berikut:

    1. Software Requirements

    Berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak. 

    2. Software Design

    Meliputi proses penampilan arsitektur, komponen, antar muka, dan karakteristik lain dari perangkat lunak

    3Software Construction

    Berhubungan dengan detail pengembangan perangkat lunak, termasuk algoritma, pengkodean, pencarian kesalahan dan pengujian.

   4Software Testing

    Meliputi pengujian pada kinerja perangkat lunak secara keseluruhan

   5. Software Maintenance

    Mencakup upaya-upaya perawatan ketika perangkat lunak telah dioperasikan. 

   6Software Configuration Management

    Berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu.

   7. Software Engineering Management

    Berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak.

   8Software Engineering Tools and Methods

    Mencakup kajian teoritis tentang alat bantu dan metode RPL. 

    9. Software Quality

    Menitikberatkan pada kualitas dan daur hidup perangkat lunak.

   10Software Engineering Process

    Berhubungan dengan implementasi, definisi, pengukuran, pengelolaan, perubahan dan perbaikan proses Rekayasa Perangkat Lunak.


III. Proses Perangkat Lunak

    Menurut Wikipedia, proses pengembangan perangkat lunak (English: software development process) adalah struktur yang diterapkan pada pengembangan perangkat lunak, yang bertujuan untuk mengembangkan sistem dan memberikan arahan yang bertujuan untuk menyukseskan serta menyelesaikan proyek pengembangan sistem langkah demi langkah. Contoh model proses pengembangan PL diantaranya adalah proses iteratif, extreme programming, serta proses air terjun (waterfall).


IV. Software Engineering Tidak Sama Dengan Software Development

    Software Engineering adalah orang yang bertanggung jawab untuk merancang, mengembangkan, memelihara, menguji, dan mengevaluasi perangkat lunak.

    Software Development adalah orang yang bertanggung jawab untuk membuat perangkat lunak atau aplikasi sesuai dengan persyaratan, menganalisis persyaratan perangkat lunak, dan memutuskan langkah-langkah spesifik desain perangkat lunak.

    Sepintas sama, namun keduanya berbeda. Analoginya seperti seorang Software Engineering adalah seorang arsitek sementara seorang Software Development adalah seorang tukang kayu. Sehingga keduanya memiliki korelasi yang erat. 

    Dari uraian di atas, dapat disimpulkan bahwa Software Engineering memegang peranan penting dalam mengontrol proses pengembangan perangkat lunak. Pada saat yang sama, Software Development lebih fokus untuk membuat aplikasi fungsional.

    Dengan kata lain, perbedaan utama antara Software Engineering dan Software Development adalah Software Development hanya fokus pada satu area. Salah satunya adalah membangun kode (coding).

    Seorang Software Engineering adalah orang yang merencanakan, mendesain, dan mengimplementasikan prinsip-prinsip desain perangkat lunak. Software Engineering juga harus mengawasi keseluruhan proyek dan menangani area yang lebih luas.

    Perbedaan yang paling terlihat adalah bahwa Software Engineering fokus pada pemantauan, sementara Software Engineering fokus pada pembuatan program fungsional. 


V. 8 Prinsip Profesional Software Engineering

Terdapat delapan prinsip profesional software engineering yang dibuat oleh ACM/ICEE-CS (Asosiasi Profesi), kedelapan prinsip tersebut di antaranya adalah adalah:

    1. Public atau Masyarakat

    Maknanya perekayasa perangkat lunak atau seorang insinyur software harus bertindak secara konsisten sesuai dengan kepentingan masyarakat.

    2. Client and Employer atau Klien dan Atasan

    Maknanya seorang perekayasa perangkat lunak harus melakukan yang terbaik bagi klien dan atasan mereka dan tetap konsisten dengan kepentingan masyarakat.

    3. Product atau Produk 

    Maknanya perekayasa perangkat lunak akan menjamin bahwa produk mereka dan modifikasi yang mereka lakukan terhadapnya memenuhi standar profesional setinggi tingginya.

    4. Judgment atau Penilaian

    Maknanya perekayasa perangkat lunak akan mempertahankan integritas dan independensi penilaian profesional mereka.

    5. Management atau Manajemen

    Maknanya manajer dan perangkat lunak akan mengikuti dan mempromosikan pendekatan etis terhadap manajemen pengembangan dan pemeliharaan perangkat lunak.

    6. Profession atau Profesi

    Maknanya perekayasa perangkat lunak akan mementingkan integritas dan reputasi profesi konsisten dengan kepentingan masyarakat.

    7. Collegues atau Kolega 

    Maknanya perekayasa perangkat lunak harus bersikap adil dan mendukung terhadap koleganya.

    8. Self atau Diri Sendiri

    Maknanya perekayasa perangkat lunak akan berpartisipasi dalam pembelajaran seumur hidup mengenai praktek profesi mereka dan akan mempromosikan pendekatan etis terhadap praktek profesi tersebut.


VI. Kesimpulan

Konsep rekayasa perangkat lunak memainkan peran yang sangat penting dalam proses pengembangan perangkat lunak (software development). Dalam pengembangan perangkat lunak apapun, langkah pertama yang paling utama adalah mengidentifikasi kebutuhan. Jika tujuan awal dari pengembangan sistem sudah tidak jelas, maka dapat dipastikan yang perencanaan terjadi akan kacau. Akibatnya, sangat tidak mungkin untuk dapat membangun sistem yang akan bekerja dan memuaskan penggunanya.




Penulis: Muhammad Fathur Rizqi (D1041221020) - Mahasiswa Semester 2 Teknik Informatika Untan

Disunting pada: Rabu, 15 Februari 2023


Sumber dan Referensi: 

Kumparan - Rekayasa Perangkat Lunak: Pengertian, Tujuan, dan Elemen Penting: https://kumparan.com/kabar-harian/rekayasa-perangkat-lunak-pengertian-tujuan-dan-elemen-penting-1wyPk4NIZP0/2 (diakses 15 Februari 2023)

Universitas123 - Konsep rekayasa perangkat lunak: https://www.universitas123.com/news/konsep-rekayasa-perangkat-lunak# (diakses 15 Februari 2023)

Marjikar - Pengertian, Tujuan dan Ruang Lingkup Rekayasa Perangkat Lunak (RPL): https://www.markijar.com/2016/01/pengertian-tujuan-dan-ruang-lingkup.html# (diakses 15 Februari 2023)

Wikipedia Indonesia - Proses pengembangan perangkat lunak: https://id.wikipedia.org/wiki/Proses_pengembangan_perangkat_lunak# (diakses 15 Februari 2023)

Gamelab - Jangan Sampai Tertukar, Ini Perbedaan Software Engineer dan Software Developer: https://www.gamelab.id/news/1817-jangan-sampai-tertukar-ini-perbedaan-software-engineer-dan-software-developer# (diakses 15 Februari 2023)

Proyek Perangkat Lunak - Software Engineering Code of Ethics: https://proyeksoftware.blogspot.com/2016/10/software-engineering-code-of-ethics.html (diakses 15 Februari 2023)

Tag: Rekayasa Perangkat Lunak, Software, definisi rpl, engineering


0 comments:

Post a Comment

Popular Posts

Fathur Network

Halo semuanya, di sini saya membuat artikel

Translate

Visitors

Like This Page

Todays Date

Cool Blue Outer Glow Pointer