Sunday, May 10, 2020

Pengertian, Kriteria, Proses, dan Tantangan dalam RPL

Rekayasa Perangkat Lunak (Software Engineering) merupakan pembangunan dengan menggunakan prinsip  atau konsep rekayasa dengan tujuan menghasilkan perngkat lunak yang bernilai ekonomi yang diperaya dan bekerja secara efisien menggunakan mesin. Perangkat lunak banyak dibuat dan pada akhirnya seing tidak digunakan karena tidak memenuhi kebutuhan pelanggan atau bahkan karena masalah non-teknis seperti keengganan pemakai perangkat lunak (user) untuk mengubah cara kerja dari manual ke otomatis atau ketidakmampuan user menggunakan komputer. Oleh karena itu, rekayasa perangkat lunak dibutuhkan agar perangkat lunak yang dibiat tidak hanya menjadi perangkat lunak yang tidak terpakai.

Kriteria Perangkat Lunak

Rekayasa perangkat lunak lebih fokus pada praktik pengembangan perangkat lunak dan mengirimkan perangkat lunak yang bermanfaat kepada pelanggan (customer). Adapun ilmu komputer lebih fokus pada teori dan konsep dasar perangkat komputer. Rekayasa perangkat lunak lebih fokus pada bagaimana membuat perangkat lunak yang memenuhi kriteria berikut:
1. dapat terus dipelihara setelah perangkat lunak selesai dibuat seiring berkembangnya teknologi dan lingkungan (maintainability)
2. dapat diandalkan dengan proses bisnis yang dijalankan dan perubahan yang terjadi (dependability dan robust)
3. efisien dari segi sumber daya dan penggunaan 
4. kemampuan untuk dipakai sesuai dengan kebutuhan ( usability)

Dari Kriteria di atas maka perangkat lunak yang baik adalah perangkat lunak yang dapat memenuhi kebutuhan pelanggan (customer) atau user )pemakai perangkat lunak ) atau berorientasi pada pelanggan atau pemakai perangkat lunak, bukan berorientasi pada pembuat atau pengembang perangkat lunak. 

Note: Perangkat lunak yang baik adalah perangkat lunak yang fokus pada pengguna dan pelanggan.

pekerjaan yang terkait dengan rekayasa perangkat lunak dapat dikategorikan menjadi 3 buah kategori umum tanpa melihat area dari aplikasi, ukuran proyek perangkat lunak, atau kompleksitas perangkat lunak yang akan dibuat. Setiap fase dialamatkan pada satu atau lebih pertanyaan yang diajukan sebelumnya.

Fase-Fase Dalam Melakukan Rekayasa Perangkat Lunak

Fase pendefinisian fokus pada “what” yang artinya harus mencari tahu atau mengidentifikasi informasi apa yang harus diproses, seperti apa fungsi dan performansi yang diinginkan, seperti apa perilaku sistem yang diinginkan, apa kriteria validasi yang dibutuhkan untuk mendefinisikan sistem.

Fase pengembangan yang fokus dengan “how” yang artinya selama tahap pengambangan perangkat lunak seorang perekayasa perangkat lunak (software engineer) berusaha untuk mendefinisikan bagaimana data distrukturkan dan bagaimana fungsi-fungsi yang dibutuhkan diimplementasikan di dalam arsitektur perangkat lunak, bagaimana detail prosedural diimplementasikan , bagaimana karakter antarmuka tampilan, bagaimana dasin ditranslasikan ke bahan pemrograman, dan bagaimana pengujian akan dijalankan.

Fase pendukung (support phase) fokus pada perubahan yang terasosiasi pada perbaikan kesalahan (error), adaptasi yang dibutujlan pada lingkungan perangkat lunak yang terlibat, dan perbaikan yang terjadi akibat perubahan kebutuhan pelanggan (customer). Fase pendukung terdiri dari empat tipe perubahan antara lain: 
1.Koreksi (correction) 
walaupun dengan jaminan kualitas terbaik, akan selalu ada kecacatan atau keinginan pelanggan (customer) yang tidak tertangani oleh perangkat lunak. Pemeliharaan dengan melakukan perbaikan terhadap kecacatan perangkat lunak.


2.Adaptasi (adaptation)
pada saat tertentu lingkungan asli (seperti CPU, sistem operasi, aturan bisnis, karakteristik produk luat) dimana perangkat lunak dikembangkan akan mengalami perubahan. Pemeliharaan adaptasi merupakan tap untuk memodifikasi perangkat lunak guna mengakomodasi perubahan lingkungan luar dimana perangkat lunak dijalankan.

3.Perbaikan (enhancement)
sejalan dengan digunakan perangkat lunak, maka pelanggan (customer) atau pemakaiannya (user) akan mengenal pelanggan (customer) atau pemakai (user) akan mengenal fungsi tambahan yang dapat mendatangkan manfaat. Pemeliharaan atau penyempurnaan melakukan ekstensi atau penambahan pada kebutuhan fungsional sebelumnya.

4.Pencegahan (prevention)
keadaan perangkat lunak komputer sangat dimungkinkan untuk perubahan. Oleh karena itu, pemeliharaan pencegahan (preventive) atau sering disebut juga dengan rekayasa ulang sistem (software re engineering) harus dikondisikan untuk mampu melayani kebutuhan pemakainya (user) . Untuk menanggulangi hal ini maka perangkat lunak harus dirancang dan dikondisikan untuk mengakomodasi perubahan kebutuhan yang diinginkan oleh pemakainya(user). Di lain sisi biasanya setelah perangkat lunak dikirimkan ke user maka masih dibutuhkan asistensi dan help desk dari pengmbang perangkat lunak.

Tantangan Dalam Proses Rekayasa Perangkat Lunak

Tantangan yang dihadapi dari proses rekayasa perangkat lunak adalah sebagai berikut:
1.Tantangan warisan dimana perangkat lunak dikembangkan selama bertahun-tahun oleh orang-orang yang berbeda, hal ini dapat menyebabkan ketidakpahamanan atau perubahan tujuan pembuatan perangkat lunak.
2.Tantangan heterogenitas dimana perangkat lunak harus dapat beradaptasi dengan teknologi yang terus berkembang dengan semakin luasnya  lingkungan distribusi perangkat lunak.
3.Tantangan pengiriman bahwa perangkat lunak dengan skala besar dan kompleks sekalipun dapat sampai ke tangan pelanggan (customer) atau user dengan cepat dan kualitas tetap terjaga.

Ada suatu hal tambahan dalam rekayasa perangkat lunak yang berbasis WEB pada tahap desainnya yaitu bagaimana menentukan aliran halaman WEB. Beberapa aliran WEB misalnya adalah sebagai berikut: 

Aliran Halaman WEB
Semoga artikel Pengertian Rekayasa Perangkat Lunak bisa bermanfaat bagi kalian. Jangan lupa simak artikel kami yang lainnya

Post a Comment

Whatsapp Button works on Mobile Device only

Start typing and press Enter to search