• Tidak ada hasil yang ditemukan

Pertemuan 1 PENGENALAN REKAYASA PERANGKAT LUNAK

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pertemuan 1 PENGENALAN REKAYASA PERANGKAT LUNAK"

Copied!
18
0
0

Teks penuh

(1)

Pertemuan 1

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

Manajemen resiko dlm pelaksanaan proyek

Penjadwalan dan penelusuran proyek pembangunan PL

Jaminan kualitas PL

Manajemen konfigurasi PL

(2)

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

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

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

(3)

Rekayasa Perangkat Lunak

Perangkat Lunak? (Software??)

Rekayasa Perangkat lunak-RPL?

(Software engineering-SE??)

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

RPL vs RS ??

Evolusi Perangkat Lunak

Pelaku yang berhubungan dengan Rekayasa Perangkat Lunak

Mitos yang ada berkembang

Tantangan dalam Pengembangan 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

(4)

Definisi Rekayasa Perangkat Lunak (RPL)

RPL atau Software Engineering (SE)

Disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perangkat Lunak yang dibuat harus mampu:

Tepat waktu

Tepat anggaran

Meningkatkan kinerja

Mengoperasikan prosedur sistem dengan benar

Definisi Rekayasa Perangkat Lunak (Lanjutan)

Ada 2 istilah kunci :

1. “disiplin rekayasa” 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.

2. “semua aspek produksi perangkat lunak” RPL tidak hanya berhubungan dengan proses teknis dari pengembangan perangkat lunak tetapi juga dengan kegiatan seperti Manajemen proyek PL dan pengembangan alat bantu, metode, dan teori untuk mendukung produksi PL.

(5)

Perbedaan RPL dengan Rekayasa Sistem (RS)?

Rekayasa Sistem (RS) berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses.

RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.

Produk Perangkat Lunak

Perangkat lunak tidak sama dengan produk perangkat keras

Produk perangkat lunak dikembangkan (developed) atau direkayasa (engineered). Sebagian besar dikembangkan atau dibangun berdasrkan pemesanan dan sebagian kecil dibuat secara paket.

Tidak dipabrikkan seperti pabrik perangkat keras, misal komputer, mobil.

Perangkat lunak secara pemakaian tidak pernah AUS layaknya perangkat keras

(6)

Produk Perangkat Lunak (2)

Bentuk produk perangkat lunak:

1. Produk Generik (Umum)

Sistem stand-alone standar yang diproduksi oleh organisasi pengembang dan dijual ke pasar terbuka ke siapapun yg membelinya. Biasa disebut sebagai software shrink-wrapped.Contoh : pengolah kata(word processor).

2. Produk pesanan (yang disesuaikan)

Sistem yang dipesan oleh pelanggan tertentu. Dikembangkan khusus bagi pelanggan oleh kontraktor perangkat lunak. Contoh : Sistem untuk mendukung proses bisnis tertentu dan sistem kontrol lalu lintas udara

Produk Perangkat Lunak (3)

Perbedaan PENTING antara 2 bentuk perangkat lunak :

Pada produk generik, organisasi yang mengembangkan perangkat lunak mengontrol spesifikasi perangkat lunak.

Pada produk pesanan, spesifikasi biasanya dikembangkan dan dikontrol oleh organisasi yang membeli perangkat lunak tersebut.

(7)

Produk Perangkat Lunak (4)

Karakteristik perangkat lunak yang baik:

Mempunyai daya guna yang tinggi (usability)

Mempunyai kinerja sesuai fungsi yang dibutuhkan pemakai

Mampu diandalkan (be reliable)

Mudah dirawat/diperbaiki (maintenability)

Lebih efisien

Mempunyai antarmuka yg menarik (eye cathcing user interface)

Mempunyai siklus hidup yang cukup lama (long life time)

Jenis-jenis aplikasi Perangkat Lunak

Perangkat Lunak Sistem (System software)

Adalah sekumpulan program yang ditulis untuk melayani atau menunjang program lainnya.

Misalnya : compiler, editor, komponen-komponen sistem operasi, driver dan prosesor telekomunikasi.

Perangkat lunak waktu nyata (Realtime Software)

Perangkat lunak yang berfungsi untuk memonitor, menganalisis, mengontrol dan memberikan laporan tentang kejadian dunia nyata dan meresponnya dalam waktu kurang dari 1 menit.

Misal: pengontrol arus udara, pengontrol keasaman tabung reaksi (pressman punya), pengontrol reaksi nuklir, dll

(8)

Jenis-jenis aplikasi Perangkat Lunak (2)

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

Perangkat lunak yg menangani bidang teknik dan ilmu pengetahuan secara rinci

Misal: simulasi astronomi, vulkanologi, analisis otomatif, dinamika orbit pesawat ruang angkasa, biologi molekuler, otomasi pabrik, dll

Embeded System

Perangkat lunak yg ditempelkan/dilekatkan pada perangkat lainnya (lunak/keras).

Misal: pada kamera digital, GPS, automobil, microwave, kulkas cerdas, dll

Jenis-jenis aplikasi Perangkat Lunak (3)

Perangkat Lunak Pengolah Data (Data Processing)

Perangkat lunak yg khusus digunakan untuk mengolah data dan menghasilkan suatu keputusan tertentu.

Misal: billing telepon, pengolah statistik

Perangkat Lunak Sistem Informasi (Information System)

Perangkat lunak yg mampu memberi informasi dari suatu sistem secara lebih detail.

(9)

Jenis-jenis aplikasi Perangkat Lunak (4)

Perangkat Lunak Sensor

Perangkat lunak yg mampu mengukur dan mengatur suatu keadaan khusus, kadang digolongkan dalam embedded system juga.

Misal: pengatur cuaca, pengatur suhu ruangan, dll

Perangkat Lunak Komunikasi (Communicaion Software)

Perangkat lunak yg berfungsi untuk menghubungkan atau mengkomunikasikan suatu objek satu dengan lainnya. Misal: router, handphone, dll

Jenis-jenis aplikasi Perangkat Lunak (5)

Perangkat Lunak Pengolah Grafis

Perangkat lunak yang digunakan untuk melakukan perancangan grafis

Misal: pembuatan film, pembuatan poster

Perangkat Lunak Kecerdasan

Perangkat lunak yg menggunakan algoritma no-numeris untuk memecahkan masalah kompleks yg tdk sesuai untuk perhitungan atau analisis secara langsung

Misal: sistem pakar, pembuktian teorema, game strategi, jaringan saraf tiruan, dll

(10)

Evolusi Perangkat Lunak

Perangkat lunak telah semakin berkembang sejak pertama kali diciptakan tahun 1945

Fokus utama pembuatannya untuk mengembangkan praktik dan teknologi dalam meningkatkan produktivitas para praktisi pengembang PL dan kualitas aplikasi yg dapat digunakan oleh pemakai

Evolusi dipicu adanya tuntutan bisnis dan lingkungan kerja yang berkembang sangat dinamis

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– software engineering

(11)

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 (software house)

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

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

(12)

Evolusi Perangkat Lunak (5)

Era III (1975 – 1985)

Pengembangan sistem mengarah ke konsep sistem terdistribusi.

Penerapan sistem embeded intelligence

Harga perangkat keras sudah jauh lebih murah sehingga pemakaian meluas

Pemanfaatan jaringan global dan lokal serta sudah diperkenalkan komunikasi digital

Evolusi Perangkat Lunak (5)

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

(13)

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

Evolusi Perangkat Lunak (7)

Era V (2000 – sekarang)

Penggunaan media digital

Media web berkembang pesat

Wireless sudah meluas

Teknologi meluas hingga di mobile computing, mobile programming

Perangkat keras sudah semakin kecil namun powerfull

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

(14)

Krisis Perangkat Lunak

Masalah yang muncul:

Estimasi jadwal dan biaya yang seringkali tidak tepat

Produktivitas orang-orang software yang tidak dapat

mengimbangi permintaan software

Kualitas software yang kurang baik.

Kurangnya pengetahuan tentang:

Bagaimana mengembangkan software

Bagaimana memelihara software yang ada, yang berkembang dalam jumlah besar

Bagaimana mengimbangi permintaan software yang makin besar.

Mitos1:

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

Realitasnya : Walau hasil program sama, produktivitas dan kualitas software harus ditingkatkan dengan menggunakan pendekatan software developments

Mitos Dalam Perangkat Lunak

(Management)

(15)

Mitos2:

Kita sudah mempunyai buku yang berisi standarisasi dan prosedur untuk pembentukan software.

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

Mitos3:

Jika kita tertinggal dari jadwal yang ditetapkan, kita menambah beberapa programmer saja. Konsep ini sering disebut Mongolian harde concept.

Mitos Dalam Perangkat Lunak

(Management) (2)

Mitos1:

Pernyataan tujuan umum sudah cukup untuk memulai penulisan program. Penjelasan yang lebih rinci akan menyusul kemudian.

Realitasnya : Definisi awal yang buruk adalah penyebab utama kegagalan terhadap usaha-usaha pem-bentukkan software. Penjelasan yang formal dan terinci tentang informasi fungsi performance interface, hambatan desain dan kriteria validasi adalah penting. Karakteristik di atas dapat ditentukan hanya setelah adanya komunikasi antara customer dan developer.

(16)

Mitos2:

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

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

Mitos dalam perangkat lunak (Customer)

Mitos1:

Tidak ada metode untuk analisis disain dan testing terhadap

suatu pekerjaan, cukup menuju ke depan terminal dan mulai coding.

Realitasnya : Metode untuk analisis desain dan testing

diperlukan dalam pengembangan software.

Mitos2:

Segera setelah software digunakan, pemeliharaan dapat

diminimalisasikan dan diatasi dengan cara “CATCH AS CATCH CAM”.

Realitasnya : Diperlukan budget yang besar dalam maintenance

software. Pemeliharaan software harus diorganisir, direncanakan dan dikontrol seolah-olah sebagai suatu proyek besar dalam sebuah organisasi.

(17)

Tantangan warisan

Dikembangkan bertahun-tahun dengan orang-orang yang berbeda-beda

Tantangan heterogensis

Dalam hal distribusi & teknologi

Tantangan pengiriman

Bagaimana mengirim sistem yang besar dan kompleks cepat dan dengan kualitas tetap terjaga.

Tantangan dalam Rekayasa Perangkat Lunak

Mitos2:

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

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

(18)

Pelaku Dalam RPL

Manajer

1. Manajer proyek 2. Manajer konfigurasi

3. Manajer penjamin kulitas PL

4. Manajer bidang lainnya (sesuai kebutuhan

Software Developer 1. Analis sitem 2. Desainer 3. Programmer 4. Inspektor PL 5. Pengontrol perubahan Pendukung 1. Staf administrasi 2. Humas 3. Pencatat teknis 4. Administrator database 5. Administrator jaringan

Referensi

Dokumen terkait

Untuk mengetahui secara simultan besarnya pengaruh citra merek dan persepsi harga terhadap keputusan pembelian dengan menggunakan teknik analisis statistik yang sudah di

yang dilakukan oleh Rosydah (2011) dengan meningkatnya jumlah kitosan, mikropartikel yang terbentuk lebih sferis dengan permukaan yang halus, sedangkan pada penelitian

Selanjutnya, pada halaman sumber yang sama, Field (2004: 63 — 64) mengemukakan bahwa di antara pandangan tentang akuisisi yang dapat dicirikan sebagai “ kognitif ” adalah

Jika ditinjau dari Identitas Nilai dalam pelembagaan partai melalui masing- masing basis sayap, basis sayap merupakan bagian dari gambaran basis sosial pendukung

DALAM KONDISI APAPUN, ASUS, DIREKTUR, STAF, KARYAWAN, ATAU AGENNYA TIDAK BERTANGGUNG JAWAB ATAS KERUSAKAN TIDAK LANGSUNG, KHUSUS, INSIDENTAL, ATAU KONSEKUENSIAL (TERMASUK

Avoidant coping merupakan strategi yang dilakukan individu untuk menjauhkan diri dari sumber stres dengan cara melakukan suatu aktivitas atau menarik diri dari suatu

Keadaan ini merupakan potensi dan peluang yang sangat baik untuk pengembangan sapi potong di areal lahan perkebunan dengan sistem integrasi, yaitu pemanfaatan

Refleksi terhadap proses dan hasil pembelajaran dimulai dari analisis tingkat keberhasilan proses dan hasil belajar siswa, evaluasi diri terhadap proses belajar yang telah