76024294-rekayasa-perangkat-lunak.pptx

48
REKAYASA PERANGKAT LUNAK

Upload: zulfikar-akbar

Post on 25-Oct-2015

34 views

Category:

Documents


0 download

DESCRIPTION

RPL

TRANSCRIPT

REKAYASA PERANGKAT

LUNAK

Definisi Sebagai disiplin manajerial dan teknis yang

berhubungan dengan penemuan sistematik, produksi dan maintenance sistem perangkat lunak yang berkualitas tinggi, disampaikan pada waktu yg tepat serta memiliki harga yg mahal

Suatu proses evolusi dan pemanfaatan alat & teknik untuk pengembangan perangkat lunak

Penetapan & penggunaan prinsip2 rekayasa dalam mendapatkan perangkat lunak yg ekonomis yaitu perangkat lunak yg terpercaya & bekerja efisien pada mesin (komputer)

Komponen2 RPL terbentuk dari program dengan tugas :

Membuat suatu desain aplikasi yg ada di lingkungan tugas atau pekerjaan

Membuat deadline berupa pendahuluan, perumusan masalah,analisis, desain, dan kesimpulan

Dasar perangkat lunak

Perangkat lunak adalah obyek tertentu yg dapat dijalankan seperti Kode sumberKode obyekSebuah program yg lengkap.

Pada komputer ada 2 jenis perangkat lunak

sistem yang penting, yaitu :Sistem Operasi,

Berfungsi menyediakan tempat dalam memori untuk menyimpan data yang sedang diolah dan mengawasi bahwa tidak ada data yang tiba2 masuk dan menimpa data lain atau sebagian dari program aplikasi.

Bahasa Pemrograman

Kegiatan rekayasa software meliputi beberapa hal, diantaranya :

Analisa kebutuhan dan spesifikasiEstimasi “Feasibility” dan sumber dayaDesain solusi perangkat lunak berbasis

komputer Implementasi desain berupa programPengukuran kualitas hasil akhir berupa

perangkat lunak

Tujuan Rekayas Perangkat Lunak

Biaya produksi rendahKinerja program yg tinggiProbabilitas yg tinggiBiaya perawatan yg rendahKeandalan sistem & penyerahan tepat

waktu

Jenis2 aplikasi perangkat lunak

Perangkat lunak sistemPerangkat lunak real timePerangkat lunak bisnisPerangkat lunak teknik & ilmu

pengetahuanPerangkat lunak embeddedPerangkat lunak komputer personalPerangkat lunak kecerdasan buatan

Paradigma Rekayasa Perangkat Lunak

Proses perangkat lunak

Proses penetuan perangkat lunak yang baik

tergantung : PendekatanTeknologiMetodeAlat bantu Prosedur yg digunakan ketika perangkat

lunak yg dikembangkan.

Metode sebagai cara bagaimana membangun perangkat lunak yang harus tetap pada sebuah komitmen dasar menuju kualitas. Metode ini menyangkut serangkaian tugas yaitu:1. Perencanaan proyek dan estimasi. Contoh: PERT

(Program Evaluation and Review Technique) dan CPM (Critical Path Method)

2. Analisis kebutuhan sistem dan software3. Rancangan stuktur data, yg terdiri dari: 3

- Variabel- Elementary data :Int, Char, String,dll- Stuktur data :Record, File, Array, String

4. Arsitektur program5. Algoritma prosedur6. Coding7. Testing8. Pemeliharaan

Untuk menyelesaikan permasalahan Rekayasa Perangkat Lunak

Sikslus Hidup

Adalah pendekatan melalui beberapa tahapan untuk

menganalisis dan merancang sistem yg dimana sistem

tersebut telah dikembangkan dengan sangat baik melalui

penggunaan siklus kegiatan penganalisis dan pemakai

secara spesifik.

1. Mengidentifikasi masalah, peluang dan tujuan

2. Menentukan syarat-syarat

3.Menganalisis kebutuhan2

sistem

4. Mereancang sistem yg direkomendasikan

5. Mengembangkan & mendokumentasikan P/L6. Menguji &

mempertahankan sistem

7. Mengimplementasikan & mengevaluasi sistem

Gb. 7 Tahap Siklus Hidup

Pengembangan Sistem

Model SpiralPendekatan WaterfallModel ini menawarkan cara pembuatan perangkat lunak secara lebih nyata. Langkah2 penting dlm model ini adalah :

- Penentuan & analisis spesifikasi- Desain sistem & perangkat lunak- Implementasi & ujicoba unit- Integrasi & ujicoba sistem- Operasi & pemeliharaan

Siklus Hidup dg model waterfall

Requiredment Analysis and

Definition

System and software design

Operation and maintenance

Implementation and unit testing

Integration and system testing

Pendekatan Evolusioner

Model ini berdasarkan pada ide pengembangan

pada implementasi awal yg akan menghasilkan

komentar pemakai sehingga dapat dilakukan

perbaikan melalui banyak versi sampai sistem yg

mencukupi dapat dikembangkan. Spiral Boehm

Model proses nyata waterfall yg berorientasi

dokumen. Model ini berbentuk spiral, setiap loop

mewakili sebuah tahap dari proses perangkat

lunak. Tidak ada tahap yg tetap pada model ini.

PrototypingAdalah implementasi bagian dari produk

software yg secara tipikal fungsinya dibatasi,

reliabilitas rendah, tampilan kurang baik,

dan kurang ketegasan.

Prototype memberikan ide bagi pembuat

maupun pemakai potensial tentang cara

sistem berfungsi dalam bentuk lengkapnya.

Proses menghasilkan sebuah prototype

disebut prototyping

Tujuan Prototype

Membantu mengembangkan persyaratan, jika tidak dapat ditentukan dengan mudah

Mengesahkan persyaratan, khususnya dengan customer dan user yg potensial

Menyajikan sebagain tempat pengembanagan, jika menggunakan startegi pengembangan evolusi prototype

Manajemen Proyek

Perangkat Lunak

Manajemen Proyek Proyek merupakan suatu tugas yg perlu

dirumuskan untuk mencapai sasaranyg dinyatakan secara konkrit serta harus diselesaikan dalam suatu periode tertentu dengan menggunakan tenaga manusia & alat2 yg terbatas dan begitu kompleks sehingga dibutuhkan pengelolaan & kerjasama yg berbeda dari yg biasanya digunakan.

Kumpulan kegiatan termasuk sumber daya dan waktu yg diperlukan, yg diorganisasikan dan bersifat sementara untuk mencapai tujuan yg telah ditetapkan.

Manajemen proyek perangkat lunak yg efektif

berfokus pada 3 P :

1. (People=Manusia)

2. (Problem=Masalah)

3. (Process=Proses), memberikan suatu kerangka

kerja dimana rencana komprehensif bagi

pengembangan perangkat lunak dapat dibangun.

Atribut dan karakteristik proses :

Understandability, Visibility, Supportability,

Acceptability, Reliability, Robustness,

Maintainability, Rapidity

Prinsip Pembentukan Sebuah Jaringan

Network PanningAdalah teknik baru dalam suatau penyelesaina proyek yg merupakan dasar untuk menentukan kebijaksanaan2 pimpinan dalam melaksanakan suatu proyek. Network Planning pd prinsipnya adalah hubungan yg saling bergantung antara bagian2 pekerjaan yg digambarkan dalam network diagram.

Dalam network planning ada 2 konsep yang

harus diperhatikan yaitu :

1. Event (kejadian) adalah suatu keadaan yg terjadi pada saat tertentu.

2. Aktivitas adalah perkerjaan yang diperlukan untuk menyelesaikan suatu pekerjaan.

Simbol2 yg digunakan dlm Network Diagram

Anak Panah

Node/Circle atau lingkaran kecil

Anak Panah rangkap

Anak Panah putus2

Contoh

Membuat saluran minyak tanah sepanjang 1000 meter

A(1)

B(1)

C(20)

F(5)

D(10)

E(10)

Kode Aktivitas

Uraian aktivitas

Waktu(hari) Kegiatan yg mendahului

A Menandai lokasi

1 Tidak ada

B Pengukuran 1 A

C Penggalian tanah

20 A dan B

D Pengecoran 10 A dan B

E Pemasangan pipa

10 C dan D

F Pembuatan bak pengontrol

5 C dan D

Critical Path Method (CPM)Adalah lintasan dimana terdapat aktivitas-

aktivitas yg paling banyak memakan waktu,

mulai dari permulaan dikerjakannya proyek

sampai berakhirnya pekerjaan tsb.

Menentukan lintasan kritis

Untuk mencari lintasan kritis ada beberapa metode umum yg dipakai, yaitu :

- Meneliti seluruh lintasan yg ada

Dapat mengetahui arah mana terdapat lintasan kritis. Contoh 1

- Metode EET dan LET

Kode Aktivitas Uraian aktivitas Waktu (hari) Kegiatan yg mendahului

A Perencanaan biaya

5 Tidak ada

B Menghubungi bank

3 Tidak ada

C Perencanaan material

6 Tidak ada

D Seleksi material 4 A

E Material disiapkan 4 B

F Perencanaan tenaga kerja

2 B

G Job Analysis 5 C

H Melatih tenaga kerja

15 D dan E

I Proses Assembling

5 F dan G

A(5)

H(15)

G(5)C(6)

B(3)

E(4)

D(4)

I(5)F(2)

Lintasan yang terbentuk

A-D-H = 24 hariB-E-H = 22 hariC-G-I = 14 hariB-F-I = 10 hari

Maka jalur A-D-H adalah lintasa kritis

Metode EET & LET

Event dengan simbol lingkaran dibagi menjadi 3 bagian seperti :

C

B

A

Ket : Dimana A=Number of EventB= EETC= LET

Contoh

0

8

4

3

97

210

6

20

209

5

10

26

18

8

10

11

8

1712

291

D(2)

B(3)

H(5)

C(9)J(5)G(1)

E(4) I(3)N(3)

K(5)A(8)

M(4)F(8)

L(6)

Aktivitas Manajemen Perangkat Lunak

- Proposal writing,pimpinan proyek harus membuat rencana pekerjaan proyek yg akan dilakukan dari persiapan awal hingga selesainya proyek tsb.

- Project costing, Budget pengluaran dan masukan proyek yg akan dikerjakan dibuat serinci mungkin.

- Project planning and scheduling- Project monitoring and review- Personal selection and evaluation- Report writing and presentation

Pengujian Perangkat Lunak

Dasar Pengujian Perangkat Lunak

Menciptakan sederet test case yang

dimaksudkan untuk membongkar/mengecek

perangkat lunak yang sudah di bangun.

Sasaran-sasaran Pengujian (Glen Myers)

a. Pengujian adalah proses eksekusi suatu program dengan maksud menemukan kesalahan

b. Test case yg baik adalah memiliki probabilitas tinggi untuk menemukan kesalahan yg belum pernah ditemukan sebelumnya

c. Pengujian yg sukses adalah pengujian yg mengungkapkan semua kesalahan yg belum pernah ditemukan sebelumnya

Testabilitas

Karakteristik yang dapat menjadi pertimbangan terhadap perangkat lunak yg diuji:

- Operabilitas- Observabilitas- Kontrolabilitas- Dekompositabilitas- Kesederhanaan- Stabilitas- Kemampuan untuk dapat dipahami

Pengujian

1. Pengujian White Box/Glass Box, Adalah metode desain test case yg menggunkan struktur kontrol desain prosedural untuk memperoleh test case.

2. Pengujian Basis Path, memungkinkan designer test case mengukur kompleksitas logis dari desin prosedural & menggunakannya sebagai pedoman untuk menetapkan basis set dari jalur eksekusi- Notasi Diagram Alir- Kompleksitas Siklomatis, Adalah metrik perangkat lunak yg memberikan pengukuran kuantitatif terhadap kompleksitas logis suatu program.- Melakukan Test Case- Matriks Grafik

3. Pengujian struktur kontrol, Pengujian Basis Path adalah satu dari sejumlah teknik untuk pengujian struktur kontrol

4. Pengujian Black Box, Pengujian ini berfokus pada persyaratan fungsional P/L

Pengujian Untuk Aplikasi & Lingk. Khusus

1. Pengujian GUI

2. Pengujian Arsitektur Client/Server

3. Pengujian Dokumentasi dan Fasilitas Help

4. Pengujian Sistem Real-Time