Anda di halaman 1dari 8

Nama : Dion

Kelas : 1TIF

Rangkuman Pendahuluan RPL


A. Definisi Perangkat Lunak
Perangkat lunak merupakan instruksi yang bila di eksekusi dapat di menjalankan fungsi
tertentu, Perangkat lunak merupakan struktur data yang dapat membuat program memanipulasi
inforamasi; dan dokumen yang menjelaskan operasi dan penggunaan program.

B. Jenis Software

1. System Software
System Software Kumpulan program di tulis sebagai layanan atau menunjang program
lainnya.
2. Real Time Software
Merupakan software yang berfungsi mengukur, menganalisis dan mengontrol aktifitas secara
langsung.
3. Business Software
Software yang digunakan unutk mengambil Keputusan dalam bidang bisnis.
4. Engineering and Scientific Software
Software yang digunakan dalam bidang engineering dan science.
5. Embedded Software
Software yang digunakan untuk mengontrol product dan system software ini dijalankan
dengan berbagai fungsi terbatas.
6. PC Software
Software yang banyak digunakan di computer pribadi (pc).
7. Artificial intelligence Software
Merupakan Software yang digunakan untuk memcahkan algoritma masalah kompleks yang
tidak dapat dianalisis komputasi biasa.
c. Hardware Vs Software
Realbility
Kehandalan perangkat untuk dioperasikan, dan bebas dari kegagalan untuk jangka waktu
tertentu di lingkumgan tertentu.
a. Hardware Reliability
 Keasalahan perangkat keras bagian besar adalah Keasalahan Fisik
 Komponen perangkat keras umumnya gagal karena aus
 Dalam perangkat keras, kesalahan desain mungkin juga ada tetapi kesalahan fisik
umumnya mendominasi.
 Fitur Kegagalan Perangkat keras, disebut bathtub curve.

b. Software Reliability
 Kesalahan perangkat lunak adalah kesalahan desain, yang sulit untuk
divisualisasikanm diklasifikasi,dideteksi, dan dikoreksi.
 Komponen perangkat lunak gagal karena bug
 Kualitas perangkat lunak tidak akan berubah setelah diunggah ke tempat
penyimpanan dan ketiak sudah mulai running.

1. Krisis Perangkat Lunak di Masa Mendatang

a. Masalah PL :
 Bagaimana membuat perangkat lunak berjalan sesuai dengan fungsinya
 Bagaimana mengembangkan perangkat lunak
 Bagaimana memelihara suatu volume perangkat lunak yag sedang tumbuh
 Bagaimana mengejar kebutuhan akan lebih banyak perangkat lunak lagi.

2. Solusi
Rekayasa Perangkat Lunak (pengembangan Perangkat Lunak )
D. Definisi Rekayasan Perangkat Lunak

IEEE Computer Society


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,
a. Software Engineering is”a layered technology”
 Tools
Tools Menyediakan support untuk proses dan method : otomatis atau semi
otomatis.
 Method
Mencakup communication, requirements analysis, design modeling, program
construction, testing, dan support.
 Process
Proses perangkat lunak membentuk dasar untuk pengendalian
manajemen proyek perangkat lunak dan menetapkan konteks di
mana metode teknis diterapkan, produk kerja (model, dokumen,
data, laporan, formulir, dll.)
 A “quality” Focus
Dasar/landasan untuk mendukung Rekayasa Perangkat Lunak, yang menyatuka
lapisan teknologi sehingga dihasilkan PL yang rasional dan tepat waktu.

E. Bidang Ilmu RPL - Software Engineering Body of Knowledge


 Software requirement
 Software contruction
 Software maintanance
 Software configuration management
 Software enfineering process
 Software engineering professional practice
 Software design
 Software testing
 Software quality
 Software engineering management
 Software engineering model and methods

F. Mitos Perangkat Lunak.

A. PANDANGAN MANAGEMENT
1. Kita sudah memiliki buku yang penuh dengan standar dan prosedur untuk membuat
perangkat lunak. Apakah buku itu tidak memberikan semua yang ingin diketahui oleh staf
saya?
 Buku standar mungkin ada, tetapi apakah buku-buku tersebut dipakai? Apakah
praktisi perangkat lunak sadar akan keberadaan buku tsb? Apakah dia benar-benra
perangkat lunak modern? Apakah sudah lengkap? Hamper semua jawabannya
“Tidak”.
2. Jika kita tertinggal dari jadwal yang ditetapkan, kita menambah beberapa programmer
saja. Konsep ini sering disebut Mongolian harde concept.
 Merekrut lebih banyak orang baru pada proses pembuatan perangkat lunak akan
membuat waktu penyelesaian lebih lamakarena orang lama harus membimbing
orang baru sehingga waktuyang digunakan dalam fase pengembangan produksi
akan semakinberkurang.
3. Staf saya sebenarnya memiliki alat pengembangan perangkat lunak terkini, karena itulah
kita membeli computer baru bagi mereka.
 Dibutuhkan lebih dari sekedar mainframe model terakhir, workstation atau PC
untuk mengembangkan perangkat lunak berkualitas tinggi. CASE lebih penting
daripada H/W untuk mendapat kualitas dan produktivitas yang tinggi, tetapi
mayoritas pengembang P/L tetap belum menggunakannya.
4. Kita tidak perlu mengubah pendekatan terhadap pengembangan software, karena jenis
pemrograman yang kita lakukan sekarang ini sudah kita lakukan 10 tahun yang lalu
 Walau hasil program sama, produktivitas dan kualitas software
harus ditingkatkan dengan menggunakan pendekatan software developments.
B. PANDANGAN CUSTOMER
1. Pernyataan umum tentang obyektivitas sudah cukup untuk memulai menulis program.
Kita dapat mengisi detailnya nanti.
 Definisi awal yang buruk adalah penyebab utama kegagalan terhadap usaha-
usaha pembentukkan software. Penjelasan yang formal dan terinci tentang
informasi fungsi performance interface, hambatan desain dan kriteria validasi
adalah penting. Karakteristik di atas dapat ditentukan hanya setelah adanya
komunikasi antara customer dan developer.
2. Kebutuhan proyek berubah terus menerus, tetapi perubahan tersebut dapat diakomodasi
karena P/L bersifat fleksibel.
 Memang benar bahwa kebutuhan-kebutuhan perangkat lunak selalu berubah,
tetapi pengaruh perubahan itu bervariasi sesuai waktu saat perangkat lunak
dikenalkan. Jika perubahan mendekati akhir penyelesaian, maka biaya akan
lebih besar

C. PANDANGAN PRAKTISI.
1. Sekali kita menulis program, dan dapat membuatnya bekerja, pekerjaan kita akan
terselesaikan.
 50%-70% dari semua usaha yang dilakukan pada sebuah program akan terus
dilakukan sampai program diantar ke tangan konsumen untuk yang pertama
kalinya
2. Saya benar-benar tidak mempunyai cara untuk “menilai” kualitas program, kecuali jika
saya dapat membuat program itu “berjalan”.
 Tinjauan perangkat lunak merupakan “filter kualitas” yang lebih efektif daripada
pengujian untuk menemukan kelas-kelas kesalahan perangkat lunak yang khusus
3. Satu-satunya yang dapat disampaikan untuk sebuah proyek yang sukses adalah program
yang bekerja.
 Program yang bekerja hanya merupakan salah satu bagian dari konfigurasi P/L
yang menyangkut program, dokumen, dan data. Dokumentasi membentuk
fondasi bagi perkembangan yang berhasil, serta yang lebih penting lagi,
memeberikan tuntunan bagi tugas pemeliharaan perangkat lunak.
4. Tidak ada metode untuk analisis disain dan testing terhadap suatu pekerjaan, cukup
menuju kedepan terminal dan mulai coding.
 Metode untuk analisis desain dan testing diperlukan dalam pengembangan
software
5. Segera setelah software digunakan, pemeliharaan dapat diminimalisasikan dan diatasi
dengan cara “CATCH AS CATCH CAM”
 Diperlukan budget yang besar dalam maintenance software. Pemeliharaan
software harus diorganisir, direncanakan dan dikontrol seolah-olah sebagai suatu
proyek besar dalam sebuah organisasi

G. Karakteristik Perangkat Lunak yang Baik.


Kualitas perangkat lunak adalah pemenuhan terhadap kebutuhan fungsional dan
kinerja yang didokumentasikan secara eksplisit,
pengembangan standar yang didokumentasikan secara eksplisit, dan sifat sifat implisit
yang diharapkan dari sebuah software yang dibangun secara profesional
(Dunn, 1990).

a. Produk Operation
 Correctness : Sesuai spesifikasi kebutuhan pengguna.
 Usability/Learnability : Mudah digunakan
 Integrity : Tidak mempengaruhi jalannya/kinerja perangkat lunak yang lain
 Relibility : Tidak memiliki cacat/cela/kekurangan/kerusakan dan tidak gagal saat
dieksekusi.
 Efficiency : Terkait cara perangkat lunak menggunakan sumber daya seperti
memanfaatkan ruang penyimpanan secara efektif dan menjalankan perintah
sesuai kebutuhan waktu yang diinginkan.
 Security/Savety : Data maupun perangkat keras tempat berjalannya perangkat
lunak harus aman. Tidak berbahaya bagi lingkungan maupun kehidupan.
b. Produk Revision
 Maintainability : Mudah dalam pemeliharaannya
 Flexibilitas : Perubahan dalam perangkat lunak mudah dilakukan
 Extensibility : Mudah menambahkan fungsionalitas/fitur perangkat lunak
 Scalability : Dapat diupgrade untuk menangani lebih banyak pekerjaan atau
pengguna
 Testability : Mudah dalam pengujian
 Modularity : Jika perangkat lunak dapat dibagi menjadi bagian independen
terpisah (unit atau modul) yang dapat dimodifikasi, diuji secara terpisah,
perangkat lunak tersebut memiliki modularitas tinggi
PROSES PERANGKAT LUNAK
Proses Perangkat Lunak didefinisikan sebagai nsejumlah aktivitas, aksi dan tugas yang
dijalankan ketika suatu produk harus dibuat.
A. PROSES PERANGKAT LUNAK
Kerangka kerja proses membangun dasar bagi proses rekayasa perangkat lunak
yang lengkap dengan cara mengidentifikasi sejumlah kecil aktivitas kerangka kerja yang
cocok bagi semua proyek rekayasa perangkat lunak.
 Komunikasi, bertujuan untuk memahami tujuan – tujuan stakeholder atas proyek
perangkat lunak yang sedang dikembangkan dan mengumpulkan kebutuhan – kebutuhan
yang akan membantu mendefinisikan fitur – fitur perangkat lunak berikut dengan fungsi
– fungsinya
 Perencanaan, kegiatan perencanaan menciptkan suatu peta yang dapat membantu
membimbing tim perangkat lunak.
 Pemodelan, dilakukan bertujuan untuk membuat sketsa sehingga tim perangkat lunak
dapat memahami gambaran besar produk yang akan di buat.
 Konstruksi, kegiatan yang menggabungkan pengkodean dan pengujian
 Penyerahan perangkat lunak kepada user, penyajian perangkat lunak kepada user untuk di
evaluasi.

B. PROSES PERANGKAT LUNAK


 Lima akivitas diatas dapat juga berulang, pengulangan tersebut menghasilkan sebuah
peningkatan perangkat lunak yang memberikan user suatu fitur dan fungsionalitas
perangkat lunak.
 Aktivitas – aktivitas kerangka kerja perangkat lunak diatas disempurnakan dengan
aktivitas – aktivitas yang bertindak sebagai penyangga, yaitu :
1. Pelacakan dan Pengendalian proyek perangkat lunak, dilakukannya
penilaian terhadap kemajuan proyek perangkat lunak yang berjalan sehingga
dapat diambil tindakan – tindakan untuk membuat tepat waktu.
2. Manajemen risiko, menilai risiko – risiko yang dapat berpengaruh terhadap
hasil akhir dan kualitas perangkat lunak
3. Penjaminan kualitas perangkat lunak, melakukan kegiatan – kegiatan yang
memastikan kualitas perangkat lunak.
4. Ulasan , mengevaluasi produk untuk menemukan dan menyingkirkan
defect(kesalahan).
5. Pengukuran, menjelaskan dan mengukur proses, proyek dan produk
perangkat lunak yang akan membantu tim perangkat lunak dalam memenuhi
kebutuhan stakeholder.
6. Manajemen konfigurasi perangkat lunak
7. Manajemen penggunaan ulang
8. Persiapan produk kerja dan produks

C. MODEL -MODEL PROSES REKAYASA PERANGKAT LUNAK


Pada proses perangkat lunak maka ada beberapa hal yang perlu diperhatikan agar
proses perangka lunak dapat berjalan dengan baik (Roger S. Pressman, 2012).
 Mendefinisikan aktivitas kerangka kerja --> dilakukan untuk dapat menentukan
tindakan – Tindakan yang sesuai dengan aktivitas kerangka kerja yang sesuai
dengan permasalahan yang akan diselesaikan dan menentukan karakteristik orang
– orang yang akan mengerjalan serta para stakeholder yang akan membiayai
proyek.
 Mengidentifikasi himpunan pekerjaan, mendefiniskan pekerjaan – pekerjaan yang
harus di selesaikan untuk memenuhi sasaran tertentu dari suatu aksi rekayasa
perangkat lunak.
 Pendiskripsian pola – pola proses, mendiskripsikan permasalahan – permasalahan
yang terkait dengan proses, yang dijumpai selama pekerjaan rekayasa perangkat
lunak berlangsung.
 Penilaian dan perbaikan proses, proses perangkat lunak dapat dinilai untuk
memastikan bahwa perangkat lunak tersebut telah memenuhi sejumlah kriteria
proses dasar yang esensial. Ada beberapa pendekatan penilaian proses perangkat
lunak diantarnya : SCAMPI, CBA IPI, SPICE

D. MODEL -MODEL PROSES REKAYASA PERANGKAT LUNAK


 MODEL WATERFALL : model waterfall ini menyiratkan pendekatan yang
sistematis dan berurutan pada perangkat lunak yang dimulai dari perencanaan
(planning), pemodelan(modeling), konstruksi(construction), serta penyerahan
perangkat lunak kepada pelanggan (deployment), yang diakhiri dengan dukungan
berkelanjutan pada perangkat lunak lengkap yang dihasilkan .
 MODEL V : Pada perkembangannya Bucanac mengemukakan model air terjun ini
di variasi menjadi model-V, yang pada dasarnya model-V ini menyediakan secara
visual bagaimana tindakan – tindakan verifikasi dan validasi yang seharusanya
diterapkan pada bagian – bagian rekayasa perangkat lunak yang lebih awal.
 MODEL RAD : RAD adalah proses pengembangan perangkat lunak yang
semakin meningkatkan (incremental) yang menekankan pada siklus
pengembangan yang cepat. Model RAD merupakan adaptasi “berkecepatan
tinggi” dari linear sequential model dimana pengembangan yang cepat dapat
diperoleh dengan menggunakan pembangunan berbasis pada komponen.
 MODEL INKREMENTAL : Model inkremental atau disebut dengan model
penambahan sedikit demi sedikit ini menggabungkan elemen – elemen aliran
proses dari model generik yaitu aliran proses linier dan aliran proses parallel
 MODEL PROTOTYPING : Pengguna perangkat lunak sering kesulitan dalam
mendefinisikan kebutuhan secara rinci, sehingga pendekatan terbaik adalah
menggunakan paradigma pembuatan prototipe. Paradigma ini membantu tim
pengembang danstakeholder memahami kebutuhan perangkat lunak.
 MODEL SPIRAL : Model spiral merupakan suatu model proses perangkat lunak
evolusioner yang menggabungkan pendekatan prototyping yang bersifat iteratif
dengan aspek – aspek sistematis dan terkendali yang di jumpai pada model
waterfall.
 MODEL SPIRAL : Model spiral dibagi menjadi sejumlah aktivatas kerangka
kerja yang didefinisikan oleh pengembang perangkat lunak.
 Lintasan pertama di sekitar spiral mungkin menghasilkan sesuatu yang
penting untuk spesifikasi produk, lintasan – lintasan selanjutnya di sekitar
spiral mungkin digunakan untuk mengembangkan suatu prototipe
 dan kemudian pada lintasan – lintasan berikutnya tim pengembang bisa
secara progresif bergerak ke versi – versi perangkat lunak selanjutnya
yang semakin canggih
 MODEL KONKUREN: Model pengembangan perangkat lunak konkuren,
memungkinkan tim perangkat lunak untuk menggunakan unsur – unsur yang
bersifat berulang atau iteratif dan konkuren atau berjalan bersamaan dalam setiap
model proses.

Anda mungkin juga menyukai