2. DEFINISI PERANGKAT LUNAK
IEEE-StandarGlossaryofSoftwareEngineeringTerminology,1990:
(InstituteofElectrical andElectronicEngineering)
Computer programs, procedures, and possibly associated
documentation and data pertaining to the operation of a
computer system.
Terjemahan bebasnya:
Perangkat lunakmerupakankumpulandari berbagai item
(program, prosedur, dan dokumendata yang saling terkait)
yang merepresentasikan masalah di dunia nyata yang
dikonfigurasikan dalam satu bentuk aplikasi yang harus
dikerjakan komputer.
3. PRODUK
REKAYASA PERANGKAT LUNAK
• Software atau Perangkat Lunakadalah sekelompok item atau
objek yang membentuk “konfigurasi” dimana di dalamnya
termasuk :
• Instruksi / Program Komputer
• Dokumen(Requirement, Model Disain, User Manual)
• Struktur Data
• Perangkat lunak adalah program-program komputer beserta
dokumentasinya, seperti requirement, model desain dan user
manual
Computer Engineering Department
4. KARAKTERISTIK SOFTWARE
(ROGERS. PRESSMAN)
• Software merupakan elemen sistem logik dan
bukan elemen sistem fisik seperti hardware.
• Software tidak pernah usang tapi bisa memburuk.
• Elemen software merupakan hasil rekayasa atau
pengembangan dan bukan hasil manufaktur di
pabrik seperti hardware.
• Software tidak bisa dirakit atau disusun seperti
produk manufaktur.
Computer Engineering Department
5. REKAYASA PERANGKAT LUNAK
Arti Software Engineering :
• Ilmu yang mempelajari teknik pembuatan software yang
baik dengan pendekatan teknis (Engineeringapproach).
• Suatu disiplin rekayasa yang berkonsentrasi terhadap
seluruh aspek produksi perangkat lunak.
• Mengadopsi pendekatan yang sistematis dan terorganisir
dalam aktivitasnya dan menggunakan tool dan teknik
yang sesuai yang ditentukan berdasarkan masalah yang
akan dipecahkan, kendala pengembangan dan sumber
daya yang tersedia.
Computer Engineering Department
7. ERA AWAL (PIONER)
• Batch Orientation
Suatu orientasi di mana proses dilakukan setelah data dikumpulkan
dalam satuan waktu tertentu, atau proses dilakukan setelah data
terkumpul, lawan dari batch adalah ONLINE atau Interactive
Process. Keuntungan dari Interactive adalah mendapatkan data
yangselalu uptodate.
• Limmited Distribution
Suatu penyebaran software yang terbatas pada perusahaan-
perusahaantertentu.
• CustomSoftware
Software yang dikembangkan berdasarkan keinginan perusahaan-
perusahaantertentu.
Computer Engineering Department
8. ERA KEDUA (STABIL)
• MultiUser
Suatu sistem di mana satu komputer digunakan oleh beberapa user
pada saat yang sama.
• RealTime
Suatu sistem yang dapat mengumpulkan, menganalisa dan
mentransformasikan data dari berbagai sumber, mengontrol proses
dan menghasilkanoutputdalammilisecond.
• Database
Perkembangan yang pesat dari alat penyimpan data yang online
menyebabkan muncul generasi pertama DBMS (DataBase
ManagementSystem).
• ProductSoftware
Adalah software yang dikembangkan untuk dijual kepada
masyarakat luas.
Computer Engineering Department
9. ERA KETIGA (MIKRO)
• DistributedSystem
Suatu sistemyang tidak hanyadipusatkanpada komputerinduk
(Host computer),daerahatau bidanglainnyayangjuga memiliki
komputeryangukurannyalebihkecil dari komputerinduk.Lawan
dari distributedsystem adalahCentralizedSystem.
• EmbeddedIntellegence
Suatu product yang diberi tambahan “Intellegence”dan biasanya
ditambahkanmikroprocessoryangmutakhir.Contohnyaadalah
automobil,robot,peralatandiagnosticserumdarah.
• LowCost Hardware
Harga hardwareyang semakinrendah,ini dimungkinkan karena
munculnyaPersonalComputer.
Computer Engineering Department
10. ERA KETIGA (MIKRO)
• ConsumerImpact
Adanya perkembangankomputer yang murahmenyebabkan
banyaknya software yang dikembangkan,software ini
memberi dampakyang besar terhadap masyarakat.
Computer Engineering Department
11. ERA KEEMPAT (MODERN)
• Expert System
Suatu penerapanA.I. (Artificial Intellegence) pada bidang-
bidang tertentu, misalnya bidang kedokteran,
komunikasi,dll.
• ArtificiaI Intelligence Machine
Suatu mesin yang dapat meniru kerja dari sebagian otak
manusia. Misalnya mesin robot, komputer catur.
• Parallel Architecture
Arsitektur komputer yang memungkinkanproses kerja
LAN paralel, yang dimungkinkanadanyaprosesor
berbeda dalam satu komputer
Computer Engineering Department
12. PRODUK PERANGKAT LUNAK
Produk perangkat lunak dibuat untuk pelanggan
tertentu ataupun untuk pasar umum
Produk perangkat lunak ada dua jenis :
Generik – dibuat untuk dijual ke suatu kumpulanpengguna
yang berbeda atau pasar umum.
Bespoke (custom) – dibuat untuk suatu penggunatunggal
sesuai dengan spesifikasi yang diinginkanpengguna.
Computer Engineering Department
13. KLASIFIKASI PERANGKAT LUNAK
1. SystemSoftware
2. RealTimeSoftware
3. BusinessSoftware
4. Engineeringandsciencetificsoftware
5. Embenddedsoftware
6. PC software(PersonalComputer)
7. ArtificialIntelegencesoftware
Computer Engineering Department
14. SYSTEM SOFTWARE
Adalah sekumpulanprogram yang ditulis untukmelayani
atau menunjang program lainnya.
Beberapa sistem software seperti compiler, editor,
komponen-komponensistem operasi, driver dan prosesor
telekomunikasi.
Computer Engineering Department
15. REALTIME SOFTWARE
Softwareyangmengukur,menganalisisdan mengontrolkejadian
yangsesungguhnya terjadi di dunia.Elemen-elemenreal time
softwareterdiri dari:
A. Komponen Pengumpul Data
Yangmengumpulkan dan menyusun informasidari lingkungan
external.
B. KomponenAnalisis
Yangmentransformasikaninformasiyangdiperlukanoleh aplikasi
C. Komponen Kontrol
Yangmemberikanrespon kepada lingkungan external
D. Komponen Monitor
Yangmengkoordinasisemua komponen-komponenlainnya,
sehingga responsreal timeyang berkisar1 milisecondsampai 1
menit dapat dipertahankan.
Computer Engineering Department
16. REALTIME SOFTWARE
Perlu dicatat bahwa istilah real time berbeda dari
istilah interaktif atau time sharing. Sistem real time
harus memberikan respons pada waktu yang
ditentukan, sedangkan pada sistem interaktif atau
time sharing respon system biasanya melebihi batas
waktu yang ditentukan tanpa merusak hasil.
Computer Engineering Department
17. BUSINESS SOFTWARE
Software yang paling banyak digunakandalam bidang
aplikasi software. Software ini digunakanoleh manajemen
untuk mengambil keputusan ( Decision Making) dalam
bidang bisnis. Contoh :
DAC EASYACCOUNTING
FINANCE MANAGER
Computer Engineering Department
18. ENGINEERINGAND SCIENCETIFIC
SOFTWARE
• Software yang dicirikan dengan algoritma numerik,
aplikasinya berkisar dari astronomi sampai vulkanologi,
dari analis ketegangan otomotif sampai dinamikaorbit
ruang angkasa.
• Software ini banyak digunakandalam bidang
engineering dan science.
• Contoh
– CAD / CAM ( ComputerAided Design / ComputerAided
Manufacture- Simulasi sistem )
Computer Engineering Department
19. EMBEDDED SOFTWARE
Suatu software disimpan dalam memori tetap - ROM -
Read Only Memory, dan digunakanuntuk mengontrol
product dan sistem software ini dijalankandengan
berbagai fungsi terbatas.
Contoh : Software untuk kontrol mesin produksi di industri
Computer Engineering Department
20. PC SOFTWARE (PERSONALCOMPUTER)
Software yang banyak digunakandi komputer pribadi (PC).
Contoh :
• Word Processing :WS,WP
• Spreadsheet : Lotus, Supercalc
• ComputerGraphics : Printshop, Print Magic
• Games : Paoman, Load Runner
• DBMS : Dbase III+, Foxbase, Clipper
• Network : LAN, Novell
Computer Engineering Department
21. ARTIFICIAL INTELLIGENCE SOFTWARE
• Software yang banyak menggunakanalgoritma non
numerik dalam memecahkanmasalah kompleks yang
tidak dapat dianalisis dengan analisis komputasi biasa.
Saat ini bidangAI yang paling aktif adalah expert system
atau knowledge base system.
• Bidang aplikasi lain dari softwareAI adalah pengenalan
citra dan suara ( image and voice pattern recognition ),
teorema pembuktian dan permainan / games.
Computer Engineering Department
22. KRISIS PERANGKAT LUNAK
Adalah sekumpulan masalah yang ditemukan dalam
pengembangan software computer. Masalahnya tidak
hanya terbatas pada software yang tidak berfungsi
sebagaimana mestinya, tetapi krisis software ini terdiri dari
masalah yang berhubungandengan :
1. Bagaimanamengembangkan software
2. Bagaimanamemelihara software yang ada, yang
berkembang dalam jumlah besar
3. Bagaimanamengimbangi permintaan software yang
makin besar.
Computer Engineering Department
23. MASALAH PERANGKAT LUNAK
1. Estimasi jadwal dan biaya yang seringkali tidak tepat
2. Produktivitas orang-orang dalam software developer
(programmer) yang tidak dapat mengimbangi
permintaan kebutuhan software
3. Kualitas software yang kurang baik.
Computer Engineering Department
24. MITOS PERANGKAT LUNAK
1. Mitos Manajemen
2. Mitos Pelanggan
3. Mitos Praktisi
Computer Engineering Department
25. MITOS MANAJEMEN
A. Kita tidak perlu mengubah pendekatan terhadap pengembangan
software, karena jenis pemrograman yang kita lakukan sekarang ini
sudah kita lakukan 10 tahun yang lalu.
Realitasnya :Walau hasil program sama, produktivitas dan kualitas
software harus ditingkatkan dengan menggunakan pendekatan software
development.
B. Kita sudah mempunyai buku yang berisi standarisasi dan prosedur untuk
pembentukan software.
Realitasnya : Memang buku tersebut ada, tetapi apakah buku tersebut
sudah dibaca atau buku tersebut sudah ketinggalan jaman ( out of date ).
C. Jika kitatertinggal dari jadwal yang ditetapkan, kita menambah beberapa
programmer saja. Konsep ini sering disebut Mongolian horde concept.
Computer Engineering Department
26. MITOS PELANGGAN
A. Pernyataan tujuan umum sudah cukup untukmemulai
penulisan program. Penjelasan yang lebih rinci akan
menyusul kemudian.
Realitasnya : Definisi awal yang buruk adalah penyebab
utama kegagalan terhadap usaha-usaha pembentukkan
software. Penjelasan yang formal dan terinci tentang
informasi fungsi performance interface, hambatan desain
dan kriteria validasi adalah penting. Karakteristik di atas
dapat ditentukan hanya setelah adanya komunikasi antara
customer dan developer.
Computer Engineering Department
27. B. Kebutuhanproyek yangterusmenerusberubah dapat dengan
mudahdiatasikarena softwareitu bersifat fleksibel.Kenyataannya
memang benarbahwa kebutuhan software berubah,tetapidampak
dari perubahan berbedadari waktukewaktu.
Computer Engineering Department
MITOS PELANGGAN
28. MITOS PRAKTISI
A.Tidak ada metode untukanalisis disain dan testing terhadap
suatu pekerjaan, cukup menuju ke depan terminal dan mulai
coding.
Realitasnya : Metode untuk analisis desain dan testing
diperlukandalam pengembangansoftware.
B.Segera setelah software digunakan,pemeliharaan dapat
diminimalisasikan dan diatasi dengan cara “CATCHASCATCH
CAM”.
Realitasnya : Diperlukan budget yang besar dalam
maintenance software. Pemeliharaan software harus
diorganisir, direncanakandan dikontrol seolah-olah sebagai
suatu proyek besar dalam sebuah organisasi.
Computer Engineering Department
29. KESIMPULAN
• Produk perangkat lunak bukanhanya barisan code
• Software engineering merupakandisiplin rekayasa yang
berkonsentrasi terhadap seluruh aspek produksi perangkat
lunak.
• Krisis software tidak dapat hilang dalam satu satu malam,
di mana tidak ada suatu pendekatan yang baik dalam
mengatasi krisis software, namun gabungan dari metode
untuk semua fase dalam pengembangan software seperti
peralatan yang lebih baik untuk mengautomatisasi
metode-metode ini, teknik yang lebih baik untuk
mengontrol kualitas, dan filosofi untuk koordinasi kontrol,
serta manajemen dipelajari dalam suatu disiplin ilmu yang
kita sebut software engineering.
Computer Engineering Department