Introduction

advertisement
KOM 331 3(2-3) –
Rekayasa Perangkat Lunak
Panji Wasmana
Sony Hartono Wijaya – sony@ipb.ac.id
Departemen Ilmu Komputer IPB
2009
updated : 25 Februari 2009
Pertemuan 1 –
Introduction
Panji Wasmana
Sony Hartono Wijaya – sony@ipb.ac.id
Departemen Ilmu Komputer IPB
2009
updated : 25 Februari 2009
MATERI KULIAH
KENAPA PERLU
REKAYASA
PERANGKAT
LUNAK ?
DEFINISI
REKAYASA
PERANGKAT
LUNAK
PROSES
PERANGKAT
LUNAK
PRODUK
PERANGKAT
LUNAK
MATERI KULIAH
KENAPA PERLU
REKAYASA
PERANGKAT
LUNAK ?
DEFINISI
REKAYASA
PERANGKAT
LUNAK
PROSES
PERANGKAT
LUNAK
PRODUK
PERANGKAT
LUNAK
Materi Kuliah
Tujuan kuliah
Referensi
Sommerville 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
Referensi
Bennett S. et al. 2002.
Object Oriented System Analysis and Design
Using UML. McGraw-Hill
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
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
MATERI KULIAH
KENAPA PERLU
REKAYASA
PERANGKAT
LUNAK ?
PROSES
PERANGKAT
LUNAK
DEFINISI
REKAYASA
PERANGKAT
LUNAK
PRODUK
PERANGKAT
LUNAK
Kenapa perlu RPL ?
Kenapa perlu RPL ?
Kejadian yang disebabkan error perangkat lunak
Software bug - Famous computer
bugs
Software 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
MATERI KULIAH
KENAPA PERLU
REKAYASA
PERANGKAT
LUNAK
DEFINISI
REKAYASA
PERANGKAT
LUNAK
PROSES
PERANGKAT
LUNAK
PRODUK
PERANGKAT
LUNAK
Definisi Rekayasa Perangkat Lunak
Rekayasa
Perangkat
Lunak
(Software
Engineering)
• Disiplin ilmu rekayasa yang berhubungan
dengan semua aspek yang terkait dengan
pembuatan perangkat lunak
Software
Engineer
• 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
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 kegiatan
Spesifikasi sistem,
perancangan arsitektur,
integrasi dan deployment
MATERI KULIAH
KENAPA PERLU
REKAYASA
PERANGKAT
LUNAK
DEFINISI
REKAYASA
PERANGKAT
LUNAK
PROSES
PERANGKAT
LUNAK
PRODUK
PERANGKAT
LUNAK
Apakah Perangkat Lunak itu ?
• Perangkat Lunak adalah suatu kumpulan objek-objek
yang membentuk sebuah konfigurasi yang terdiri
dari:
– program
– dokumen
– data ...
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.
Waktu penggunaan vs. Tingkat
kegagalan
Biaya perubahan
Aplikasi Perangkat Lunak
 Perangkat Lunak Sistem
 Perangkat Lunak Real time
 Perangkat Lunak Bisnis
 Perangkat Lunak Teknik atau Sains
 Embedded Software
 Perangkat Lunak PC
 Perangkat Lunak AI
 Aplikasi Web
Perangkat Lunak Sistem
 Sistem Operasi
 Kompilator
 Perangkat Lunak Utilitas
 Anti Virus
Perangkat Lunak Real Time
 Perangkat Lunak Pengendali Reaktor Kimia
 Perangkat Lunak Pengendali Pesawat Terbang
 Perangkat Lunak untuk Vehicle Tracking System
 dll
Perangkat Lunak Bisnis
 Cash Register
 Sistem Inventory
 Sistem Informasi Akuntansi
 Sistem Informasi Eksekutif
 dll
Embedded Software
 Smart Card
 Microwave
 dll
Perangkat Lunak PC
 Pengolah Kata
 Pengolah Data
 Presentasi
 dll
Perangkat Lunak AI
 Sistem Pakar
 Optimasi
 Game
 Robot
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
Studi Kasus
Tom the adventure Guys…
Siapakah Tom?
•
•
•
•
Seorang cowo macho!!
Memiliki pekerjaan sebagai trail guide
Aktif dalam berbagai perkumpulan
Pengguna aktif Internet
Komponen dalam project SE
• Pendanaan
• Waktu
• Complexity dan kualitas
Apa yang biasanya terjadi?
Pelajaran dari studi kasus
•
•
•
•
•
Mind reader?
Tidak ada metode dalam rekayasa?
Team?
Optimasi kerja?
Komunikasi dengan customer?
Diskusi dan Pertanyaan?

Tantangan Proses Pengembangan
Perangkat Lunak
Bagaimana kita bisa menjamin kualitas perangkat
lunak yang kita bangun ?
Bagaimana kita tetap dapat memenuhi permintaan
yang meningkat tapi tetap mampu mengontrol
budget ?
Bagaimana dapat menghindari keterlambatan waktu
pengembangan ?
Bagaimana kita dapat dengan sukses memperkenalkan
teknologi baru ?
Jawabannya ???
PROSES !
Terima Kasih
Minggu Depan :
• Process
•Go deep with Tom 
Download