Dokumen ini membahas rekayasa perangkat lunak, dengan tujuan membantu mahasiswa merancang, membangun, dan memperbaiki perangkat lunak menggunakan bahasa pemrograman dan model-model perangkat lunak. Materi yang dibahas meliputi produk, proses, metrik, model proses, dan pengujian perangkat lunak.
2. TUJUAN
Mahasiswa mampu mendesain,
membangun dan menangani kesalahan
yang terjadi pada perangkat lunak
dengan menggunakan Bahasa
pemrograman serta
mengimplementasikan model-model
perangkat lunak yang ada.
3. KOMPETENSIYANG DIBINA
Produk Perangkat Lunak
Proses Perangkat Lunak
Metrik Perangkat Lunak
Model Proses Perangkat Lunak
Pengujian Perangkat Lunak
4. BUKU
BUKU UTAMA:
Roger S. Pressman, Software Engineering – A
Practitioner’s Approach 8th, McGraw-Hill, 2015.
BUKU PENDAMPING:
Rod Stephens, Beginning Software Engineering,
Wrox-Wiley, 2015.
Rajib Mall, Fundamentals of Software
Engineering – Fourth Edition, PHI Learning
Private, 2014.
8. PENDAHULUAN
HARDWARE
(Mainboard,VGA, RAM, Hard Disk, Processor,
LAN Card, Keyboard, Mouse, dan lain-lain)
COMPILER; EDITOR; INTERPRETER;
OPERATING SYSTEM
(Windows, Linux, Netware, dll)
APPLICATION
(Sistem Informasi Geografis,AplikasiGo-Jek,
Aplikasi Kompresi Data, Aplikasi Permainan)
PERANGKAT LUNAK
APLIKASI
PERANGKAT LUNAK
SISTEM
PERANGKAT KERAS
10. PERAN PERANGKAT LUNAK
Beberapa hal yang sering muncul pada dunia
industri sehubungan dengan pengembangan
perangkat lunak:
Why does it take so long to get software
finished ? (Kenapa dibutuhkan waktu lama
untuk mengembangkan perangkat lunak)
Why are development cost so high ? (Kenapa
harga perangkat lunak mahal)
11. PERAN PERANGKAT LUNAK
Beberapa hal yang sering muncul pada dunia
industri sehubungan dengan pengembangan
perangkat lunak (lanjut):
Why can’t we find all errors before we give to the
software customers? (Kenapa tidak bisa ditemukan
kesalahan yang ada pada perangkat lunak sebelum
didistribusikan pada pengguna)
Why do we continue to have difficulty in measuring
progress as software is being developed? (Kenapa
sangat sulit untuk mengetahui progres dari
pengembangan perangkat lunak)
12. KARAKTERISTIK PERANGKAT
LUNAK
Software is developed or
engineered, it is not
manufactured in the classical
sense
(Perangkat lunak
dikembangkan atau
direkayasa, bukan dibuat
dalam pengertian klasik)
Software doesn’t were out
(Perangkat lunak tidak
pernah usang)
Altough the industry is moving toward
component-based assembly, most
software continues to be custom build
(Mesikpun industry bergerak
berbasiskan komponen, sebagian
perangkat lunak dikembangkan sesuai
pesanan)
15. KARAKTERISTIK PERANGKAT
LUNAK
A software component should be design and
implemented so that it can be reused in many
different programs.
Komponen perangkat lunak harus dirancang
dan diimplementasikan sehingga dapat
digunakan Kembali dalam berbagai program.
16. KRISIS PERANGKAT LUNAK
Krisis yang dimaksud adalah Krisis yang
berhubungan dengan pengembangan perangkat
lunak:
Kesulitan menulis program komputer yang berguna dan efisien
dalam waktu yang diperlukan.
Krisis perangkat lunak yang disebabkan oleh semakin cepatnya
perkembangan komputer dan kompleksitas masalah yang dapat
diatasi.
Penyebab krisis berhubungan dengan keseluruhan kompleksitas
perangkat keras dan proses pengembangan perangkat lunak.
17. KRISIS PERANGKAT LUNAK
Beberapa ragam Krisis yang terjadi:
Proyek berjalan melebihi anggaran.
Proyek berjalan dari waktu ke waktu.
Perangkat lunak sangat tidak efisien.
Perangkat lunak berkualitas rendah.
Perangkat lunak sering tidak memenuhi persyaratan.
Proyek tidak dapat dikelola dan kode sulit dipelihara.
Perangkat lunak tidak pernah dikirimkan.
18. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
MITOS
PELANGGAN
MITOS
PRAKTISI
MITOS
MANAJEMEN
MITOS PERANGKAT
LUNAK
(Software Myths)
19. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
Standard Book
Dengan adanya buku pedoman, manajer menganggap sudah
dapat menggantikan sebuah perangkat lunak.
Have New Development Tools
Dengan tools yang baru dan dapat dibeli, seorang manajer
berfikir bahwa sudah cukup untuk menangani sebuah
perusahaan.
Mongolian Horde Concept
Perusahaan dengan mudah mendapatkan programmer
kapanpun dibutuhkan.
MITOS
MANAJEMEN
20. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
General statement of objective is sufficient to
writing programs:
Perusahaan berpandangan bahwa dengan memiliki detail data tujuan ,
cukup digunakan untuk membuat sebuah program.
Project Requirement continually change, but
change can be easily accommodate because
software is flexible.
Perusahaan beranggapan bahwa adanya software yang baru akan
dapat mengakomodasi perubahan, padahal perubahan sistem akan
berdampak pada segala sesuatu, mulai dari biaya, kinerja, dan lain-
lain.
MITOS
PELANGGAN
21. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
Once we write the program and get it to
work, our job is done:
Anggapan Praktisi bahwa sekali program dibuat maka pekerjaan
sudah selesai.
Until I get the program “running”, I Have no
way of assessing its quality.
Sekali program berjalan , maka tidak perlu lagi mengevaluasi
kualitasnya.
MITOS
PRAKTISI
22. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
The only deriverable work product for a
successful project is the working :
Penilaian sebuah produk adalah jika sebuah project sudah berjalan
(running well / release).
Software engineering will make us create
voluminous and unnecessary documentation
and will invariably slow us down.
Software engineer bukan membuat dokumentasi tetapi dengan
software engineer akan didapatkan suatu produk yang berkualitas.
MITOS
PRAKTISI
23. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
Krisis yang dimaksud adalah Krisis yang
berhubungan dengan pengembangan perangkat
lunak:
24. MITOS PERANGKAT LUNAK
(SOFTWARE MYTHS)
Krisis yang dimaksud adalah Krisis yang
berhubungan dengan pengembangan perangkat
lunak: