Top Banner
Pertemuan 1 PENGENALAN REKAYASA PERANGKAT LUNAK
36

Pengenalan Rekayasa Perangkat Lunak

Feb 09, 2016

Download

Documents

Pengenalan Rekayasa Perangkat Lunak
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Pengenalan Rekayasa Perangkat Lunak

Pertemuan 1

PENGENALAN

REKAYASA

PERANGKAT LUNAK

Page 2: Pengenalan Rekayasa Perangkat Lunak

Pokok Bahasan dalam RPL :

RPL sebagai produk dan sebagai produk

Konsep manajemen proyek

Proses pembangunan PL dan metrik proyek

Perencanaan proyek PL(Perangkat Lunak)

Manajemen resiko dlm pelaksanaan proyek

Penjadwalan dan penelusuran proyek pembangunan PL

Jaminan kualitas PL(Perangkat Lunak)

Manajemen konfigurasi PL

Rekayasa sistem ke arah CB

Page 3: Pengenalan Rekayasa Perangkat Lunak

Pokok Bahasan dalam RPL (lanjutan)

Konsep dan prinsip analisis

Pemodelan analisis

Konsep dan prinsip desain

Metode desain

Implementasi pembangunan

Teknik pengujian perangkat

Strategi perancangan PL

CASE tool pembangunan PL

Page 4: Pengenalan Rekayasa Perangkat Lunak

Buku Referensi

• Pressman, RS., 2008, Software Engineering: A Practitioner’sApproach, New York: McGraw-Hill

• Sommerville, I, 2007, Software Engineering, Addsion Wesley

Page 5: Pengenalan Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak

Perangkat Lunak? (Software??)

Rekayasa Perangkat lunak-RPL?

(Software engineering-SE??)

Rekayasa sistem-RS? (system engineering-SyE??)

Evolusi Perangkat Lunak

Computer Science vs RPL

RPL vs RS ??

Pelaku yang berhubungan dengan Rekayasa Perangkat Lunak

Mitos yang ada berkembang

Tantangan dalam Pengembangan Perangkat Lunak

Page 6: Pengenalan Rekayasa Perangkat Lunak

Definisi Perangkat Lunak (PL)

IEEE-Standar Glossary of Software Engineering

Terminology, 1990:

“Computer programs, procedures, and possibly associated

documentation and data pertaining to the operation of a

computer system.”Maksudnya :

Perangkat lunak merupakan kumpulan dari program, prosedur, dan dokumen data

lain yang saling berhubungan yang merepresentasikan masalah di dunia nyata yang

dikonfigurasikan dalam sebuah bentuk aplikasi yang harus dikerjakan komputer

Page 7: Pengenalan Rekayasa Perangkat Lunak

Produk Perangkat Lunak

Perangkat lunak <> produk perangkat keras

Produk perangkat lunak dikembangkan (developed) ataudirekayasa (engineered).

Tidak dipabrikkan seperti Perangkat keras.

Perangkat lunak secara pemakaian tidak pernah AUS layaknyaperangkat keras

Page 8: Pengenalan Rekayasa Perangkat Lunak

Produk Perangkat Lunak (2)

Perangkat Lunak

Produk Generik Umum

Produk Pesanan

Page 9: Pengenalan Rekayasa Perangkat Lunak

Perbedaan PENTING antara 2 bentuk perangkat lunak :

Produk Generik Produk Pesanan

Pada produk generik, organisasi yang mengembangkan perangkat lunakmengontrol spesifikasi perangkat lunak

Pada produk pesanan, spesifikasibiasanya dikembangkan dan dikontrololeh organisasi yang membeli perangkatlunak tersebut.

diproduksi oleh organisasi pengembangdan dijual ke pasar terbuka biasadisebut software

dipesan oleh pelanggan tertentu & dikembangkan khusus bagi pelanggan

Page 10: Pengenalan Rekayasa Perangkat Lunak

Karakteristik perangkat lunak yang baik:

Usability

be reliable

maintenability

Efficiency

eye cathcing user interface

long life time

Mempunyai kinerja sesuai fungsi yang dibutuhkanpemakai

Page 11: Pengenalan Rekayasa Perangkat Lunak

Jenis-jenis aplikasi Perangkat Lunak

Perangkat Lunak Sistem (System software)

Perangkat lunak waktu nyata (Realtime Software)

Perangkat Lunak Teknik Dan Ilmu Pengetahuan (Scientific &Engineering Software)

Embeded System (yang ditanamkan ke sistem)

Perangkat Lunak Pengolah Data (Data Processing)

Perangkat Lunak Sistem Informasi (Information System)

Perangkat Lunak Sensor

Perangkat Lunak Komunikasi (Communicaion Software)

Perangkat Lunak Pengolah Grafis

Perangkat Lunak Kecerdasan

Page 12: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak

Perangkat lunak pertama kali diciptakan tahun 1945

Fokus utama pembuatannya untuk mengembangkan praktikdan teknologi dalam meningkatkan produktivitas para praktisipengembang PL dan kualitas aplikasi yg dapat digunakan olehpemakai

Evolusi dipicu adanya tuntutan bisnis dan lingkungan kerja yangberkembang sangat dinamis

Page 13: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (2)

Era I (1945 – 1960):

Munculnya teknologi perangkat keras di tahap awal

Penggunaan perangkat lunak yg berorientasi batch

Distribusi perangkat lunak masih terbatas

Didominasi perangkat lunak model custome

Munculnya istilah software engineering (akhir 1950-an/awal 1960-an)

Belum didefinisikan secara jelas tentang aspek–softwareengineering

Page 14: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (3)

Era II (1960 – 1970)

Disebut era krisis perangkat lunak (software crisis).

Penggunaan perangkat lunak sudah meluas

Telah hadir perusahaan yang membangun software (softwarehouse)

Perangkat lunak sdh mengenal multiprogram, multiuser, real-time, dan penggunaan database.

Page 15: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (4)

Era II (Lanjutan)

Banyak project PL yg gagal

Over budget/anggaran

Berakibat rusak fisik dan kematian

Meledaknya Roket Ariane , kesalahan perintah dlm PL

Dua konferensi ttg software engineering:

Disponsori Komite Sains NATO

Tahun 1968 dan 1969

Profesi resmi bidang software engineering

Page 16: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (5)

Era III (1975 – 1985)

Pengembangan sistem mengarah ke konsep sistemterdistribusi.

Penerapan sistem embeded intelligence

Harga perangkat keras sudah jauh lebih murah sehinggapemakaian meluas

Pemanfaatan jaringan global dan lokal serta sudahdiperkenalkan komunikasi digital

Page 17: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (6)

Era IV (1985 – 2000)

Kemampuan PC sudah setara dengan komputer mainframe

Penerapan teknologi yang berorientasi pada objek

Implementasi sistem pakar

Jaringan saraf tiruan

Komputasi paralel

Jaringan komputer sudah semakin canggih

Page 18: Pengenalan Rekayasa Perangkat Lunak

Evolusi Perangkat Lunak (7)

Era V (2000 – sekarang)

Penggunaan media digital

Media web berkembang pesat

Wireless sudah meluas

Teknologi meluas hingga di mobile computing, mobileprogramming

Perangkat keras sudah semakin kecil namun powerfull

Dilakukan berbagai penelitian yang menghasilkan modelproses/paradigma pengembangan PL utk mengatasi krisis PL

Page 19: Pengenalan Rekayasa Perangkat Lunak

Krisis Perangkat Lunak

Masalah yang muncul:

Estimasi jadwal dan biaya yang seringkali tidak tepat

Produktivitas orang-orang software yang tidak dapatmengimbangi permintaan software

Kualitas software yang kurang baik.

Kurangnya pengetahuan tentang:Bagaimanamengembangkan software, memelihara software yang ada.

Bagaimana mengimbangi permintaan software yang makinbesar.

Page 20: Pengenalan Rekayasa Perangkat Lunak

Mitos Dalam Perangkat Lunak (Management)

Mitos1:

Kita tidak perlu mengubah pendekatan terhadappengembangan software, karena jenis pemrograman yang kitalakukan sekarang ini sudah kita lakukan 10 tahun yang lalu.

Realitasnya : Walau hasil program sama, produktivitas dankualitas software harus ditingkatkan dengan menggunakanpendekatan software developments

Page 21: Pengenalan Rekayasa Perangkat Lunak

Mitos Dalam Perangkat Lunak (Management) (2)

Mitos2:

Kita sudah mempunyai buku yang berisi standarisasi danprosedur untuk pembentukan software.

Realitasnya : Memang buku tersebut ada, tetapi apakah bukutersebut sudah dibaca atau buku tersebut sudah ketinggalanjaman ( out of date ).

Mitos3:

Jika kita tertinggal dari jadwal yang ditetapkan, kita menambahbeberapa programmer saja. Konsep ini sering disebutMongolian harde concept.

Page 22: Pengenalan Rekayasa Perangkat Lunak

Mitos dalam perangkat lunak (Customer)

Mitos1:

Pernyataan tujuan umum sudah cukup untuk memulaipenulisan program. Penjelasan yang lebih rinci akan menyusulkemudian.

Realitasnya : Definisi awal yang buruk adalah penyebab utamakegagalan terhadap usaha-usaha pem-bentukkan software.Penjelasan yang formal dan terinci tentang informasi fungsiperformance interface, hambatan desain dan kriteria validasiadalah penting. Karakteristik di atas dapat ditentukan hanyasetelah adanya komunikasi antara customer dan developer.

Page 23: Pengenalan Rekayasa Perangkat Lunak

Mitos dalam perangkat lunak (Customer)

Mitos2:

Kebutuhan proyek yang terus menerus berubah dapat denganmudah diatasi karena software itu bersifat fleksibel.

Realitasnya : memang benar bahwa kebutuhan software berubah, tetapi dampak dari peru-bahan berbeda dari waktu kewaktu.

Page 24: Pengenalan Rekayasa Perangkat Lunak

Mitos Dalam Perangkat Lunak (Praktisi)

Mitos1:

Tidak ada metode untuk analisis disain dan testing terhadap suatupekerjaan, cukup menuju ke depan terminal dan mulai coding.

Realitasnya : Metode untuk analisis desain dan testing diperlukandalam pengembangan software.

Mitos2:

Segera setelah software digunakan, pemeliharaan dapatdiminimalisasikan dan diatasi dengan cara “CATCH AS CATCH CAM”.

Realitasnya : Diperlukan budget yang besar dalam maintenancesoftware. Pemeliharaan software harus diorganisir, direncanakan dandikontrol seolah-olah sebagai suatu proyek besar dalam sebuahorganisasi.

Page 25: Pengenalan Rekayasa Perangkat Lunak

Mitos dalam perangkat lunak (Management)

Mitos1:

Kebutuhan proyek yang terus menerus berubah dapat denganmudah diatasi karena software itu bersifat fleksibel.

Realitasnya : memang benar bahwa kebutuhan softwareberubah, tetapi dampak dari peru-bahan berbeda dari waktu kewaktu.

Page 26: Pengenalan Rekayasa Perangkat Lunak

Definisi Rekayasa Perangkat Lunak (RPL)

RPL atau Software Engineering (SE) Disiplin ilmu yang membahassemua aspek produksi perangkat lunak, mulai dari tahap awalspesifikasi sistem sampai pemeliharaan sistem setelah digunakan.Perangkat Lunak yang dibuat harus mampu:

Tepat waktu

Tepat anggaran

Meningkatkan kinerja

Mengoperasikan prosedur sistem dengan benar

Page 27: Pengenalan Rekayasa Perangkat Lunak

Perbedaan RPL dengan Computer science

Computer Science Software Engineering

Computer science lebih memperhatikanteori & metode komputerisasi, sedangkansoftware engineering menyangkutmasalah praktikal pembuatan dandelivery perangkat lunak

Software engineering merupakan bagiandari system engineering, dimana sistemengineering memperhatikan semua aspekpembuatan sistem berbasis komputertermasuk perangkat keras, perangkatlunak & proses

Page 28: Pengenalan Rekayasa Perangkat Lunak

Perbedaan RPL dengan Rekayasa Sistem

(RS)?

Rekayasa Sistem Rekayasa Perangkat Lunak

Rekayasa Sistem (RS) berkaitan dengansemua aspek dalam pembangunan sistemberbasis komputer termasuk hardware, rekayasa PL dan proses.

RPL adalah bagian dari rekayasasistem yang meliputi pembangunanPL, infrasktruktur, kontrol, aplikasidan database pada sistem.

Page 29: Pengenalan Rekayasa Perangkat Lunak

Tantangan dalam Rekayasa Perangkat Lunak

Tantangan warisan

Tantangan heterogensis

Tantangan pengiriman

Page 30: Pengenalan Rekayasa Perangkat Lunak

Pelaku Dalam RPL

Manajer

( Manajer proyek, Manajer konfigurasi, Manajer penjamin kulitasPL,Manajer bidang lainnya sesuai kebutuhan)

Software Developer

( Analis sitem, Desainer, Programmer, Inspektor PL, Pengontrolperubahan)

Pendukung

( Staf administrasi, Humas, Pencatat teknis, Administrator database, Administrator jaringan)

Page 31: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal

Page 32: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal Pertemuan 1

1. Kumpulan dari program, prosedur, dan dokumen data lain yang salingberhubungan yang merepresentasikan masalah di dunia nyata yangdikonfigurasikan dalam sebuah bentuk aplikasi yang harus dikerjakankomputer disebut ….

a. Perangkat Lunak d. Manajemen

b. Perangkat Keras e. Sistem

c. Database

2. Yang tidak termasuk ke dalam hal kemampuan dari Perangkat Lunak yang dibuat yaitu:

a. Tepat waktu

b. Tepat anggaran

c. Meningkatkan kinerja

d. Tepat guna

e. Mengoperasikan prosedur sistem dengan benar

Page 33: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal Pertemuan 1

2. Yang tidak termasuk ke dalam hal kemampuan dari Perangkat Lunak yang dibuat yaitu:

a. Tepat waktu

b. Tepat anggaran

c. Meningkatkan kinerja

d. Tepat guna

e. Mengoperasikan prosedur sistem dengan benar

3. Perekayasa membuat suatu alat bekerja. Menerapkan teori,

metode, dan alat bantu yang sesuai, selain itu mereka

menggunakannya dengan selektif dan selalu mencoba mencari

solusi terhadap permasalahan, disebut …

a. Disiplin rekayasa d. Tepat waktu

b. Meningkatkan kinerja e. Tepat anggaran

e. Mengoperasikan prosedur sistem dengan benar

Page 34: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal Pertemuan 1

3. Perekayasa membuat suatu alat bekerja. Menerapkan teori,

metode, dan alat bantu yang sesuai, selain itu mereka

menggunakannya dengan selektif dan selalu mencoba mencari

solusi terhadap permasalahan, disebut …

a. Disiplin rekayasa d. Tepat waktu

b. Meningkatkan kinerja e. Tepat anggaran

e. Mengoperasikan prosedur sistem dengan benar

4. RPL tidak hanya berhubungan dengan proses teknis dari pengembanganperangkat lunak tetapi juga dengan kegiatanseperti Manajemen proyek PLdan pengembangan alat bantu, metode, dan teori untuk mendukungproduksi Perangkat Lunak. Hal ini disebut

a. Tepat anggaran b. Meningkatkan kinerja

c. Disiplin Rekayasa d. Mengoperasikan prosedur sistem dgn benar

e. Semua aspek produksi perangkat lunak

Page 35: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal Pertemuan 1

4. RPL tidak hanya berhubungan dengan proses teknis dari pengembanganperangkat lunak tetapi juga dengan kegiatan seperti Manajemen proyekPL dan pengembangan alat bantu, metode, dan teori untukmendukung produksi Perangkat Lunak. Hal ini disebut

a. Tepat anggaran c. Disiplin Rekayasa

b. Meningkatkan kinerja

d. Mengoperasikan prosedur sistem dengan benar

e. Semua aspek produksi perangkat lunak

5. Rekayasa yang berkaitan dengan semua aspek dalam pembangunan sistemberbasis komputer termasuk hardware, rekayasa Perangkat Lunak danproses disebut ….

a. Rekayasa Sistem e. Rekayasa Komputer

b. Disiplin Rekayasa

c. Rekayasa perangkat Lunak

d. Rekayasa Database

Page 36: Pengenalan Rekayasa Perangkat Lunak

Latihan Soal Pertemuan 1

5. Rekayasa yang berkaitan dengan semua aspek dalam pembangunan sistemberbasis komputer termasuk hardware,rekayasa Perangkat Lunak danproses disebut ….

a. Rekayasa Sistem b. Disiplin Rekayasa

c. Rekayasa perangkat Lunak d. Rekayasa Database

e. Rekayasa Komputer

1. Kumpulan dari program, prosedur, dan dokumen data lain yang salingberhubungan yang merepresentasikan masalah di dunia nyata yangdikonfigurasikan dalam sebuah bentuk aplikasi yang harus dikerjakankomputer disebut ….

a. Perangkat Lunak d. Manajemen

b. Perangkat Keras e. Sistem

c. Database