Anda di halaman 1dari 10

Analisis Dan Pemodelan Perangkat Lunak

Konsep Rekayasa Perangkat Lunak (Part 1)

Disusun Oleh:

Nama : Reza Putri Pratama


Kelas : IF 19 E
NPM : 19312292

JURUSAN INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS TEKNOKRAT INDONESIA
BANDAR LAMPUNG
2021
Konsep Dasar Rekayasa Perangkat Lunak (RPL)

Pengertian Rekayasa Perangkat Lunak (RPL)

Berikut ini beberapa pengertian RPL dari berbagai sumber

IEEE Computer Society : RPL 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.

Roger R. Pressman: 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.

1. Perangkat Lunak

Perangkat lunak merupakan program komputer yang berfungsi menghubungkan antara


pengguna dan komputer yang digunakan. dapat dibilang perangkat lunak merupakan
sebagai media penerjemah perintah yang diberikan oleh pengguna kepada komputer
untuk selanjutnya diproses melalui perangkat keras komputer tersebut.Perangkat lunak
umumnya digunakan untuk mengontrol perangkat keras yang biasa disebut sebagai
device driver, melakukan proses penghitungan, berinteraksi dengan perangkat lunak
yang lebih mendasar lainnya, seperti sistem operasi dan bahasa pemrograman.

Secara umum ada tiga jenis perangkat lunak yang diketahui hingga saat ini yaitu sistem
operasi yang merupakan sebuah penghubung antara pengguna dari komputer dengan
perangkat keras komputer. Kedua yaitu perangkat lunak bahasa pemrograman seperti
java. Dan yang ketiga yaitu perangkat lunak aplikasi yang merupakan penrangkat yang
digunakan untuk membantu dan memudahkan pekerjaan seseorang misalnya saja
Microsoft Excel, Word, dan Power Point

2. Rekayasa Perangkat Lunak

Rekayasa atau teknik merupakan penerapan ilmu dan teknologi untuk menyelesaikan
permasalahan manusia. Hal ni diselesaikan lewat pengetahuan, matematika, dan
pengalaman praktis yang diterapkan untuk mendesain objek atau proses yang berguna.
Para praktisi teknik professional disebut perekayasa.

Rekayasa perangkat lunak atau Software engineering dalam bahasa inggris merupakan
bidang ilmu yang mempelajari tentang segala aspek perangkat lunak, seperti cara-cara
pengembangan, pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak.

Rekayasa perangkat lunak jugamerupakan disiplin rekayasa dengan perangkat lunak


yang dikembangkan. Biasanya proses melibatkan penemuan pada keinginan klien,
menyusunnya didalam daftar kebutuhan, merangcang arsitektur yang mampu
mendukung semua kebutuhan, perancangan, pengodean, pengujian, dan
pengintegrasian bagian yang terpisah, menguju keseluruhan, penyebaran, dan
pemeliharaan perangkat lunak.

3. Perbedaan Rekayasa Perangkat Lunak Dengan Ilmu Komputer

Perbedaan antara rekayasa perangkat lunak dengan ilmu koputer sudah terlihat dari
Bahasa Inggrisnya rekayasa perangkat lunak dalam Bahasa Inggris disebut sebagai
software engineering , sedangkan ilmu komputer dalam bahasa inggris disebut
science. Dari segi ilmu yang dipelajari rekayasa perangkat lunak merupakan bidang
ilmu yang mempelajari tentang perangkat lunak, sedangkan ilmu komputer
mempelajari tentang komputasi, perangkat keras, serta beragam topic yang berkaitan
dengan komputer.serta ilmu komputer lebih menekankan pada pemrograman komputer
sedangkan rekayasa perangkat lunak tidak. Selain itu rekayasa perangkat lunak lebih
mengedepankan prakteknya, sedangkan ilmu komputer lebih mengedepankan teori.

4. Perbedaan Rekayasa Perangkat Lunak Dengan Rekayasa Sistem

Perbedaan antara rekayasa perangkat lunak dengan rekayasa sistem adalah apabila
rekayasa sistem itu merupakan sebuah kumpulan komponen, konsep, serta alat bantu
untuk merancang dan menginstalasi sebuah sistem perangkat lunak, sedangkan
rekayasa perangkat lunak itu merupakan ilmu yang mempelajari tentang segala aspek
perangkat lunak, seperti cara-cara pengembangan, pemeliharaan , pembuatan, serta
manajemen kualitas perangkat lunak. Jadi dapat disimpulkan bahwa rekayasa perangkat
lunak merupakan bagian dari rekayasa sistem karena RPL ilmu yang mempelajari
tentang pembuatan perangkat lunak sedangkan rekayasa sistem merupakan kumpulan
komponen, konsep, serta alat bantu untuk merancang dan menginstalasi perangkat
lunak.

5. Yang Dimaksud Dengan Proses Perangkat Lunak

Proses perangkat lunak merupakan proses bagaimana sebuah perangkat lunak itu dapat
terbentuk yang dilakukan oleh perekayasa perangkat lunak, proses proses tersebut
diantaranya adalah :

a. Proses spesifikasi perangkat lunak. Pada proses ini fungsi,kemampuan operasi


perangkat lunak yang akan dibuat harus diketahui terlebih dahulu.

b. Proses pengembangan perangkat lunak. Setelah diketahui fungsi serta kemampuan


perangkat lunak yang akan dibuat selanjutnya perangkat lunak yang telah
memenuhi spesifikasi diproduksi.
c. Proses validasi perangkat lunak. Pada proses validasi ini perangkat lunak yang telah
diproduksi akan divalidasi sebagai bukti perangkat lunak yang diproduksi berguna
sesuai kebutuhan yang diperlukan.

d. Evolusi perangkat lunak. Dengan berkembangnya jaman perangkat lunak yang


sudah diproduksipun haruslah berevolusi agar tetap dapat berguna untuk memenuhi
kebutuhan pelanggan.

6. Model Proses Perangkat Lunak

Model proses perangkat lunak merupakan cara untuk memproses sebuah perangkat
lunak dari nol menjadi sebuah perangkat lunak yang siap untuk digunakan. Berikut
merupakan beberapa contoh model proses perangkat lunak yang biasa digunakan

1. Waterfall Model atau Model Air Terjun

Model air terjun ini merupakan model klasik yang bersifat sistematis dalam membuat
suatu perangkat lunak dan juga paling sering digunakan.

Pada fase analisis fungsi,kemampuan operasi perangkat lunak yang akan dibuat harus
diketahui terlebih dahulu. Kemudian apabila analisi telah selesai dilakukan maka
didesainlah perangkat lunak yang akan dibuat. Setelah desain selesai lalu desain
tersebut diterjemahkan kedalam kode-kode dengan bahasa pemrograman yang
diinginkan, misalnya saja C++. Setelah kode selesai dibuat diadakanlah proses
pengetesan terhadap perangkat lunak yang baru dibuat agar diketahui apakah perangkat
yang dibuat bisa berjalan dengan benar atau tidak.

2. Model Spiral

Model spiral ini dikembangkan oleh Boehm pada tahun 1988 berdasarkan pada
pengalamannya dengan berbagai perbaikan atas model air terjun yang diaplikasikan
pada proyek pemerintah, khususnya perangkat lunak yang besar. Model ini
dititikberatkan pada pembuatan prototype dan manajemen resiko yang sangat fleksibel
jika dibandingkan dengan model air terjun. Kebanyakan aplikasi komprehensif dari
model ini ada pada pengembangan TRW-Software Productivity System yang
dijabarkan oleh Boehm. Konsep spiral dan focus manajemen risiko telah memperolah
pengakuan di industry rekayasa perangkat lunak dan manajemen proyek pada tahun-
tahun terakhir.

Keuntungan apabila menggunakan model spiral diantaranya :

a. Jangkauan atas pilihan mengakomodasi fitur yang baik untuk proses model perangkat
lunak yang sudah ada.
b. Fokus awalnya ada pada pilihan yang melibatkan penggunaan ulang perangkat lunak
yang ada. Pilihan ini mendukung karena identifikasi awa; dengan evaluasi dari
alternative-alternatif adalah kunci di setiap siklus spiral.

c. Model spiral juga menyediakan mekanisme untuk tujuan kualtias dan perangkat lunak
gabungan kepengembangan produk perangkat lunak.

d. Model spiral mempunyai focus untuk mengeliminasi kesalahan

e. Model spiral menyediakan pendekatan terpisah untuk pengembangan dan pemasangan


perangkat lunak.

e. Model spiral menyediakan kerangka kerja aktif untuk pengembangan sistem perangkat
keras dan perangkat lunak yagn terintegrasi.

Sedangkan kerugian apabila menggunakan model spiral diantaranya :


a. Kebanyakan perangkat lunak yang menggunakan model spiral menitikberatkan pada
control, titik periksa, yang merupakan keunggulan dari model air terjun.

b. Karena model spiral ini bersifat fleksibel serta dinamis maka langkah spiral ini harus
diteliti lebih lanjut untuk mendapatkan konsistensi, penjajakan, dan control yang
diinginkan. Penelitian dan control sangat penting , khususnya untuk area analisis resiko
dan manajemen.

7. Metode-metode RPL

Metode-metode dalam rekayasa perangkat lunak merupakan cara yang dilakukan untuk
mengembangkan perangkat lunak yang meliputi deskripsi model sistem, aturan,
rekomendasi, panduan proses, dan bimbingan. Deskripsi model sistem merupakan
model sistem yang akan digunakan contohnya model waterfall. Aturan merupakan
batasan yang diberikan kepada model sistem yang telah ditentukan, misalnya setiap
entitas pada model sistem diharuskan memiliki nama entitas yang berbeda antara satu
entitas dengan entitas lainnya. Rekomendasi berupa saran yang diberikan agar dapat
membentuk perancangan yang baik dan sesuai fungsinya. Panduan proses merupakan
aktifitas yang bisa diikuti untuk mengembangkan model sistem. Proses bimbingan yaitu
serangkaian kegiatan yang akan diikutin untuk mengembangkan model sistem.

8. CASE(Computer Aided Software Engineering)

Yang dimaksud dengan CASE(Computer Aided Software Engineering) adalah


serangkaian aplikasi dan metode untuk perangkat lunak yang otomatis dapat
memberikan dukungan untuk kegiatan proses perangkat lunak. Ada dua jenis CASE
yaitu upper-CASE yaitu alat untuk mendukung kegiatan proses awal persyaratan dan
lower-CASE yaitu alat yang mendukung kegiatan yang selanjutnya seperti
pemrograman, pengujian , debugging.
9. Atribut Perangkat Lunak

Atribut perangkat lunak yang baik diantaranya :

a. Maintainability yaitu perangkat lunak harus bisa di pelihara demi memenuhi kebutuhan
pelanggan yang semakin lama menginginkan kemudahan.

b. Dependability, yaitu perangkat lunak harus dapat diandalkan dan dipercaya dan tidak
mengecewakan penggunanya.

c. Acceptability, yaitu perangkat lunak yang sudah diproduksi harus diterima sepenuhnya
oleh pengguna yang memesannya. Ini berarti perangkat harus dapat dapat digunakan
dengan mudah oleh pengguna.

d. Usability , perangkat lunak yang harus dapat digunakan sesuai dengan fungsi awal yang
telah ditentukan oleh penggunanya.

e. Efisien, yaitu perangkat lunak haruslah efisien baik dalam penggungannya maupun
sumber daya yang digunakan.

10. Tantangan kunci yang dihadapi Rekayasa Perangkat Lunak

Tantangan kunci yang dihadapi rekayasa perangkat lunak diantaranya :

a. Tantangan pengiriman, yaitu tantangan untuk mempercepat waktu pengiriman


perangkat lunak tanpa mengurangi kualitas sistemnya.

b. Tantangan pemeliharaan, yaitu tantangan dalam melakukan pemeliharaan dan peng-


updatean perangkat lunak agar biaya yang digunakan dapat di minimalisir sesedikit
mungkin.

c. Tantangan heterogenitas , yaitu tantangan dalam pengembangan untuk membangun


perangkat lunak yang dapat diandalkan dan flexible untuk menghadapi heterogenitas
yang ada.

d. Adanya killer application yang bisa lebih dikostumisasi, interaktif, dinamis, dan penuh
gaya

e. User power an authority, dimana pengguna bisnis dan pengguna individu adalah
pihakyang lebih kuat, berpengalaman dan selektif.

f. Adanya market share dimana pesaing menjadi lebih agresif, dan inovatif.
11. Tujuan Rekayasa Perangkat Lunak

a. Secara lebih khusus kita dapat menyatakan tujuan RPL adalah untuk
b. Memperoleh biaya produksi perangkat lunak yang rendah.
c. Menghasilkan perangkat lunak yang kinerjanya tinggi, andal dan tepat waktu
d. Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform
e. Menghasilkan perangkat lunak yang biaya perawatannya rendah

12. Kriteria Dalam Merekayasa Perangkat Lunak


a. Dapat terus dirawat dan dipelihara (maintainability)
b. Dapat mengikuti perkembangan teknologi (dependability)
c. Dapat mengikuti keinginan pengguna (robust).
d. Efektif dan efisien dalam menggunakan energi dan penggunaannya.
e. Dapat memenuhi kebutuhan yang diinginkan (usability).

13. Ruang Lingkup Rekayasa Perangkat Lunak

Ruang lingkup RPL meliputi:

a. Software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan


perangkat lunak.
b. Software design mencakup proses penampilan arsitektur, komponen, antar muka, dan
karakteristik lain dari perangkat lunak.
c. Software construction berhubungan dengan detail pengembangan perangkat lunak,
termasuk. algoritma, pengkodean, pengujian dan pencarian kesalahan.
d. Software testing meliputi pengujian pada keseluruhan perilaku perangkat lunak.
Software maintenance mencakup upaya-upaya perawatan ketika perangkat lunak telah
dioperasikan.
e. Software configuration management berhubungan dengan usaha perubahan
konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu.
f. Software engineering management berkaitan dengan pengelolaan dan pengukuran
RPL, termasuk perencanaan proyek perangkat lunak.
g. Software engineering tools and methods mencakup kajian teoritis tentang alat bantu
dan metode RPL.

Ruang Lingkup RPL

Menurut Roger R. Pressman, proses perangkat lunak merupakan serangkaian kegiatan


dan hasil hasil relevannya yang menghasilkan perangkat lunak. Kegiatan ini sebagian
besar dilakukan oleh perekayasa perangkat lunak. Terdapat empat kegiatan proses
dasar, meliputi:

Spesifikasi perangkat lunak, Fungsionalitas perangkat lunak dan batasan kemampuan


operasinya harus didefinisikan.
Pengembangan perangkat lunak, Pengembangan terhadap produk perangkat lunak yang
memenuhi spesifikasi perangkat lunak.

Validasi perangkat lunak, Perangkat lunak harus divalidasi untuk menjamin bahwa
perangkau lunak melakukan apa yang diinginkan oleh user.

Evolusi rangkat lunak. Perangkat lunak harus berkembang untuk memenuhi kebutuhan
pelanggan yang berubah ubah.

Metode rekayasa perangkat lunak merupakan pendekatan terstruktur terhadap


pengembangan perangkat lunak yang bertujuan memfasilitasi produksi perangkat lunak
kualitas tinggi dengan cara yang efektif dalam hal biaya. Terdapat beberapa metode
yang bisa digunaka seperti metode berorientasi fungsi, metode berorientasi objek dan
metode pendekatan gabungan yang sekarang lebih dikenal dengan istilah UML (unified
modeling language).

14. Rekayasa Perangkat Lunak dan Disiplin Ilmu Lain

Cakupan ruang lingkup yang cukup luas, membuat RPL sangat terkait dengan disiplin
dengan bidang ilmu lain. tidak saja sub bidang dalam disiplin ilmu komputer namun
dengan beberapa disiplin ilmu lain diluar ilmu komputer.

15. Keterkaitan RPL dengan bidang ilmu lain

a. Bidang ilmu manajemen meliputi akuntansi, finansial, pemasaran, manajemen


operasi, ekonomi, analisis kuantitatif, manajemen sumber daya manusia, kebijakan, dan
strategi bisnis.
b. Bidang ilmu matematika meliputi aljabar linier, kalkulus, peluang, statistik, analisis
numerik, dan matematika diskrit.

c. Bidang ilmu manajemen proyek meliputi semua hal yang berkaitan dengan proyek,
seperti ruang lingkup proyek, anggaran, tenaga kerja, kualitas, manajemen resiko dan
keandalan, perbaikan kualitas, dan metode-metode kuantitatif.

16. Evolusi Perangkat Lunak

1. Era Pertama ( 1950 – 1960)

a. Batch Orientation, Suatu orientasi di mana proses dilakukan setelah data dikumpulkan
dalam satuan waktu tertentu, atau proses dilakukan setelah data terkumpul, lawan dari
batch adalah Online atau Interactive Process. Keuntungan dari Interactive adalah
mendapatkan data yang selalu up to date.
b. Limmited distribution, Suatu penyebaran software yang terbatas pada perusahaan-
perusahaan tertentu.
c. Custom software, Software yang dikembangkan berdaasarkan perusahaan-perusahaan
tertentu.
2. Era Kedua (1960 – 1970)

a. Multi user, Suatu sistem di mana satu komputer digunakan oleh beberapa user pada
saat yang sama.
b. Real Time, Suatu sistem yang dapat mengumpulkan, menganalisa dan
mentransformasikan data dari berbagai sumber, mengontrol proses dan menghasilkan
output dalam mili second.
c. Database, Perkembangan yang pesat dari alat penyimpan data yang OnLine
menyebabkan muncul generasi pertama. DBMS (DataBase Management System).
d. Product Software, Adalah software yang dikembangkan untuk dijual kepada
masyarakat luas.

3. Era Ketiga (1980 – 1990)

a. Distributed system, Suatu sistem yang tidak hanya dipusatkan pada komputer induk
(Host computer), daerah atau bidang lainnya, yang juga memiliki komputer yang
ukurannya lebih kecil dari komputer induk. Lawan dari distributed system adalah
Centralized System.
b. Embedded Intelegence, Suatu product yang diberi tambahan “Intellegence” dan
biasanya ditambahkan mikroprocessor yang mutakhir. Contohnya adalah automobil,
robot, peralatan diagnostic serum darah.
c. Low Cost Hardware, harga hardware yang semakin rendah, ini dimungkinkan karena
munculnya Personal Computer.
f. Consummer Inpact, Adanya perkembangan komputer yang murah menyebabkan
banyaknya software yang dikembangkan, software ini memberi dampak yang besar
terhadap masyarakat.

2. Era Keempat (1990 – 2000)


a. Expert system, Suatu penerapan kecerdasan buatan pada bidang-bidang tertentu,
misalnya bidang kedokteran, komunikasi, dll.
b. Artificcial Intelegence Machine, Suatu mesin yang dapat meniru kerja dari sebagian
otak manusia. Misalnya mesin robot, komputer catur. Parallel Architecture
Arsitektur komputer yang memungkinkan proses kerja LAN paralel, yang
dimungkinkan adanya prosesor berbeda dalam satu komputer.

17. Karakteristik perangkat lunak


a. Software merupakan elemen sistem logik dan bukan elemen sistem fisik seperti
hardware
b. Elemen itu tidak aus, tetapi bisa rusak.
c. Elemen software itu direkayasa atau dikembangkan dan bukan dibuat di pabrik seperti
hardware
d. Software itu tidak bisa dirakit.
18. Tanggung Jawab Profesional dan Etika

Rekayasa perangkat lunak jelas dibatasi oleh hukum lokal, nasional dan internasional.
Perekayasa perangkat lunak harus memiliki tanggung jawab etis dan moral jika ingin
dihormati sebagai profesional. Terdapat beberapa standar dan kode etik yang harus
dipertimbangkan, yaitu:

a. Konfidensialitas, Harus menghormati konfidensialitas atasan dan kliennya walaupun


tidak ada persetujuan yang ditanda tangani secara formal.
b. Kompetensi. Tidak boleh menyalahi tingkat kompetensinya (melebihi atau
menyimpang)
c. Hak Properti Intelektual, Menyadari terhadap hukum yang mengatur penggunaan
properti intelektual, seperti paten, hak cipta dan lain sebagainya.
d. Penyalahgunaan Komputer, Tidak boleh dengan sengaja menyalah gunakan
komputer yang nantinya berakibat merugikan orang lain, seperti penyebaran virus,
penyadapan dan lain sebagainya.

Anda mungkin juga menyukai