KOM 331 3(2-3) – Rekayasa Perangkat Lunak
description
Transcript of KOM 331 3(2-3) – Rekayasa Perangkat Lunak
![Page 1: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/1.jpg)
KOM 331 3(2-3) –
Rekayasa Perangkat LunakPanji Wasmana
Sony Hartono Wijaya – [email protected]
Departemen Ilmu Komputer IPB2009
updated : 25 Februari 2009
![Page 2: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/2.jpg)
Pertemuan 1 –
IntroductionPanji Wasmana
Sony Hartono Wijaya – [email protected]
Departemen Ilmu Komputer IPB2009
updated : 25 Februari 2009
![Page 3: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/3.jpg)
KENAPA PERLU REKAYASA PERANGKAT LUNAK ?DEFINISI REKAYASA PERANGKAT LUNAK
PRODUK PERANGKAT LUNAK
PROSES PERANGKAT LUNAK MATERI KULIAH
![Page 4: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/4.jpg)
KENAPA PERLU REKAYASA PERANGKAT LUNAK ?DEFINISI REKAYASA PERANGKAT LUNAKPRODUK PERANGKAT LUNAKPROSES PERANGKAT LUNAK
MATERI KULIAH
![Page 5: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/5.jpg)
Materi Kuliah
Pendahuluan
Analisis
Perancangan
Metode Berorientasi Obyek
Implementasi dan Pengujian
Maintenance
![Page 6: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/6.jpg)
Menguasai algoritma pemrograman dan perancangan basis data
Mengembangkan perangkat lunak secara sistematis dan
terukur dengan mengimplementasikan
metode-metode pengembangan perangkat lunak yang klasik maupun
terkini
Tujuan kuliah
![Page 7: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/7.jpg)
ReferensiSommerville I. 2004 & 2006. Software Engineering .7th or 8th Edition, Addison-Wesley, Harlow, Essex,UK
Pressman RS. 2005. Software Engineering. 6th Edition. McGraw-Hill
Pilone D. & Miller R. 2008. Head First Software Development. O’Reilly
![Page 8: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/8.jpg)
ReferensiBennett S. et al. 2002.Object Oriented System Analysis and Design Using UML. McGraw-Hill
![Page 9: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/9.jpg)
Materi Kuliah dan Diskusi• www.ilkom.fmipa.ipb.ac.id/
kulon
• Enrollment key : rpl0809
• Username dan First Name diisi dengan nomor NRP. – Mahasiswa yang tidak
memenuhi ketentuan tersebut tidak akan diterima menjadi anggota kuliah online RPL
![Page 10: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/10.jpg)
![Page 11: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/11.jpg)
![Page 12: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/12.jpg)
Penilaian dan Kontrak Perkuliahan• Semester Ganjil 2009/2010
– Kuliah : Selasa, 19.00 – 20.40 – KOM Baranangsiang– Praktikum :
Rabu dan Kamis, 19.00 – 21.00 - Lab.
• Penilaian :– UTS : 30%– UAS : 30%– Project, Praktikum dan Tugas: 40% (Progress 10%, Presentasi 20%)
• Ujian perbaikan menyusul , maksimal 1 minggu setelah jadwal ujian yang telah ditetapkan
• Toleransi keterlambatan maksimal 15 menit
![Page 13: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/13.jpg)
KENAPA PERLU REKAYASA PERANGKAT LUNAK ?DEFINISI REKAYASA PERANGKAT LUNAKPRODUK PERANGKAT LUNAKPROSES PERANGKAT LUNAK MATERI KULIAH
![Page 14: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/14.jpg)
Pengembangan Perangkat Lunak
memerlukan effort yang tinggi !
Membedakan sistem sederhana dan
sistem kompleks
Problem pada umumnya kompleks
Kenapa perlu RPL ?
![Page 15: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/15.jpg)
Ukuran Perangkat Lunak yang besar
UNIX mengandung 4 juta baris kodeWindows 2000
mengandung 108 baris kode
Menghindari error yang disebabkan perangkat lunak
Kenapa perlu RPL ?
![Page 16: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/16.jpg)
Hilangnya pesawat ruang angkasa Voyager
Banyak orang terbunuh karena
radiasi mesin
Beberapa pesawat penumpang (umum)
tertembak saat perang teluk
Kejadian yang disebabkan error perangkat lunak
![Page 17: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/17.jpg)
Software bug - Famous computer bugsSoftware bug - Space exploration• NASA Mariner 1 went off-course during launch, due to a
missing 'bar' in its FORTRAN software (July 22, 1962).[6]• NASA Apollo 11 landing problem (July 20, 1969).• NASA Voyager 2 (January 25, 1986).• Phobos 1 lost (September 10, 1988).• ESA Ariane 5 Flight 501 self-destruction 40 seconds after
takeoff (June 4, 1996).• NASA Mars Climate Orbiter destroyed due to incorrect
orbit insertion (September 23, 1999).• Mars Polar Lander lost (December 3, 1999).• NASA Mars Rover freezes due to too many open files in
flash memory (January 21, 2004).
Software bug - Medical• The Therac-25 accidents (1985-1987), quite possibly the
most serious computer-related failure ever in terms of human life lost.
Software bug - Telecommunications• AT&T long distance network crash (January 15, 1990).
Software bug - Computing• Pentium FDIV bug, resulting in inaccuracies in certain
floating point division (FDIV) operations.• Pentium F0 bug, causing the processor to stop under
certain instructions.• The year 2000 problem, popularly known as the "Y2K
bug", spawned fears of worldwide economic collapse and an industry of consultants providing last-minute fixes.
Software bug - Military• The MIM-104 Patriot bug, which resulted in the
deaths of 28 Americans in Dharan, Saudi Arabia (February 25, 1991).
• Chinook crash on Mull of Kintyre
Software bug - Video games• The Missingno. and Glitch City bugs, found in the
Pokémon series• The Minus world in NES version of Super Mario
Brothers
http://www.experiencefestival.com/a/Software_bug_-_Famous_computer_bugs/id/4880583
![Page 18: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/18.jpg)
KENAPA PERLU REKAYASA PERANGKAT LUNAKDEFINISIREKAYASA PERANGKAT LUNAK
PRODUKPERANGKAT LUNAK
PROSES PERANGKAT LUNAKMATERI KULIAH
![Page 19: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/19.jpg)
Definisi Rekayasa Perangkat Lunak
• Disiplin ilmu rekayasa yang berhubungan dengan semua aspek yang terkait dengan pembuatan perangkat lunak
• Harus melakukan pendekatan yang sistematis dan terorganisasi dalam menyelesaikan pembuatan perangkat lunak
• Harus menggunakan alat bantu dan teknik yang sesuai bergantung dengan problem yang akan dipecahkan dan ketersediaan sumber daya
Software Engineer
Rekayasa Perangkat
Lunak (Software
Engineering)
![Page 20: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/20.jpg)
Perbedaan Rekayasa Perangkat Lunak dan Rekayasa Sistem ?
• Rekayasa Perangkat Lunak adalah bagian dari Rekayasa Sistem
• Rekayasa Sistem (mis: Sistem Informasi) terkait dengan semua aspek pengembangan sistem berbasis komputer yang meliputi :– Perangkat keras (Hardware),– Jaringan (Netware) – Perangkat lunak (Software)– Data (dataware)– Manusia (brainware)
• System engineers melibatkan kegiatanSpesifikasi sistem, perancangan arsitektur, integrasi dan deployment
![Page 21: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/21.jpg)
KENAPA PERLU REKAYASA PERANGKAT LUNAKDEFINISI REKAYASA PERANGKAT LUNAK
PRODUK PERANGKAT LUNAK
PROSES PERANGKAT LUNAKMATERI KULIAH
![Page 22: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/22.jpg)
Apakah Perangkat Lunak itu ?• Perangkat Lunak adalah suatu kumpulan objek-objek
yang membentuk sebuah konfigurasi yang terdiri dari: – program – dokumen– data ...
![Page 23: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/23.jpg)
What is Software?
• Software is engineered, tidak direkayasa dengan metode klasik (1 design to all)
• Software doesn’t wear out, tidak akan lekang dimakan waktu, kecuali spesifikasi kebutuhan berubah.
• Software is complex, multidisiplin, multi aspek.
![Page 24: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/24.jpg)
Waktu penggunaan vs. Tingkat kegagalan
idealized curve
change
actual curve
Failurerate
Time
increased failurerate due to side effects
![Page 25: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/25.jpg)
Biaya perubahan
Definition Development After release
1x
1.5-6x
60-100x
![Page 26: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/26.jpg)
Aplikasi Perangkat Lunak q Perangkat Lunak Sistemq Perangkat Lunak Real timeq Perangkat Lunak Bisnisq Perangkat Lunak Teknik atau Sainsq Embedded Softwareq Perangkat Lunak PCq Perangkat Lunak AIq Aplikasi Web
![Page 27: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/27.jpg)
Perangkat Lunak Sistem
q Sistem Operasiq Kompilatorq Perangkat Lunak Utilitasq Anti Virus
![Page 28: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/28.jpg)
Perangkat Lunak Real Time
q Perangkat Lunak Pengendali Reaktor Kimiaq Perangkat Lunak Pengendali Pesawat Terbangq Perangkat Lunak untuk Vehicle Tracking Systemq dll
![Page 29: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/29.jpg)
Perangkat Lunak Bisnis
q Cash Registerq Sistem Inventoryq Sistem Informasi Akuntansiq Sistem Informasi Eksekutifq dll
![Page 30: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/30.jpg)
Embedded Software
q Smart Cardq Microwaveq dll
![Page 31: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/31.jpg)
Perangkat Lunak PC
q Pengolah Kataq Pengolah Dataq Presentasiq dll
![Page 32: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/32.jpg)
Perangkat Lunak AI
q Sistem Pakarq Optimasiq Gameq Robot
![Page 33: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/33.jpg)
SE in plain text• Serangkaian metode yang diterapkan untuk
menghasilkan Software yang berkualitas.
• Disiplin Ilmu yang mendasari arsitektur sebuah aplikasi
• Berkualitas memiliki kedekatan arti dengan pemuasan konsumen
![Page 34: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/34.jpg)
Studi Kasus
Tom the adventure Guys…
![Page 35: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/35.jpg)
Siapakah Tom?• Seorang cowo macho!!• Memiliki pekerjaan sebagai trail guide• Aktif dalam berbagai perkumpulan• Pengguna aktif Internet
![Page 36: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/36.jpg)
![Page 37: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/37.jpg)
Komponen dalam project SE
• Pendanaan• Waktu
• Complexity dan kualitas
![Page 38: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/38.jpg)
Apa yang biasanya terjadi?
![Page 39: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/39.jpg)
![Page 40: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/40.jpg)
![Page 41: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/41.jpg)
![Page 42: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/42.jpg)
Pelajaran dari studi kasus• Mind reader?• Tidak ada metode dalam rekayasa?• Team?• Optimasi kerja?• Komunikasi dengan customer?
![Page 43: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/43.jpg)
![Page 44: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/44.jpg)
Diskusi dan Pertanyaan?
![Page 45: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/45.jpg)
![Page 46: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/46.jpg)
Tantangan Proses PengembanganPerangkat Lunak
q Bagaimana kita bisa menjamin kualitas perangkat lunak yang kita bangun ?
q Bagaimana kita tetap dapat memenuhi permintaan yang meningkat tapi tetap mampu mengontrol budget ?
q Bagaimana dapat menghindari keterlambatan waktu pengembangan ?
q Bagaimana kita dapat dengan sukses memperkenalkan teknologi baru ?
![Page 47: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/47.jpg)
Jawabannya ???
![Page 48: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/48.jpg)
P R O S E S !
![Page 49: KOM 331 3(2-3) – Rekayasa Perangkat Lunak](https://reader036.fdocuments.net/reader036/viewer/2022062411/56816791550346895ddcc44e/html5/thumbnails/49.jpg)
Terima Kasih
Minggu Depan :• Process
•Go deep with Tom