Modul Rekayasa Perangkat Lunak 1

9
9/30/2013 1 REKAYASA PERANGKAT LUNAK 3 SKS diampu oleh Agus Darwanto Referensi : “SOFTWARE ENGINEERING” Roger S. Pressman

description

Modul Rekayasa Perangkat Lunak 1

Transcript of Modul Rekayasa Perangkat Lunak 1

Page 1: Modul Rekayasa Perangkat Lunak 1

9/30/2013

1

REKAYASA PERANGKAT LUNAK

3 SKS

diampu oleh

Agus Darwanto

Referensi :

“SOFTWARE ENGINEERING”

Roger S. Pressman

Page 2: Modul Rekayasa Perangkat Lunak 1

9/30/2013

2

Apakah yang dimaksud “Rekayasa Perangkat Lunak”

adalah suatu disiplin rekayasa yangberkonsentrasi terhadap seluruh aspekproduksi perangkat lunak.

mengadopsi pendekatan yang sistematisdan terorganisir terhadap pekerjaannyadan menggunakan tool yang sesuai sertateknik yang ditentukan berdasarkanmasalah yang akan dipecahkan, kendalapengembangan dan sumber daya yangtersedia

Apakah yang dimaksud “Perangkat Linak”

Merupakan program-program komputerdan dokumentasi yang berkaitan, Produkperangkat lunak dibuat untuk pelanggantertentu ataupun untuk pasar umum

Produk perangkat lunak tersebut:

Generik – dibuat untuk dijual ke suatukumpulan pengguna yang berbeda

Bespoke (custom) – dibuat untuk suatupengguna tunggal sesuai denganspesifikasinya.

Page 3: Modul Rekayasa Perangkat Lunak 1

9/30/2013

3

Materi “RPL”

Pendahuluan

Model Proses Perangkat Lunak

Analisis Kebutuhan

Manajemen Proyek Perangkat Lunak

Pengukuran Perangkat Lunak

Perencanaan Perangkat Lunak

Perancangan Perangkat Lunak

Metode Testing

Jaminan Kualitas Perangkat Lunak

PENDAHULUAN

Evolusi Perkembangan Perangkat Lunak

Jenis Perangkat Lunak

Krisis Perangkat Lunak

Page 4: Modul Rekayasa Perangkat Lunak 1

9/30/2013

4

Evolusi Perkembangan Perangkat Lunak

1950 1960 1970 1980 1990 2000

TAHUN-TAHUN PERTAMA :

Batch OrientationSuatu orientasi di mana proses dilakukan setelah data dikumpulkan dalam satuanwaktu tertentu, atau proses dilakukan setelah data terkumpul, lawan dari batchadalah ONLINE atau Interactive Process. Keuntungan dari Interactive adalahmendapatkan data yang selalu up to date.

Limmited distributionSuatu penyebaran software yang terbatas pada perusahaan­perusahaan tertentu.

Custom softwareSoftware yang dikembangkan berdaasarkan perusahaan­perusahaan tertentu.

ERA KEDUA :Multi user

Suatu sistem di mana satu komputer digunakan oleh beberapa user pada saatyang sama.

Real Time

Suatu sistem yang dapat mengumpulkan, menganalisa dan mentransformasikandata dari berbagai sumber, mengontrol proses dan menghasilkan outputdalam mili second.

Database

Perkembangan yang pesat dari alat penyimpan data yang OnLine menyebabkanmuncul generasi pertama DBMS (DataBase Management System).

Product Software

Adalah software yang dikembangkan untuk dijual kepada masyarakat luas.

Evolusi Perkembangan Perangkat Lunak

Page 5: Modul Rekayasa Perangkat Lunak 1

9/30/2013

5

ERA KETIGA :Distributed systemSuatu sistem yang tidak hanya dipusatkan pada komputer induk (Host

computer), daerah atau bidang lain­nya yang juga memiliki komputer yangukurannya lebih kecil dari komputer induk. Lawan dari distributed systemadalah Centralized System.

Embedded IntelegenceSuatu product yang diberi tambahan “Intellegence” dan biasanya ditambahkan

mikroprocessor yang mutak­hir. Contohnya adalah automobil, robot,peralatan diagnostic serum darah.

Low Cost Hardwareharga hardware yang semakin rendah, ini dimungkinkan karena munculnya

Personal Computer.

Consummer InpactAdanya perkembangan komputer yang murah menyebabkan banyaknya

software yang dikembangkan, soft­ware ini memberi dampak yang besarterhadap masyarakat.

Evolusi Perkembangan Perangkat Lunak

ERA KEEMPAT :Expert system

Suatu penerapan A.I. (Artificial Intellegence) pada bidang­bidangtertentu, misalnya bidang kedokteran, komunikasi, dll.

AI Machine

Suatu mesin yang dapat meniru kerja dari sebagian otak manusia.Misalnya mesin robot, komputer catur.

Parallel Architecture

Arsitektur komputer yang memungkinkan proses kerja LAN paralel,yang dimungkinkan adanya prosesor berbeda dalam satukomputer

Evolusi Perkembangan Perangkat Lunak

Page 6: Modul Rekayasa Perangkat Lunak 1

9/30/2013

6

JENIS “PERANGKAT LUNAK”

Sistem Software

Real Time software

Software yang mengukur, menganalisis dan mengontrol kejadian yangsesungguhnya terjadi di dunia. Ele­men­elemen real time softwareterdiri dari :

Adalah sekumpulan program yang ditulis untuk melayani ataumenunjang program lainnya. Beberapa sistem software seperticompiler, editor, komponen­komponen sistem operasi, driver danprosesor telekomunikasi.

A. Komponen pengumpul data

Yang mengumpulkan dan menyusun informasi dari lingkunganexternal.

B. Komponen analisis

JENIS “PERANGKAT LUNAK”

Yang mentransformasikan informasi yang diperlukan oleh aplikasi

C. Komponen kontrol

Yang memberikan respon kepada lingkungan external

D. Komponen monitor

Yang mengkoordinasi semua komponen­komponen lainnya,sehingga respons real time yang berkisar 1 milisecond sampai 1menit dapat dipertahankan.

Perlu dicatat bahwa istilah real time berbeda dari istilah interactiveatau time sharing. Sistem real time harus memberikan responspada waktu yang ditentukan, sedangkan pada sistem interactiveatau time sharing respons time biasanya melebihi batas waktu yangditentukan tanpa merusak hasil.

Page 7: Modul Rekayasa Perangkat Lunak 1

9/30/2013

7

Business software

JENIS “PERANGKAT LUNAK”

Software yang paling banyak digunakan dalam bidang aplikasisoftware. Software ini digunakan oleh manajemen untuk mengambilkeputusan ( Decision Making ) dalam bidang bisnis. Contoh :

DAC EASY ACCOUNTING FINANCE MANAJER

Engineering and sciencetific software

Software yang dicirikan dengan algoritma numerik, aplikasinyaberkisar dari astronomi sampai vulkanologi, dari analis keteganganotomotif sampai dinamika orbit ruang angkasa. Software ini banyakdigunakan dalam bidang engineering dan science. Contoh

CAD / CAM ( Computer Aided Design / Computer Aided Manufacture ­ Simulasi sistem )

Emdebed software

JENIS “PERANGKAT LUNAK”

Suatu software disimpan dalam memori tetap ­ ROM ­ Read OnlyMemory, dan digunakan untuk mengon­trol product dan sistemsoftware ini dijalankan dengan berbagai fungsi terbatas.

PC software (Personal Computer)

Software yang banyak digunakan di komputer pribadi (PC). Contoh :

Word Processing : WS, WP Spreadsheet : Lotus, Supercalc Computer Graphics : Printshop, Print Magic Games : Paoman, Load Runner DBMS : Dbase III+, Foxbase, Clipper Network : LAN, Novell

Page 8: Modul Rekayasa Perangkat Lunak 1

9/30/2013

8

Artificial Intelegence software

JENIS “PERANGKAT LUNAK”

Software yang banyak menggunakan algoritma non numerik dalammemecahkan masalah kompleks yang tidak dapat dianalisis dengananalisis komputasi biasa. Saat ini bidang AI yang paling aktif adalahexpert system atau knowledge base system. Bidang aplikasi lain darisoftware AI adalah pengenalan citra dan suara ( image and voicepattern recognition ), teorema pembuktian dan permainan / games.

KRISIS “PERANGKAT LUNAK”

Adalah sekumpulan masalah yang ditemukan dalam pengembangansoftware computer. Masalahnya tidak hanya terbatas pada softwareyang tidak berfungsi sebagaimana mestinya, tetapi krisis software initerdiri dari masalah yang berhubungan dengan :

Bagaimana mengembangkan software.Bagaimana memelihara software yang ada, yang berkembangdalam jumlah besarBagaimana mengimbangi permintaan software yang makin besar.

Krisis software oleh beberapa masalah :

Estimasi jadual dan biaya yang seringkali tidak tepatProduktivitas orang­orang software yang tidak dapat mengimbangipermintaan softwareKualitas software yang kurang baik.

Page 9: Modul Rekayasa Perangkat Lunak 1

9/30/2013

9

KRISIS “PERANGKAT LUNAK”Masalah yang berhubungan dengan krisis software disebabkan oleh :

1. Karakteristik software itu sendiriKarakteristik software adalah software yang bersifat logika dibandingkanfisik, oleh karena itu mengukur software harus merupakan suatu kesatuan,tidak seperti hardware. Software yang bersifat tidak aus ini menyebabkankesalahan yang terjadi pada software. Umumnya terjadi pada tahappengembangan. Manajer tingkat menengah dan tingkat atas yang tidakmempunyai latar belakang software, seringkali diberi tang­gung jawab untukmengembangkan software. Padahal tidak semua manajer itu dapat me­manage semua proyek.Praktisnya : software programmer atau software engineering mendapatkanlatihan formal yang sedikit dalam hal tehnik baru pengembangan software.

2. Kegagalan mereka yang bertanggung jawab dalam pengembangansoftware.