RPL

  

Pengertian:

Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan manajemen kualitas.

IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak.

rekayasa perangkat lunak adalah 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.

Sejarah:

Ketika komputer digital pertama muncul pada awal 1940-an, instruksi untuk membuatnya beroperasi terhubung ke mesin. Praktisi dengan cepat menyadari bahwa desain ini tidak fleksibel dan muncul dengan "arsitektur program yang tersimpan" atau arsitektur von Neumann.
Dengan demikian pembagian antara "perangkat keras" dan "perangkat lunak" dimulai dengan abstraksi yang digunakan untuk menghadapi kompleksitas komputasi.

Bahasa pemrograman mulai muncul pada awal tahun 1950 dan ini juga merupakan langkah besar dalam abstraksi. Bahasa utama seperti Fortran, ALGOL,
dan COBOL dirilis pada akhir 1950-an untuk menangani masalah ilmiah, algoritmik, dan bisnis masing-masing. David Parnas memperkenalkan konsep kunci modularitas dan informasi yang bersembunyi pada tahun 1972 untuk membantu programmer menangani kompleksitas sistem perangkat lunak yang semakin meningkat.

Asal-usul istilah "rekayasa perangkat lunak" telah dikaitkan dengan berbagai sumber. Istilah "rekayasa perangkat lunak" muncul dalam daftar layanan yang ditawarkan oleh perusahaan dalam edisi Juni 1965 tentang KOMPUTER dan OTOMASI dan digunakan secara lebih formal dalam Komunikasi ACM edisi Agustus 1966 (Volume 9, nomor 8)  "surat kepada keanggotaan ACM" oleh Presiden ACM Anthony A. Oettinger; [14], itu juga dikaitkan dengan judul konferensi NATO pada tahun 1968 oleh Profesor Friedrich L. Bauer, konferensi pertama pada rekayasa perangkat lunak. Pada saat itu dianggap sebagai "krisis perangkat lunak".
 Konferensi Internasional ke-40 tentang Rekayasa Perangkat Lunak (ICSE 2018) merayakan 50 tahun "Rekayasa Perangkat Lunak" dengan ceramah Plenary Sessions tentang Frederick Brooks dan Margaret Hamilton. 

Pada tahun 1984,
Institut Teknik Perangkat Lunak (SEI) didirikan sebagai pusat penelitian dan pengembangan yang didanai pemerintah federal yang berkantor pusat di kampus Carnegie Mellon University di Pittsburgh, Pennsylvania, Amerika Serikat. Watts Humphrey mendirikan Program Proses Perangkat Lunak SEI, yang bertujuan untuk memahami dan mengelola proses rekayasa perangkat lunak.
Tingkat Kematangan Proses diperkenalkan akan menjadi Integrasi Kematangan Model Kemampuan untuk Pengembangan (CMMi-DEV), yang telah mendefinisikan bagaimana Pemerintah AS mengevaluasi kemampuan tim pengembangan perangkat lunak.

Modern, diterima secara umum
praktek untuk rekayasa perangkat lunak telah dikumpulkan oleh subkomite ISO / IEC JTC 1 / SC 7 dan diterbitkan sebagai Badan Pengetahuan Teknik Perangkat Lunak (SWEBOK).

Kriteria dan Tujuan:

Secara lebih khusus kita dapat menyatakan tujuan dan Rekaya Perangkat Lunak ini adalah:
1. Memperoleh biaya produksi perangkat lunak yang rendah.
2. Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu
3. Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform
4. Menghasilkan perangkat lunak yang biaya perawatannya rendah

kriteria yang dapat digunakan sebagai acuan dalam merekayasa perangkat lunak:

1. dapat terus dirawat dan dipelihara(maintainability)
2. dapat mengikuti perkembangan teknologi(dependability)
3. dapat mengikuti keinginan pengguna(robust)
4. efektif dan efisien dalam menggunakan energi dan penggunaannya
5. dapat memenuhi kebutuhan yang diinginkan(usability)

Ruang lingkup:

1. Software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak.

2. Software desain mencakup proses penampilan arsitektur, komponen, antar muka, dan karakteristik lain dari perangkat lunak.

3. Software construction berhubungan dengan detail pengembangan perangkat lunak, termasuk. algoritma, pengkodean, pengujian dan pencarian kesalahan.

4. Software testing meliputi pengujian pada keseluruhan perilaku perangkat lunak.

5.Software maintenance mencakup upaya-upaya perawatan ketika perangkat lunak telah dioperasikan.

6.Software 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.

8.Software engineering tools and methods mencakup kajian teoritis tentang alat bantu dan metode RPL.

baca juga: peluang kerja rpl

Komentar