Pti453 02 rekayasa perangkat lunak

Post on 18-Dec-2014

397 views 0 download

description

Pengantar Rekayasa Perangkat Lunak (RPL)

Transcript of Pti453 02 rekayasa perangkat lunak

Didik Dwi

didik@um.ac.id

Rekayasa Perangkat Lunak

Didik Dwi - Teknik Elektro UM

Subbahasan

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis PL

Mitos-Mitos Perangkat Lunak

2

Didik Dwi - Teknik Elektro UM

What is Software?

Software = Program?

Software = Aplikasi?

3

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

Didik Dwi - Teknik Elektro UM

[IEEE definition] Software is …

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

5

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

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

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis PL

Mitos-Mitos Perangkat Lunak

8

Didik Dwi - Teknik Elektro UM

Evolusi PL

9

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

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

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

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

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

Didik Dwi - Teknik Elektro UM

Abstract View

15

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

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

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Rekayasa Perangkat Lunak

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

18

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

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

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

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

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

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

Didik Dwi - Teknik Elektro UM

Kapan RPL diaplikasikan?

Pre-project

Project initiation

Project realisation

Software delivery and maintenance

25

Didik Dwi - Teknik Elektro UM

Siapa yang Terlibat?

Manager

Project manager

Configuration manager

Quality assurance manager

Software Developer

Analyst

Designer

Programmer

Support

26

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

27

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

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

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

Didik Dwi - Teknik Elektro UM

Tantangan RPL

31

Didik Dwi - Teknik Elektro UM

Perangkat Lunak

Evolusi & Karakteristik PL

Krisis Perangkat Lunak

Mitos-Mitos Perangkat Lunak

32

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

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

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

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

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

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

Didik Dwi - Teknik Elektro UM

NEXT…

Software Process…

39