pti453 02 rekayasa perangkat lunak

39
Didik Dwi [email protected] Rekayasa Perangkat Lunak

Upload: didik-dwi-prasetya

Post on 18-Dec-2014

397 views

Category:

Education


0 download

DESCRIPTION

Pengantar Rekayasa Perangkat Lunak (RPL)

TRANSCRIPT

Page 1: Pti453 02 rekayasa perangkat lunak

Didik Dwi

[email protected]

Rekayasa Perangkat Lunak

Page 2: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Subbahasan

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis PL

Mitos-Mitos Perangkat Lunak

2

Page 3: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

What is Software?

Software = Program?

Software = Aplikasi?

3

Page 4: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Software is …

1. instructions (computer programs) that when executed provide desired function and performance,

2. data structures that enable the programs to adequately manipulate information, and

3. documents that describe the operation and use of the programs

4

Page 5: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

[IEEE definition] Software is …

Software is the collection of computer programs, procedure rules and associated documentation and data.

5

Page 6: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

[the conclusion] Software is …

6

PL adalahsekelompok item atau objekyang membentuk“konfigurasi” di manadi dalamnyatermasuk :

• program • dokumen• data ...

programs

docs

data

SW

Page 7: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Peran Ganda PL

PL adalah sebuah produk Memberikan potensi komputasi

Menghasilkan, mengelola, memperoleh, modifikasi, menampilkan atau mengirimkan informasi

PL adalah alat untuk menyajikan sebuahproduk Mendukung atau menyediakan langsung

fungsionalitas sistem

Mengendalikan program lain (e.g., sistem operasi)

Membantu membangun PL lain (e.g., PL kakas)

7

Page 8: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis PL

Mitos-Mitos Perangkat Lunak

8

Page 9: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Evolusi PL

9

Page 10: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Evolusi PL (2)

Tahun-tahun awal (1950 - 1965)

Orientasi batch → update data pada periode tertentu

Distribusi terbatas

Dibuat menurut pesanan

Era Kedua (1965 - 1975)

Multiuser → pembagian hak akses

Real-time → update data langsung

Database → pengolahan data lebih efisien

10

Page 11: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Evolusi PL (3)

Era Ketiga (1975 - 1987)

Sistem terditribusi

Embedded Intelligence

Low cost hardware

Era Keempat (1987 - 2000)

Object Oriented Technologies

Expert Systems

AI, neural networks

Parallel computing

11

Page 12: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Karakteristik PL

PL adalah elemen sistem yang lojik (bukan fisik seperti elemen bangunan atau komputer)

PL dibangun atau dikembangkan (engineered, not manufactured)

PL tidak pernah usang atau aus (wear out), namun dapat memburuk (deteriorate)

Sampai saat ini kebanyakan PL masih dibuat menurut pesanan (custom built)

12

Page 13: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Karakteristik PL (2)

PL lebih kompleks (dibanding perangkat keras)

Rancangan yang buruk berakibat pada biaya pemeliharaan PL.

Kegagalan pada PL disebabkan oleh kesalahan saat rancangan dan implementasi, BUKANkarena susut atau aus.

13

Page 14: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Types of Software

System software. This software includes theoperating system and all utilities that enablethe computer to function

Application software. These consist of programs that do real work for users.

14

Page 15: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Abstract View

15

Page 16: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Example

16

System Software Application Software

Operating System

Debuggers

Compilers

Utilities

Image editor

Word processors

Spreadsheets

Databases

Games

Communication

software

etc

Page 17: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Pengelompokkan Lain

system software

application software

engineering/scientific software

embedded software

product-line software

WebApps (Web applications)

AI software

17

Page 18: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

18

Page 19: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak (RPL) / Software Engineering (SE)

Teknologi yang harus digunakan oleh setiap orang yang akan membangun PL, dengan melalui serangkaian proses, menggunakan sekumpulan metode dan alat bantu (Pressman, 1997)

19

Page 20: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Rekayasa Perangkat Lunak (2)

RPL: (1) Penerapan secara sistematis, disiplin, pendekatan terukur padapengembangan, pengoperasian, dan pemeliharaan PL. (2) Studi terhadap (1) (IEEE, 1993)

20

Page 21: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Rekayasa Perangkat Lunak (3)

Menurut Sommerville:

Disiplin Rekayasa (Metodologi)

Kegiatan Produksi Perangkat Lunak

Mulai tahap spesifikasi s/d pemeliharaan sistem

21

Page 22: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Disiplin Rekayasa

Menjamin bahwa produk dapat bekerja dengan baik

Menggunakan teori, metode dan tool bantu yang sesuai (selektif) untuk menyelesaikan masalah.

22

Page 23: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Disiplin Rekayasa (2)

Bekerja secara tim dan dana yang terukur

Mampu beradaptasi (melakukan perubahan jika diperlukan) untuk menyesuaikan dengan batasan yang ada

Tidak selalu harus “best solution” namun “appropriate solution” (dalam lingkup constraint)

23

Page 24: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Bagaimana RPL diaplikasikan?

Dua elemen penting RPL:

Product = Software

Programs

Documents

Data

Process of how the software is build

Management process

Technical process

24

Page 25: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Kapan RPL diaplikasikan?

Pre-project

Project initiation

Project realisation

Software delivery and maintenance

25

Page 26: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Siapa yang Terlibat?

Manager

Project manager

Configuration manager

Quality assurance manager

Software Developer

Analyst

Designer

Programmer

Support

26

Page 27: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

27

Page 28: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Software Crisis

Krisis PL: masalah-masalah terkait pengembangan PL.

Banyak proyek pengembangan PL mengalami kegagalan.

Kasus kegagalan:

Melebihi anggaran/waktu

Tidak efisien

Kualitas rendah

Mengakibatkan kerusakan fisik hingga kematian

28

Page 29: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Kasus Krisis PL

False alarm incident (Gulf War 1983)

Nuclear war (PD III??)

Sistem peringatan dini Soviet

Bug sinar matahari

29

Page 30: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Kasus Krisis PL

AT&T (1990)

Mode reset pada sentral switching

Sebaris kode menyebabkan kesalahan(perintah “Break”)

Macet 9 jam, 75 juta panggilan dan ratusan ribu reservasi pesawat hilang

30

Page 31: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Tantangan RPL

31

Page 32: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

32

Page 33: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Mitos dan Realita PL

Mitos : Staf saya punya alat bantu pengembangan yang canggih. Bahkan dibelikan komputer generasi terbaru.

Realita : Perlu lebih dari sekadar komputer terbaru untuk mengembangkan perangkat lunak berkualitas. CASE tools lebih penting daripada perangkat keras untuk mengejar kualitas dan produktivitas.

33

Page 34: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Mitos dan Realita PL (2)

Mitos : Jika kita terlambat, kita dapat menambahorang lebih banyak dan mengejar keterlambatan.

Realita : Pengembangan PL bukan prosesmekanis seperti manufaktur. Jika kita menambah orang pada proyek yang terlambat, itu justru akan lebih terlambat.

34

Page 35: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Mitos dan Realita PL (3)

Mitos : Sebuah kalimat umum yang menyatakan objektivitas sudah cukup untuk memulai menulis program. Detailnya nanti saja.

Realita : Definisi awal yang buruk merupakansebab utama gagalnya kerja PL. Deskripsi yang detail dan formal tentang domain informasi, fungsi, unjuk kerja, performa, interface, batasandesain, dan kriteria validasi merupakan halmendasar. Karakteristik ini dapat ditentukanhanya melalui komunikasi antara pelanggandengan developer.

35

Page 36: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Mitos dan Realita PL (4)

Mitos : Produk yang perlu diberikan untuk proyek yang sukses adalah programnya saja.

Realita : Program hanyalah salah satu komponen perangkat lunak.

Dokumentasi sangat penting sebagai dasar pengembangan yang sukses serta sebagai petunjuk untuk pemeliharaan PL.

36

Page 37: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Conclusion

PL adalah sekelompok item/objek yang membentuk “konfigurasi” di mana di dalamnya termasuk: program, dokumen, dandata.

RPL merupakan teknologi yang harusdigunakan oleh setiap orang yang akanmembangun PL.

melalui serangkaian proses,

menggunakan sekumpulan metode dan alat bantu

37

Page 38: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

Referensi

Pressman, R. 2004. Software engineering: a practitioner’s approach, 6th Edition. McGrawHill. USA

Sommerville, I. 2009. Software Engineering, 8th Edition. Addison Wesley PublishingCompany

38

Page 39: Pti453 02 rekayasa perangkat lunak

Didik Dwi - Teknik Elektro UM

NEXT…

Software Process…

39