15
Rekayasa Perangkat Lunak (Software Engineering) Bagian 1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1 copyright © 2007 R.S. Pressman & Associates, Inc Dimara Kusuma Hakim, ST. Fitria Ekowati, ST. Materi ini dapat didownload di : DimaraKusumaHakim.BlogSpot.com

Bab 2 Rekayasa Perangkat Lunak 1

Embed Size (px)

Citation preview

Page 1: Bab 2   Rekayasa Perangkat Lunak  1

Rekayasa Perangkat Lunak(Software Engineering)Bagian 1

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 1

copyright © 2007

R.S. Pressman & Associates, IncDimara Kusuma Hakim, ST.

Fitria Ekowati, ST.

Materi ini dapat didownload di :DimaraKusumaHakim.BlogSpot.com

Page 2: Bab 2   Rekayasa Perangkat Lunak  1

Software Engineering: A Practitioner’s Approach, 6/e

Bab 1Perangkat Lunak dan Rekayasanya

copyright © 1996, 2001, 2005, 2006

R.S. Pressman & Associates, Inc.Dimara Kusuma Hakim, ST.Fitria Ekowati, ST. These courseware materials are to be used in

conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided

with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2

Page 3: Bab 2   Rekayasa Perangkat Lunak  1

Permasalahan pada Sistem Software yang Besar Sulit memberikan fungsionalitas yang

dinginkan customer Terlalu lama untuk membangunnya Terlalu banyak biaya untuk

membangunnya Terlalu lama, terlalu boros space (media

penyimpanan) atau bbrp. resources untuk menjalankannya

Sulit untuk dikembangkan

Page 4: Bab 2   Rekayasa Perangkat Lunak  1

Rekayasa Perangkat Lunak Penerapan beberapa prinsip

“engineering disciplines” untuk mencoba mengatasi beberapa masalah tadi.

Berisi beberapa teknik untuk :Menangani kompleksitas dari sistem yang

besarMemanage tim programmerMengukur kualitas sistem software

Page 5: Bab 2   Rekayasa Perangkat Lunak  1

Sulitnya Menulis program :’(

Kebutuhan Customer sulit untuk dipahami Kebutuhan mereka terus berubah Semakin besar sistem, semakin banyak

interaksi antar masing-masing komponennya

“Programmer Juga Manusia” : ada batasan produksi yang bisa dihasilkannya dalam suatu waktu

Page 6: Bab 2   Rekayasa Perangkat Lunak  1

“Kenapa Jadi Serba Salah ? “

Page 7: Bab 2   Rekayasa Perangkat Lunak  1

Peran Ganda Software

Software adalah sebuah produkMenyajikan potensi komputasiMenghasilkan, mengelola, memperoleh, modifikasi,

menampilkan atau mengirimkan informasi Software adalah alat untuk menyajikan

sebuah produkMendukung atau menyediakan fungsi dari software

lainMengendalikan program lain (mis : sistem operasi)Mempengaruhi komunikasi (mis : Software jaringan)Membantu membangun Software lain (mis : Delphi,

VB, PHP)These courseware materials are to be used in

conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided

with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7

Page 8: Bab 2   Rekayasa Perangkat Lunak  1

Apakah SOFTWARE ?

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 8

SOFTWARE adalah sekelompok item atau objek Yang membentuk “konfigurasi” dimana di dalamnya termasuk : • program • dokumen • data ...

Page 9: Bab 2   Rekayasa Perangkat Lunak  1

Apakah Software ? Sebuah perbandingan dengan Hardware

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 9

Software ‘dirakit’ (=hardware)Software tidak kadaluwarsaSoftware lebih kompleks

Page 10: Bab 2   Rekayasa Perangkat Lunak  1

Semakin Memburuk…?!

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 10

idealized curve

change

actual curve

Failurerate

Time

increased failurerate due to side effects

Page 11: Bab 2   Rekayasa Perangkat Lunak  1

Aplikasi Software system software

application software engineering/scientific

software embedded software product-line software WebApps (Web applications) AI software

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 11

Page 12: Bab 2   Rekayasa Perangkat Lunak  1

Kategori Baru Software Wireless Application — aplikasi untuk jaringan

nirkabel Netsourcing—Web sebagai mesin komputasi Open source—kode program dibuka gratis kepada

komunitas komputasi) Juga …

Data miningGrid computingIntegration (Extract, Transform & Loading)AnalysisDll.

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 12

Page 13: Bab 2   Rekayasa Perangkat Lunak  1

Perubahan Software

○ Software harus ber-adaptasi untuk memenuhi kebutuhan lingkungan komputasi atau teknologi baru.

○ Software harus di-perbaiki untuk mengimplementasi kebutuhan bisnis baru.

○ Software harus diperluas untuk membuatnya dapat berinteroperasi dengan sistem dan database modern yang lain.

○ Software harus di-arsitek ulang untuk membuatnya ‘hidup’ di tengah-tengah lingkungan jaringan.

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 13

Kenapa harus berubah ?

Page 14: Bab 2   Rekayasa Perangkat Lunak  1

Evolusi Software The Law of Continuing Change (1974): Hukum Perubahan Berkelanjutan. Sistem Elektronik harus secara

berkelanjutan beradaptasi jika tidak akan mengurangi tingkat kenyamanan. The Law of Increasing Complexity (1974): Hukum Peningkatan Kompleksitas : sejalan dengan pertumbuhan PL,

kompleksitasnya juga akan meningkat, kecuali ada sesuatu yang dilakukan untuk mengelola atau menguranginya. The Law of Self Regulation (1974): Hukum Regulasi Mandiri, Proses evolusi sistem elektronik adalah regulasi

mandiri dengan distribusi pengukuran produk dan proses yang dekat dengan normal. The Law of Conservation of Organizational Stability (1980): Hukum Konservasi Stabilitas Organisasi. Rata-rata

kecepatan aktivitas global efektif dalam sistem elektronik tidak jauh berbeda dengan kecepatan produksi. The Law of Conservation of Familiarity (1980): Hukum Konservasi Kebiasaan Sistem elektronik turut

mengembangkan segala sesuatu yang berkaitan dengannya, developer, sales, user, sebagai contoh, harus tetap menguasai isi dan perilaku untuk dapat menggapai evolusi yang nyaman.

The Law of Continuing Growth (1980): Hukum Keberlanjutan Pertumbuhan. Muatan fungsional sistem elektronik harus secara terus menerus meningkat untuk merawat kenyamanan pengguna.

The Law of Declining Quality (1996): Hukum Penurunan Kualitas, Kualitas sistem elektronik akan selalu menurun kecuali ada usaha perawatan dan beradaptasi pada perubahan lingkungan operasional.

The Feedback System Law (1996): Evolusi proses tipe elektronik membentuk sistem umpan balik multi-level, multi-loop, multi-agen, dan harus diperlakukan sebagaimana usaha-usaha serius lain untuk membuat peningkatan yang signifikan.

These courseware materials are to be used in conjunction with Software Engineering: A

Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman &

Associates, Inc., copyright © 1996, 2001, 2005 14

Source: Lehman, M., et al, “Metrics and Laws of Software Evolution—The Nineties View,” Proceedings of the 4th International Software Metrics Symposium (METRICS '97), IEEE, 1997, dapat didownload dari :: http://www.ece.utexas.edu/~perry/work/papers/feast1.pdf

Page 15: Bab 2   Rekayasa Perangkat Lunak  1

Mitos Software

Mempengaruhi manajer, pelanggan (dan stakeholder non teknis lainnya) serta para praktisi

Dipercaya karena mereka sering mempunyai bagian-bagian kebenaran.,

namun… Sering menuju ke keputusan yang salah, Oleh karena itu … Tetaplah pada realita seiring dengan jalan

rekayasa perangkat lunakThese courseware materials are to be used in

conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided

with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 15