You are on page 1of 31

PEMODELAN

PERANGKAT
LUNAK
KELAS XI
SEMESTER GANJIL

KONSEP REKAYASA PL

Berasal dari 2 kata, yaitu Software (Perangkat Lunak) dan


Engineering (Rekayasa).

Perangkat Lunak (Software) adalah source code pada suatu


program atau sistem

source code

dokumentasi

Engineering atau Rekayasa adalah penerapan teori, metode, dan


alat bantu yang sesuai untuk mencari solusi terhadap masalah
dengan pendekatan sistematis yang berdasar atas ilmu
pengetahuan dan matematis serta aplikasi tentang produksi
terhadap struktur, mesin, produk, proses atau sistem

DEFINISI REKAYASA PL

Rekayasa Perangkat Lunak adalah suatu disiplin rekayasa yang


berkonsentrasi terhadap seluruh aspek produksi perangkat lunak
mulai yang mencakup hal-hal teknis hingga hal-hal manajerial
proyek PL.

TUJUAN RPL
1.
2.

3.

4.

Memperoleh biaya produksi perangkat


lunak yang rendah.
Menghasilkan perangkat lunak yang
kinerjanya tinggi, andal dan tepat
waktu.
Menghasilkan perangkat lunak yang
dapat bekerja pada berbagai jenis
platform.
Menghasilkan perangkat lunak yang
biaya perawatannya rendah.

KOMPONEN PL / RUANG LINGKUP


PL

KOMPONEN PL / RUANG LINGKUP


PL (1)

software Requirements berhubungan dengan spesifikasi


kebutuhan dan persyaratan perangkat lunak

software desain mencakup proses penampilan arsitektur,


komponen, antar muka, dan karakteristik lain dari perangkat lunak

software construction berhubungan dengan detail pengembangan


perangkat lunak, termasuk algoritma, pengkodean, pengujian dan
pencarian kesalahan

software testing meliputi pengujian pada keseluruhan perilaku


perangkat lunak

software maintenance mencakup upaya-upaya perawatan ketika


perangkat lunak telah dioperasikan

KOMPONEN PL / RUANG LINGKUP


PL (2)

software configuration management berhubungan dengan usaha


perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan
tertentu

software engineering management berkaitan dengan pengelolaan


dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak

software engineering tools and methods mencakup kajian teoritis


tentang alat bantu dan metode RPL

software engineering process berhubungan dengan definisi,


implementasi pengukuran, pengelolaan, perubahan dan perbaikan
proses RPL

software quality menitik beratkan pada kualitas dan daur hidup


perangkat lunak

KARAKTERISTIK PL (1)

Understandability, yaitu sejauh mana proses secara eksplisit


ditentukan dan bagaimana kemudahan definisi proses itu
dimengerti.

Visibility, apakah aktivitasaktivitas proses mencapai titik akhir


dalam hasil yang jelas sehingga kemajuan dari proses tersebut
dapat terlihat nyata/jelas.

Supportability, yaitu sejauh mana aktivitas proses dapat


didukung oleh CASE.

Acceptability, apakah proses yang telah ditentukan oleh insinyur


dapat diterima dan digunakan dan mampu bertanggung jawab
selama pembuatan produk perangkat lunak.

KARAKTERISTIK PL (2)

Reliability, apakah proses didesain sedikian rupa sehingga


kesalahan proses dapat dihindari sebelum terjadi kesalahan pada
produk.

Robustness, dapatkah proses terus berjalan walaupun terjadi


masalah yang tak diduga.

Maintainability, dapatkah proses berkembang untuk mengikuti


kebutuhan atau perbaikan.

Rapidity, bagaimana kecepatan proses pengiriman sistem dapat


secara lengkap memenuhi spesifikasi.

RAGAM MODEL PROSES


PENGEMBANGAN PL

MODEL AIR TERJUN (WATER FALL)

MODEL PROTOTYPE

MODEL RAD

MODEL SPIRAL

MODEL 4 GT

MODEL WATERFALL (1)

Model Waterfall merupakan model klasik yang sederhana dengan


aliran sistem yang linier.

MODEL WATERFALL (2)


TAHAPAN PENGEMBANGAN :

Analisis dan definisi persyaratan


Pelayanan, batasan, dan tujuan sistem ditentukan melalui konsultasi
dengan user.

Perancangan sistem dan perangkat lunak


Kegiatan ini menentukan arsitektur sistem secara keseluruhan

Implementasi dan pengujian unit


Perancangan perangkat lunak direalisasikan sebagai serangkaian program

Integrasi dan pengujian sistem


Unit program diintegrasikan atau diuji sebagai sistem yang lengkap untuk
menjamin bahwa persyaratan sitem telah terpenuhi

Operasi dan pemeliharaan


Merupakan fase siklus yang paling lama. Sistem diinstall dan dipakai.
Perbaikan mencakup koreksi dari berbagai error, perbaikan dan
implementasi unit sistem dan pelayanan sistem.

MODEL WATERFALL (3)

Keuntungan:
1.

Simple dan mudah diimplementasikan

2.

Mudah diatur

3.

Cocok untuk proyek kecil

Kerugian:
1.

Tidak mengakomodasi perubahan requirement

2.

Resiko ketidakpastian tinggi

3.

Model yang buruk untuk proyek yang berorientasi obyek

4.

Model yang buruk untuk proyek lama

MODEL PROTOTYPE (1)

Prototyping adalah pengembangan yang cepat dan pengujian


terhadap model kerja (prototipe) dari aplikasi baru melalui proses
interaksi dan berulang-ulang yang biasa digunakan ahli sistem
informasi dan ahli bisnis.

MODEL PROTOTYPE (2)


TAHAPAN PENGEMBANGAN :

Analisis Kebutuhan Sistem


Analisis dilakukan untuk melihat berbagai komponen yang dipakai sistem yang
sedang berjalan meliputi hardware, software, jaringan dan sumber daya manusia.

Desain Sistem
Analisis sistem (system analysis) mendeskripsikan apa yang harus dilakukan
sistem untuk memenuhi kebutuhan informasi pemakai.

Pengujian Sistem
Paket software prototipe diuji, diimplementasikan, dievaluasi dan dimodifikasi
berulang-ulang hingga dapat diterima pemakainya

Implementasi
Setelah prototipe diterima maka pada tahap ini merupakan implementasi sistem
yang siap dioperasikan dan selanjutnya terjadi proses pembelajaran terhadap
sistem baru dan membandingkannya dengan sistem lama, evaluasi secara teknis
dan operasional serta interaksi pengguna, sistem dan teknologi informasi.

MODEL PROTOTYPE (3)


Keunggulan prototyping adalah :

Adanya komunikasi yang baik antara pengembang dan


pelanggan.

Pengembang dapat bekerja lebih baik dalam menentukan


kebutuhan pelanggan.

Pelanggan berperan aktif dalam pengembangan sistem.

Lebih menghemat waktu dalam pengembangan sistem.

Penerapan menjadi lebih mudah karena pemakai mengetahui


apa yang diharapkannya

MODEL PROTOTYPE (4)


Kelemahan prototyping adalah :

Pelanggan tidak melihat bahwa perangkat lunak belum


mencerminkan kualitas perangkat lunak secara keseluruhan dan
belum memikirkan peneliharaan dalam jangka waktu yang lama.

Pengembang biasanya ingin cepat menyelesaikan proyek


sehingga menggunakan algoritma dan bahasa pemrograman
sederhana.

Hubungan pelanggan dengan komputer mungkin tidak


menggambarkan teknik perancangan yang baik.

MODEL RAD (1)


Rapid Application Development (RAD) adalah sebuah model proses
perkembangan software sekuensial linier yang menekankan siklus
perkembangan yang sangat pendek

MODEL RAD (2)


Tahapan pengembangan :

Requirement Planning
Mengidentifikasikan kebutuhan informasi dan masalah yang dihadapi
untuk menentukan tujuan, batasan-batasan sistem, kendala dan juga
alternatif pemecahan masalah

Design Workshop,
Membuat desain proses bisnis dan desain pemrograman untuk data-data
yang telah didapatkan dan dimodelkan dalam arsitektur system
informasi.

Implementation,
Setelah Design Workshop dilakukan, selanjutnya sistem diimplementasikan
(coding) ke dalam bentuk yang dimengerti oleh mesin yang diwujudkan
dalam bentuk program atau unit program. Tahap implementasi sistem
merupakan tahap meletakkan sistem supaya siap untuk dioperasikan.

MODEL RAD (3)


Keunggulan :

Berguna untuk proyek-proyek tempat persyaratan-persyaratan


pengguna tidak pasti dan tidak tepat.

Mendorong pengguna aktif dan partisipasi manajemen (berkebalikan


dengan reaksi pasif pada model-model sistem yang tidak bekerja). Hal
ini meningkatkan antusiasme pengguna akhir pada proyek.

Proyek-proyek memiliki visibilitas dan dukungan lebih tinggi karena


keterlibatan pengguna yang ekstensif selama proses.

Para pengguna dan manajemen melihat solusi-solusi yang berbasis


perangkat lunak dan bekerja lebih cepat daripada pengembangan yang
model-driven.

Error dan penghilangan cenderung untuk dideteksi lebih awal dan


prototype daripada dalam model sistem.

MODEL RAD (4)


Kelemahan :

RAD mendorong mentalitas mengkode, mengimplementasi, dan


memperbaiki yang meningkatkan biaya seumur hidup yang
diperlukan untuk mengoperasikan, mendukung dan merawat sistem.

Dapat dengan mudah memecahkan yang salah karena analisis


masalah disingkat atau diabaikan.

Membuat para analis minder untuk mempertimbangkan alternatifalternatif teknis lain yang lebih bernilai.

Kadang-kadang lebih baik membuang sebuah prototype, tapi para


stakeholder enggan melakukannya karena menganggapnya sebagai
hilangnya waktu dan usaha dalam produk saat ini.

Penekanan pada kecepatan dapat berdampak terhadap kualitas yang


disebabkan jalan-jalan pintas yang disarankan dengan buruk melalui
metodologi tersebut.

MODEL SPIRAL (1)

Model spiral adalah model proses perangkat lunak evolusioner


yang merangkai sifat iteratif dari prototype dengan cara kontrol
dan aspek sistematis model sequensial linier.

MODEL SPIRAL (2)


TAHAPAN PENGEMBANGAN :

Perencanaan
Mendefinisikan sumber daya, ketepatan waktu, dan proyek informasi
lain yg berhubungan.

Analisis Resiko
Menaksir resikomanajemen dan teknis.

Perekayasaan
Membangun satu atau lebih representasi dari apikasi tersebut.

Evaluasi Pelanggan
Mendapatkan umpan balik dari pelanggan.

MODEL SPIRAL (3)


Kelebihan model Spiral :

Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup


perangkat lunak komputer.

Lebih cocok untuk pengembangan sistem dan perangkat lunak skala


besar

Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi


terhadap resiko setiap tingkat evolusi karena perangkat lunak terus
bekerja selama proses .

Menggunakan prototipe sebagai mekanisme pengurangan resiko dan


pada set keadaan di dalam evolusi produk.

Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan


memasukkannya ke dalam kerangka kerja iteratif .

Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga


mengurangi resiko sebelum menjadi permaslahan yang serius.

MODEL SPIRAL (4)


Kelemahan model Spiral :

Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner


ini bisa dikontrol.

Memerlukan penaksiran resiko yang masuk akal dan akan menjadi


masalah yang serius jika resiko mayor tidak ditemukan dan diatur.

Butuh waktu lama untuk menerapkan paradigma ini menuju


kepastian yang absolut

MODEL 4GT (1)

Fourth Generation Techniques (4GT) mencakup


seperangkat peralatan perangkat lunak yang
berfungsi sebagai perangkat bantu yang memudahkan
seorang pengembang software mengaplikasi
beberapa karakteristik software pada tingkat yang
tinggi, yang akan menghasilkan source code dan
object code secara otomatis sesuai dengan spesifikasi
(persyaratan khusus) yang dibuat oleh sang
pengembang perangkat lunak.

MODEL 4GT (2)


GAMBAR :

MODEL 4GT (3)


TAHAPAN PENGEMBANGAN :

Tahap Pengumpulan Kebutuhan


Tahap ini dimulai dengan mengumpulkan serangkaian kebutuhan yang
nantinya akan diterjemahkan ke dalam prototipe. Namun, apabila pelanggan
tidak yakin dengan apa yang diperlukan dan fakta-fakta tidak jelas diketahui
maka prototipe tidak dapat dikerjakan oleh peralatan 4GT.

Tahap Merancang Strategi


Tahap ini dibutuhkan untuk proyek besar yakni dengan menterjemahkan
kebutuhan menjadi prototipe operasional agar tidak timbul masalah yang
sama jika dibuat dengan model konvensional. Namun, untuk proyek skala
kecil tahap ini dapat dihilangkan dengan langsung melakukan implementasi
dengan menggunakan bahasa generasi keempat (4GT).

MODEL 4GT (4)


TAHAPAN PENGEMBANGAN :

Tahap Implementasi Menggunakan Bahasa Keempat


untuk skala kecil tahap ini dapat langsung dilakukan ketika kebutuhan telah
jelas, dan untuk proyek besar tahapan ini dijalankan setelah dirancang
prototipe operasional. Implementasi yang menggunakan 4GT memudahkan
pengembang software untuk menjelaskan hasil yang diharapkan yang
nantinya akan diterjemahkan ke dalam bentuk kode sumber dan kode objek.

Tahap Produksi
Tahap ini merupakan langkah terakhir yakni mengubah implementasi 4GT ke
dalam hasil akhir berupa produk.

MODEL 4GT (5)

Kelebihan model ini

Waktu lebih efisien

Peningkatan produktivitas yang besar.

Kekurangan model ini :

Sulit memanfaatkan alat bantu/peralatan/tools 4GT dibandingkan


dengan menggunakan bahasa pemrograman yang konvensional

Terdapat juga masalah dalam hal kode sumber yang tidak efisien.

Pemeliharaan sistem software besar yang dikembangkan oleh 4GT


juga masih sedang dalam proses pengkajian.

Terima
Kasih

You might also like