Dokumen tersebut membahas tentang dasar-dasar rekayasa perangkat lunak, meliputi pengertian perangkat lunak, karakteristik, domain aplikasi, dan teknik rekayasa perangkat lunak. Secara ringkas, dokumen tersebut membahas tentang konsep dasar rekayasa perangkat lunak.
3. GAMBARAN
• PERANGKAT LUNAK DIRANCANG DAN DIBANGUN OLEH ENGINEER PERANGKAT LUNAK.
• PERANGKAT LUNAK DIGUNAKAN OLEH SETIAP ORANG DI MASYARAKAT.
• PERANGKAT LUNAK MENYELAMAT DALAM PERDAGANGAN KITA, BUDAYA KITA, DAN KEHIDUPAN SEHARI-HARI
KITA.
• ENGINEER PERANGKAT LUNAK MEMILIKI KEWAJIBAN MORAL UNTUK MEMBANGUN PERANGKAT LUNAK
TERPERCAYA YANG TIDAK MERUGIKAN ORANG LAIN.
• ENGINEER PERANGKAT LUNAK MELIHAT PERANGKAT LUNAK KOMPUTER, TERDIRI DARI PROGRAM,
DOKUMEN, DAN DATA YANG DIBUTUHKAN UNTUK MERANCANG DAN MEMBANGUN SISTEM.
• PENGGUNA PERANGKAT LUNAK HANYA MEMPERHATIKAN APAKAH PRODUK PERANGKAT LUNAK
MEMENUHI HARAPAN MEREKA DAN MEMPERMUDAH UNTUK MENYELESAIKAN TUGASNYA.
3
4. PERTANYAAN PENTING UNTUK PERANGKAT LUNAK
ENGINEER
• MENGAPA PERLU SANGAT LAMA UNTUK MENDAPATKAN PERANGKAT LUNAK?
• MENGAPA BIAYA PEMBANGUNAN SANGAT TINGGI?
• MENGAPA KITA TIDAK DAPAT MENEMUKAN SEMUA KESALAHAN SEBELUM KAMI MEMBERIKAN PERANGKAT
LUNAK KEPADA PELANGGAN KAMI?
• MENGAPA KITA MENGHABISKAN BANYAK WAKTU DAN UPAYA UNTUK MEMELIHARA
PROGRAM YANG ADA?
• MENGAPA KITA TERUS KESULITAN DALAM MENGUKUR KEMAJUAN
SEMENTARA PERANGKAT LUNAK DIKEMBANGKAN?
4
5. Apa itu perangkat lunak?
-Definisi:
Program komputer, prosedur, dan
kemungkinan dokumentasi dan data
terkait yang berkaitan dengan
pengoperasian sistem komputer
(Daftar Istilah Standar IEEE Terminologi
Rekayasa Perangkat Lunak, 1990)
5
6. Apa itu perangkat lunak?(…lanjutan)
-Definisi:
Perangkat lunak adalah:
(1)instruksi(program komputer) yang ketika dijalankan
memberikan fitur, fungsi, dan kinerja yang
diinginkan
(2)Struktur datayang memungkinkan program untuk
memanipulasi informasi secara memadai
(3)Dokumentasiyang menjelaskan operasi dan
penggunaan program
(Pressman 7e, Rekayasa Perangkat Lunak :
Pendekatan Praktisi, 2009)
6
7. KARAKTERISTIK PERANGKAT LUNAK
• PERANGKAT LUNAK ADALAH PRODUK DAN KENDARAAN UNTUK
MEMBERIKAN PRODUK (INFORMASI).
• PERANGKAT LUNAK DIRANCANG BUKAN DIPRODUKSI.
• PERANGKAT LUNAK TIDAK AUS, TAPI BURUK.
• INDUSTRI BERGERAK MENUJU KONSTRUKSI PERANGKAT LUNAK BERBASIS
KOMPONEN, NAMUN KEBANYAKAN PERANGKAT LUNAK MASIH DIBUAT CUSTOM.
7
8. DOMAIN APLIKASI PERANGKAT LUNAK
• PERANGKAT LUNAK SISTEM
• APLIKASI PERANGKAT LUNAK
• PERANGKAT LUNAK TEKNIK ATAU ILMIAH
• PERANGKAT LUNAK TERSEBUT
• PERANGKAT LUNAK LINI PRODUK (TERMASUK PERANGKAT LUNAK HIBURAN)
• APLIKASI WEB
• APLIKASI BERBASIS SELULER
• PERANGKAT LUNAK KECERDASAN BUATAN
➢.LATIHAN : CARI PERBEDAAN DIANTARANYA DAN CONTOH2NYA
8
9. REKAYASA PERANGKAT LUNAK
• TEKNIK PERANGKAT LUNAK ADALAH PEMBENTUKAN PRINSIP TEKNIK
SUARA UNTUK MENDAPATKAN PERANGKAT LUNAK YANG DAPAT
DIANDALKAN DAN EFISIEN DENGAN CARA YANG EKONOMIS.
• TEKNIK PERANGKAT LUNAK ADALAH APLIKASI PENDEKATAN YANG
SISTEMATIS, DISIPLIN, KUANTIFIKASI TERHADAP PENGEMBANGAN,
PENGOPERASIAN, DAN PEMELIHARAAN PERANGKAT LUNAK.
• TEKNIK PERANGKAT LUNAK MENCAKUP PROSES, TEKNIK
MANAJEMEN, METODE TEKNIS, DAN PENGGUNAAN ALAT.
9
11. TEKNIK PERANGKAT LUNAK – LAPISAN
TEKNOLOGI
Peralatan
Metode
Proses
Fokus yang berkualitas
11
12. Tiap Lantai tidak bisa
berdiri sendiri, masing-masingL-APISAN DI RPL
• CASE Tool, contoh: Rational Rose,
• Berbagai jenis IDE (Integrated
Development Environment) seperti:
VisualStudio, Eclipse, NetBeans
• Versi Software, contoh: CVS, SVN, GitHub,
masing-masing memiliki
ketergantungan antar-
lapisan.
Alat Bantu(Alat)
Metode/ Cara/ Aturan (Metode)
Proses(Proses)
Fokus pada Kualitas (Fokus kualitas)
12
15. • Metode Pengumpulan Kebutuhan Pengguna
• Berorientasi Tujuan, Sudut Pandang, dll
• Metode Analisis
• Terstruktur/OO
• Metode Perancangan
• Terstruktur/OO
• Metode Pengujian
• Kotak Hitam/Kotak Putih
LAPISAN DI
RPL
Alat Bantu(Alat)
Metode/ Cara/ Aturan (Metode)
Proses(Proses)
Fokus pada Kualitas (Fokus kualitas)
15
16. LAPISAN DI
RPL
• Model Air Terjun
• Model Proses Inkremental/Inkremental
• Model spiral
• Pengembangan Agile
• Pengembangan Aplikasi yang Cepat
Alat Bantu(Alat)
Metode/ Cara/ Aturan (Metode)
Proses(Proses)
Fokus pada Kualitas (Fokus kualitas)
16
17. LAPISAN DI
RPL
• Six Sigma
• Manajemen Kualitas Total
• CMM (Model Kematangan Kemampuan)
• ISO/IEC 9126
Alat Bantu(Alat)
Metode/ Cara/ Aturan (Metode)
Proses(Proses)
Fokus pada Kualitas (Fokus kualitas)
17
18. ALAT KASUS
(PERANGKAT LUNAK BERBANTUAN KOMPUTER
REKAYASA)
• SISTEM PERANGKAT LUNAK YANG DIMAKSUDKAN UNTUK MEMBERIKAN
DUKUNGAN OTOMATIS UNTUK KEGIATAN PROSES PERANGKAT LUNAK
• SISTEM KASUS SERING DIGUNAKAN UNTUK METODE DUKUNGAN
• HURUF BESAR
• ALAT PENDUKUNG PROSES AWAL KEGIATAN
PERSYARATAN DAN DESAIN
• KASUS RENDAH
• ALAT-ALAT UNTUK MENDUKUNG AKTIVITAS DI KEMUDIAN SEPERTI PEMROGRAMAN,
DEBUGGING DAN PENGUJIAN
➢.
LATIHAN : apa kesimpulan yang dapat diambil dari pengertian
SOFTWARE ENGINEERING
* Rekayasa Perangkat Lunak 7thed, Ian Sommer1v8tidak
19. APAMETODE TEKNIK PERANGKAT LUNAK?
• PENDEKATAN TERSTRUKTUR UNTUK PENGEMBANGAN PERANGKAT LUNAK
YANG TERMASUKMODEL SISTEM ,NOTASI ,ATURAN ,SARAN DESAIN DAN
PANDUAN PROSES .
• DESKRIPSI MODEL
• DESKRIPSI MODEL GRAFIS YANG HARUS DIPRODUKSI
• ATURAN
• REKOMENDASI
• PANDUAN PROSES
• KENDALA YANG DITERAPKAN PADA MODEL SISTEM
• SARAN TENTANG PRAKTEK DESAIN YANG BAIK
• KEGIATAN APA YANG HARUS DIIKUTI
➢.
LATIHAN : SIMPULKAN APA YANG DIMAKSUD DENGAN METODA2
REKAYASA PERANGKAT LUNAK
19
* Rekayasa Perangkat Lunak 7thed, Ian Sommerville
20. KERANGKA PROSES PERANGKAT LUNAK UMUM
• KOMUNIKASI
• ANALISIS SISTEM VS. PENGGUNA
• ANALISIS SISTEM VS. PROGRAMMER
• PERENCANAAN
• BIAYA, WAKTU, SUMBER DAYA MANUSIA
• PEMODELAN
• PENDEKATAN TERSTRUKTUR
• PENDEKATAN BERORIENTASI OBYEK
• KONSTRUKSI
• KODE DAN PENGUJIAN
• PENYEBARAN
• PENGIRIMAN PERANGKAT LUNAK KEPADA PELANGGAN
20
21. KERANGKA PROSES PERANGKAT LUNAK
AKTIVITAS TAMBAHAN
• PELACAKAN DAN KONTROL PROYEK PERANGKAT LUNAK
• MENGIZINKAN TIM PERANGKAT LUNAK UNTUK MENILAI KEMAJUAN TERHADAP RENCANA PROYEK
DAN MELAKUKAN TINDAKAN YANG DIPERLUKAN UNTUK MEMPERTAHANKAN JADWAL.
• MANAJEMEN RISIKO
• MENILAI RISIKO YANG DAPAT MEMPENGARUHI HASIL PROYEK ATAU
KUALITAS PRODUK.
• JAMINAN KUALITAS PERANGKAT LUNAK
• MENDEFINISIKAN DAN MELAKUKAN KEGIATAN YANG DIPERLUKAN UNTUK MEMASTIKAN KUALITAS PERANGKAT
LUNAK.
• TINJAUAN TEKNIS
• MENILAI PRODUK KERJA TEKNIK PERANGKAT LUNAK DALAM UPAYA UNTUK
MENGUNGKAP DAN MENGHAPUS KESALAHAN SEBELUM DILAKUKAN KE AKTIVITAS
BERIKUTNYA.
21
22. KERANGKA PROSES PERANGKAT LUNAK
KEGIATAN TAMBAHAN (Lanjutan)
• PENGUKURAN
• MENDEFINISIKAN DAN MENGUMPULKAN PROSES, PROYEK, DAN UKURAN PRODUK YANG MEMBANTU
TIM DALAM MEMBERIKAN PERANGKAT LUNAK YANG MEMENUHI KEBUTUHAN PEMANGKU
KEPENTINGAN; DAPAT DIGUNAKAN BERSAMA DENGAN SEMUA AKTIVITAS KERANGKA DAN PAYUNG
LAINNYA.
• MANAJEMEN KONFIGURASI PERANGKAT LUNAK
• MENGELOLA EFEK PERUBAHAN MELALUI PROSES PERANGKAT LUNAK.
• MANAJEMEN PENGGUNAAN KEMBALI
• MENDEFINISIKAN KRITERIA UNTUK PENGGUNAAN KEMBALI PRODUK KERJA (TERMASUK KOMPONEN
PERANGKAT LUNAK) DAN MEMBENTUK MEKANISME UNTUK MENCAPAI KOMPONEN YANG DAPAT
DIGUNAKAN KEMBALI.
• PERSIAPAN DAN PRODUKSI PRODUK KERJA
• MENCAKUP KEGIATAN YANG DIPERLUKAN UNTUK MENCIPTAKAN PRODUK KERJA SEPERTI
MODEL, DOKUMEN, LOG, FORMULIR, DAN DAFTAR.
22
23. PRINSIP INTI PRAKTEK PERANGKAT LUNAK
• ALASAN SEMUANYA ADA
• PERANGKAT LUNAK ADAUNTUK MEMBERIKAN NILAIUNTUK PENGGUNANYA
• TETAP SEDERHANA BODOH (KISS)
• TETAPKAN DESAIN SEDERHANA MUNGKIN, TAPI TIDAK SEDERHANA
• MEMPERTAHANKAN VISI
• VISI YANG JELASPENTING UNTUK KEBERHASILAN PROYEK PERANGKAT LUNAK APAPUN
• KAMI PRODUSEN, ORANG LAIN AKAN MENGKONSUMSI
• SELALU JELASKAN, DESAIN, DAN IMPLEMENTASIKAN MENGETAHUI BAHWA ORANG LAIN HARUS MEMAHAMI APA YANG TELAH ANDA LAKUKAN
UNTUK MELAKUKAN TUGASNYA
• TERBUKA UNTUK MASA DEPAN
• MENJADITERBUKA UNTUK PERUBAHAN MASA DEPAN, JANGAN KODE DIRI SENDIRI MENJADI SUDUT
• RENCANA UNTUK DIGUNAKAN KEMBALI!
• PERENCANAAN KE DEPANPENGGUNAAN KEMBALIMENGURANGI BIAYA DAN MENINGKATKAN NILAI KEDUA KOMPONEN YANG DAPAT DIGUNAKAN KEMBALI
DAN SISTEM YANG MEMBUTUHKANNYA
• BERPIKIR PERTAMA!
• MENEMPATKAN PIKIRAN YANG JELAS SEBELUM TINDAKAN APAPUN HAMPIR SELALU MEMBERIKAN HASIL YANG LEBIH BAIK
➢.
LATIHAN : BUAT URAIAN PENDALAMAN MASING2 BUTIR DIATAS
23
25. SISTEM – DEFINISI
Kamus WEBSTER
• SEBUAH SET ATAUPENGATURAN BARANGSEHUBUNGAN DENGAN
MEMBENTUK KESATUAN ATAU KESELURUHAN ORGANIK
• SET FAKTA, PRINSIP, ATURAN, DLL.,TERKLASIFIKASI DAN TERATUR
DALAM BENTUK YANG TERTULIS SEHINGGA MENUNJUKKAN
RENCANA LOGIS YANG MENGHUBUNGKAN BERBAGAI BAGIAN
• METODE ATAU RENCANA KLASIFIKASI
ATAU PENATAAN
• CARA YANG DIDIRIKAN UNTUK MELAKUKAN
SESUATU; METODE; PROSEDUR….
• …..
• ….
25
IF2250 DRPL - JIKA ITB
26. SISTEM BERBASIS KOMPUTER
[PRE2007]
• SEBUAH SET ATAU PENGATURAN ELEMEN YANG DIORGANISASI
UNTUK MENCAPAI BEBERAPA TUJUAN YANG DITETAPKAN
DENGAN MEMPROSES INFORMASI
• HASIL:
UNTUK MENDUKUNG FUNGSI USAHA ATAU MENGEMBANGKAN PRODUK
YANG DAPAT DIJUAL UNTUK MENDAPATKAN PENDAPATAN USAHA
• UNTUK MENCAPAI TUJUAN, SISTEM BERBASIS KOMPUTER
MENGGUNAKAN BERBAGAI MACAMELEMEN SISTEM
26
IF2250 DRPL - JIKA ITB
27. SISTEM BERBASIS KOMPUTER
ELEMEN
• PERANGKAT LUNAK
• PERANGKAT KERAS
• RAKYAT
• DATA
• DOKUMENTASI
• PROSEDUR
*SEPA6thed, Roger S. Pressman
27
IF2250 DRPL - JIKA ITB
28. HIERARKI TEKNIK SISTEM
• PANDANGAN DUNIA→WV = {D1, D2, D3, …, Dn}
• TERDIRI DARI SET DOMAIN (DSaya) YANG MASING-MASING
DAPAT MENJADI SISTEM ATAU SISTEM SYSTEM
• TAMPILAN DOMAIN→DV = {E1, E2, E3, …, EM}
• TERDIRI DARI ELEMEN KHUSUS (EJ) YANG MASING-
MASING BERPERAN DALAM MEMENUHI TUJUAN
DAN TUJUAN DOMAIN ATAU KOMPONEN
• TAMPAK ELEMEN→EV = {C1, C2, C3, …, CK}
• SETIAP ELEMEN DILAKSANAKAN DENGAN MENETAPKAN
KOMPONEN TEKNIS (CK) YANG MENCAPAI FUNGSI YANG
DIPERLUKAN UNTUK ELEMEN
• LIHAT DETAIL
*SEPA6thed, Roger S. Pressman
28
IF2250 DRPL - JIKA ITB
29. HIERARKI TEKNIK SISTEM
Bisnis atau
domain produk Pemandangan Dunia
domain yang diminati
Tampilan Domain
elemen sistem
Tampilan Elemen
Tampilan Detail
29
IF2250 DRPL - JIKA ITB
30. TEKNIK PRODUK
• SASARAN
• UNTUK MENJALANKAN KEINGINAN PELANGGAN UNTUK SET KEMAMPUAN
YANG DITENTUKAN MENJADI PRODUK KERJA
• HIRARCHY
• TEKNIK PERSYARATAN (PANDANGAN DUNIA)
• TEKNIK KOMPONEN (TAMPILAN DOMAIN)
• ANALISIS DAN PEMODELAN DESAIN (ELEMEN VIEW -ENGINEER PERANGKAT
LUNAK)
• KONSTRUKSI DAN INTEGRASI (PANDANGAN RINCI -
ENGINEER PERANGKAT LUNAK)
*SEPA6thed, Roger S. Pressman
30
IF2250 DRPL - JIKA ITB
31. Hirarki Rekayasa Produk
Produk Lengkap Rekayasa Persyaratan
(Tampilan Dunia)
kemampuan
Perangkat keras Perangkat lunak
Teknik Komponen
(Tampilan Domain)
persyaratan pemrosesan
Data Fungsi Perilaku Analisis dan Desain
pemodelan
(Tampilan Elemen)
Konstruksi &
Integrasi
(Tampilan Detail)
program
komponen
31
IF2250 DRPL - JIKA ITB
32. PROSES PERANGKAT LUNAK
• KOMUNIKASI (KOMUNIKASI)
• ANTARA SISTEM ANALIS DENGAN PENGGUNA
• ANTARA SISTEM ANALIS DENGAN PEMROGRAM
• PERENCANAAN (PERENCANAAN)
• PERENCANAAN BIAYA, WAKTU DAN SUMBER DAYA (MANUSIA/BARANG)
• PEMODELAN (PEMODELAN)
• PENDEKATAN TERSTRUKTUR (PENDEKATAN TERSTRUKTUR)
• PENDEKATAN BERORIENTASI OBJEK (PENDEKATAN BERORIENTASI OBJEK)
• KONSTRUKSI (KONSTRUKSI)
• PEMROGRAMAN/PENGUJIAN (CODING DAN PENGUJIAN)
• PENYEBARAN
• PROGRAM PENYERAHAN DAN INSTALASI KE PENGGUNA/PELANGGAN (USER/CUSTOMER)
32
37. PROGRAM KODE SETIAP UNIT HARUS DIUJI
(PENGUJIAN UNIT)
Menyelesaikan
Persyaratan
R1 R2 R3
R1.1 R1.2 R1.3 R2.1 R2.2 R3.1 R3.2 R3.3
D1.1 D1.2 D1.3 D2.1 D2.2 D3.1 D3.2 D3.3
DD1 DD2 DD3 DD4 DD5 DD6 DD7 DD8 DD9 DD10
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10
38. SETIAP UNIT PROGRAM HARUS DIGABUNG
DAN HASIL PENGGABUNGANNYA DI UJI
KEMBALI
(TES INTEGRASI)
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10
Integrasi
Tes1
Integrasi
Tes2
Integrasi
Tes3
Integrasi
Tes4
Setiap hasil integrasi akan diuji, hingga kita mendapatkan
pengujian yang menjadi, artinya semua unit sudah
satu, dan dilakukan pengujian secara keseluruhan 38
39. PENGUJIAN LENGKAP DI DEPAN CALON PENGGUNA
DISEBUT PENGUJIAN PENERIMAAN PENGGUNA
(UJI PENERIMAAN PENGGUNA)
Aplikasi Jadi
Kemasan1 Kemasan2 Kemasan3 Kemasan4
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10
Integrasi
Tes1
Integrasi
Tes2
Integrasi
Tes3
Integrasi
Tes4
39
Tes penerimaan pengguna
40. AKTIVITAS PENGEMBANGAN PERANGKAT
LUNAK MENGGUNAKAN
PROSES PERANGKAT LUNAK
(Alur Proses Linier)
komunikasi Perencanaan pemodelan konstruksi Penyebaran
Inisiasi Proyek
Pengumpulan Kebutuhan
perkiraan
Penjadwalan
Pelacakan
Analisis
Desain
Pemrograman
Pengujian
Pengiriman
dukungan
Masukan
40
41. komunikasi Perencanaan pemodelan konstruksi Penyebaran
(Alur Proses Iteratif)
Perencanaan
pemodelan
komunikasi
(Proses evolusi
mengalir)
Penyebaran konstruksi
Rilis versi ke-n
komunikasi Perencanaan
(Alur proses paralel) pemodelan
41
konstruksi Penyebaran
42. MODEL AIR TERJUN
Rekayasa
kebutuhan
komunikasi
PErencanaan
Analisa Kebutuhan
pemodellan
Perancangan
Umum/Rinci konstruksi
Pemrograman dan
Pengujian
penyebaran
Tiap tahap harus selesai sebelum
pindah ke tahap berikutnya.
Demikian juga tidak bisa langsung
kembali ke dua tahap di
belakang.
Penyebaran
perawatan
42
43. MODEL AIR TERJUN
Rekayasa
kebutuhan
komunikasi
PErencanaan
Analisa Kebutuhan
pemodellan
Perancangan
Umum/Rinci konstruksi
Pemrograman dan
Pengujian
penyebaran
Tiap tahap harus selesai sebelum
pindah ke tahap berikutnya.
Demikian juga tidak bisa langsung
kembali ke dua tahap di
belakang.
Penyebaran
perawatan
43
44. AIR TERJUN KARAKTERISTIK
• PROSES DIJALANKAN SECARA SEKUENSIAL DARI PENGUMPULAN
KEBUTUHAN HINGGA PERAWATAN
• COCOK UNTUK SISTEM YANG SUDAH TERDEFINISI BAIK ATAU SISTEM
YANG MENGUTAMAKAN KESELAMATAN (SAFETY)
• PENGEMBANGAN AUTO-PILOT UNTUK PESAWAT HARUS JELAS DAN LENGKAP
DI AWAL, JADI PROGRAM HARUS SUDAH LENGKAP TIDAK BISA HANYA
SEBAGIAN YANG DI INSTALASI DI PESAWAT.
44