Engineering
Tim RPL
Program Studi Teknik Informatika
1/32
Software Engineering
(Rekayasa Perangkat Lunak)
• Segala Aspek kehidupan dikendalikan oleh perangkat
lunak.
– Mengubah gaya hidup: belanja online, bersosialisasi, rapat,
komunikasi, dll
– Pengambilan keputusan: Decision Support System, Expert
System, dll
– Pusat Data & Informasi: Database, Sistem Informasi
• Biaya hardware jatuh dan biaya perangkat lunak naik cepat
• Banyak pengusaha dunia sukses di bidang Software
• Usia Bidang kajian Software Engineering masih muda &
terus berkembang
2
What is Software ?
3
What is Software ?
• Software adalah sekumpulan item-item
atau objek yang membentuk konfigurasi
yang melibatkan program, dokumen, data
dan lain-lain.
4
What is Software ?
• Definisi Software menurut IEEE :
Computer programs, procedures, and
possibly associated, documentation and
data partaining to the operation of a
computer system ( IEEE Standard
Glossary of Software Engineering
Therminology, 1990 )
5
What is Software ?
• Software dirancang dan dibangun oleh software
engineer
• Software digunakan oleh siapapun dalam
masyarakat
• Software engineer mempunyai kewajiban moral
untuk membangun software yang dapat
diandalkan yang tidak merugikan orang lain.
• Pengguna perangkat lunak hanya fokus pada
produk software apa yang mereka butuhkan dan
membuat tugas mereka lengkap
6
Perangkat Lunak - Definisi
Software Engineering Tools and Methods Knowledge Areas of the Related Disciplines
04/21/2021 19
IEEE Computing Curricula
Computer 2005
Engineering (CE) Information Computer
pengembangan sistem System (IS) Science (CS)
terintegrasi(software dan analisa kebutuhan dankonsep computing da
hardware) proses bisnis pengembangan softwa
serta desain sistem
Computer Engineer Computer Scientist
System Analyst
Information Software
Technology (IT) Engineering (SE)
pengembangan pengembangan software
dan maintenance dan pengelolaan tahapan
infrastruktur IT SDLC
04/21/2021 21
04/21/2021 22
Software Problems (1)
Software used
after modification
Software used, but 3%
criticized or dropped Software paid for but
19% never delivered
29.7%
Software
delivered and
used as it is
2%
23
Software Problems (2)
specification
design
testing specification
encoding
testing
design
encoding
maintenance
24
The Cost of Change
25
Kurva Kesalahan
Failure
rate
time time
Failure curve Failure curve
For hardware For software
26
Software Application Type
• System Software
• Application Software
• Embedded Software
• Engineering/ Scientific Software
• Product Software
• Web Application Software
• Artificial Intelligence Software
30
Software Myths:
Customer Myths
Myths : Reality :
• Sebuah pernyataan umum • Miskin definisi di awal
dari tujuan cukup untuk persyaratan adalah
memulai menulis penyebab utama dari
program, mengisi rincian perangkat lunak yang
nanti buruk dan terlambat.
32
Software Mhyts
Management myhts
Myths : Reality :
• Memiliki buku standar • Buku mungkin ada, tetapi
menjadikan software akan mereka biasanya tidak up
dikembangkan dengan to date dan tidak
memuaskan digunakan
33
Apakah Software Engineering ?
• Software Engineering adalah teknologi yang
harus digunakan oleh setiap orang yang
akan membangun software, dengan melalui
serangkaian proses, menggunakan
sekumpulan metode dan alat bantu (tools)
(Pressman, 1997)
34
WHY
SOFTWARE
ENGINEERING???
35
Why Software Engineering ?
• Untuk mendapatkan software yang benar dan
untuk membuat software menjadi benar
• Software adalah sesuatu yang kompleks dalam
hal:
– Domain problem: Business Rule
– Data size: Digital and Non Digital
– Solution: Algorithm
– Place or Sites
36
Why Software Engineering ?
• Software harus benar (correct):
– Berdasarkan business rule
– Sejalan dengan segala sesuatu dan semua pihak
yang terkait
• Pembangunan software harus dikelola dengan
baik untuk memelihara kebenarannya
(correctness)
37
Bagaimana seharusnya SE
dijalankan ?
• There are 2 things to be considered in SE:
– Product = Software:
• Programs
• Documents
• Data
– Process of how the software is build:
• Management process
• Technical process
38
Perbedaan Software Engineering dan
Computer Science
• Computer science fokus pada teori dan
dasar-dasar; software engineering fokus
pada praktek dan pembangunan dan
pengiriman penggunaan software.
• Teori Computer science masih belum
cukup untuk menetapkan sebagai sebuah
tiang fondasi untuk software engineering.
39
Perbedaan Software Engineering dan
System Engineering
• System engineering fokus pada semua aspek
pembangunan sistem dasar komputer meliputi
hardware, software and process
engineering.
• Software engineering adalah bagian dari proses
yang berfokus pada pembangunan prasarana
perangkat lunak, kontrol, aplikasi dan database
pada sistem.
• System engineers terlibat dalam spesifikasi
sistem, perancangan arsitektur, integrasi dan
penyebaran.
• * Software Engineering 7th ed, Ian Sommerville
40
TERIMA KASIH
MATUR NUWUN
41