25
PENGEMBANGAN PERANGKAT LUNAK pengembangan perangkat lunak (PL) dapat dianggap sebagai lingkaran pemecahan masalah. Untuk menyelesaikan masalah besar, dipecah menjadi kecil terus-menerus sampai paling kecil, kemudian diselesaikan (recursive). Rekayasa Perangkat Lunak - UPI Bandung

Metode Pengembangan PL

Embed Size (px)

Citation preview

Page 1: Metode Pengembangan PL

PENGEMBANGAN PERANGKAT LUNAK

pengembangan perangkat lunak (PL) dapat dianggap sebagai lingkaranpemecahan masalah. Untukmenyelesaikan masalah besar, dipecahmenjadi kecil terus-menerus sampaipaling kecil, kemudian diselesaikan(recursive).

Rekayasa Perangkat Lunak - UPI Bandung

Page 2: Metode Pengembangan PL

Model proses / daur hidup PL : model proses untuk Rekayasa Perangkat Lunak(RPL) dipilih berdasarkan sifat aplikasi danproyeknya, metode dan tool yang digunakan, serta kontrol dan deliverableyang diinginkan.

Rekayasa Perangkat Lunak - UPI Bandung

Page 3: Metode Pengembangan PL

Metode Pengembangan PL

Metode Systems Development Life Cycle, atau SDLC (Daur hidup pengembangansistem) adalah proses yang digunakanoleh analis sistem untuk mengembangkansistem , mulai dari penentuan kebutuhan, perancangan, validasi, sampai pelatihandan penyerahan kepada konsumen.

Rekayasa Perangkat Lunak - UPI Bandung

Page 4: Metode Pengembangan PL

SDLC merupakan alur kerja baku yang biasa dipakai oleh perusahaan-perusahaan vendor software dalammengembangkan software aplikasiproduksinya. SDLC ini tidak hanya pentinguntuk proses produksi software saja, namun terlebih juga sangat penting untukproses maintenance software itu sendiri,

Rekayasa Perangkat Lunak - UPI Bandung

Page 5: Metode Pengembangan PL

karena tanpa pengarsipan data-data development suatu software, maka akansangat menyulitkan perusahaan dalammaintenance software tersebutdikemudian hari.

Rekayasa Perangkat Lunak - UPI Bandung

Page 6: Metode Pengembangan PL

System / information engineering(rekayasa dan pemodelan sistem) : menyangkut pengumpulan kebutuhan(requirement gathering) pada level sistemdengan sejumlah kecil analisis serta top desain.

Analisis : kebutuhan PL, proses requirement gathering diintensifkan dan difokuskan, khususnya pada PL. Untuk memahami sifatprogram yang dibangun, analis harusmemahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan sistem maupun PL didokumentasikan dan direview bersamauser.

Rekayasa Perangkat Lunak - UPI Bandung

Page 7: Metode Pengembangan PL

Desain : fokus pada 4 hal : desaindatabase, arsitektur PL, interface, danalgoritma prosedural. Proses desainmenerjemahkan kebutuhan ke dalamrepresentasi PL sebelum dimulai coding.

Coding : menerjemahkan desain kedalam bahasa yang dimengerti mesin.

Rekayasa Perangkat Lunak - UPI Bandung

Page 8: Metode Pengembangan PL

Testing : fokus pada : Logika internal PL : memastikanbahwa semua statement telah diuji(white box )Fungsi eksternal : mengarahkan

testing untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang diberikan akan menghasilkan output sesuaiyang diinginkan (black box).

Maintenance

Rekayasa Perangkat Lunak - UPI Bandung

Page 9: Metode Pengembangan PL

Kelemahan model :

Meskipun mengakomodasi iterasi, model linier melakukannya secara tidak langsungsehingga perubahan-perubahan dapatmenyebabkan keraguan saat tim proyekberjalan

Jika user sulit menyatakan semuakebutuhannya secara explisit, model inisulit mengakomodasi ketidakpastian itu

Rekayasa Perangkat Lunak - UPI Bandung

Page 10: Metode Pengembangan PL

User harus bersabar karena hasil barubisa dinikmati setelah testing (akhirwaktu). Jika ada kesalahan besar yang tidak terdeteksi sampai program yang bekerja tersebut dikaji ulang, bisamenjadi petaka.

Pengembang sering melakukanpenundaan yang tidak perlu. Anggota timharus menunggu anggota tim lain selesaimengerjakan tugasnya yang mempunyaiketerkaitan dan ketergantungan tinggi.

Rekayasa Perangkat Lunak - UPI Bandung

Page 11: Metode Pengembangan PL

Meski memiliki kelemahan, model inimasih lebih baik daripada pendekatanyang sembrono / sembarangan.

Contoh : model Waterfall terdiri darifase investigasi -> analisis -> desain -> implementasi (coding) -> testing -> maintenance.

Rekayasa Perangkat Lunak - UPI Bandung

Page 12: Metode Pengembangan PL

Prototyping Model

Berfungsi sebagai mekanismependefinisian kebutuhan. Pertama, developer menggali semua kebutuhanuser secara cepat kemudian membangunprototipe yang sesuai dengan yang diinginkan dengan cepat pula danditunjukkan ke user, baru dibuat PL yang sesungguhnya berdasarkan komentaruser terhadap prototipe.

Rekayasa Perangkat Lunak - UPI Bandung

Page 13: Metode Pengembangan PL

Kelebihan model prototipe : user dapat langsungmelihat wujud PL yang akan dibangun meskipunsederhana dan dari sana dapat digali kebutuhanyang lebih dalam sebagai bahan penyusunan PL berikutnya.

Rekayasa Perangkat Lunak - UPI Bandung

Page 14: Metode Pengembangan PL

Masalah yg muncul :

User merasa prototipe merupakan PL yang sesungguhnya, padahal ketika membuatprototipe belum disertakan kualitas PL secarakeseluruhan / kemampuan pemeliharaanuntuk jangka panjang

Developer sering membuat kompromi-kompromi implementasi untuk membuatprototipe bekerja dengan cepat sehinggaakan ditemui ketidakcocokan pada prototipeketika prototipe dibangun dengan bahasayang sederhana

Program dibuat ulang / prototipe selalu baru

Rekayasa Perangkat Lunak - UPI Bandung

Page 15: Metode Pengembangan PL

Rapid Application Development (RAD) Model

Model proses perkembangan PL sekuensial linier yang menekankan siklusperkembangan yang sangat pendek. Menekankan perkembangan komponenprogram yang bisa dipakai lagi sehinggamendasari konsep Object-Oriented.

Rekayasa Perangkat Lunak - UPI Bandung

Page 16: Metode Pengembangan PL

Rekayasa Perangkat Lunak - UPI Bandung

Page 17: Metode Pengembangan PL

Fase2 pendekatan RAD :

Bussines modeling

Data modeling

Proses modeling

Application generation : RAD mengasumsikan pemakaian teknik 4G (generasi keempat). Selain menciptakanPL dengan bahasa pemrograman generasiketiga yang konvensional, RAD lebihbanyak memproses kerja untuk memakailagi komponen program atau menciptakankomponen yang bias dipakai lagi.

Rekayasa Perangkat Lunak - UPI Bandung

Page 18: Metode Pengembangan PL

Testing and Turn Over : karenamenekankan pada reusability, banyakkomponen program yang telah diujisehingga mengurangi keseluruhan waktupengujian. Tapi komponen baru harusdiuji dan semua interface harus dilatihsecara penuh.

Rekayasa Perangkat Lunak - UPI Bandung

Page 19: Metode Pengembangan PL

The Incremental Model

Mengadopsi model sekuensial linier dan model prototipe. Fungsi dasar sama, tapi ada tambahanasesoris (contoh : pada M.Word 1997, 2000). Fungsi tambahan ditambahkan terus untukmembuat sistem menjadi lebih baik. Padaincrement pertama PL yang jadi, mengakomodasikebutuhan inti. Baru pada tahap berikutnyaditambahkan kemampuan baru.

Contoh : pengembangan microsoft word. Increment 1 : hanya memberi fungsi inti –>

hanya bisa mengetik saja Increment 2 : bisa word art, spelling, dll Kelebihan model : cocok untuk produksi masal.

Rekayasa Perangkat Lunak - UPI Bandung

Page 20: Metode Pengembangan PL

Rekayasa Perangkat Lunak - UPI Bandung

Page 21: Metode Pengembangan PL

Penomoran dimulai dari arsiran paling dalam. Proses yang terjadi :

Proyek pengembangan konsep

Proyek pengembangan produk baru

Proyek perbaikan produk

Proyek pemeliharaan produk

Rekayasa Perangkat Lunak - UPI Bandung

Page 22: Metode Pengembangan PL

Evolutionary (Spiral) Model

Rekayasa Perangkat Lunak - UPI Bandung

Page 23: Metode Pengembangan PL

Semua proyek tersebut dibangun denganmengikuti model spiral melalui tahap :

Customer communication

Planning

Risk analysis

Engineering Construction and release

Customer evaluation

Rekayasa Perangkat Lunak - UPI Bandung

Page 24: Metode Pengembangan PL

Latihan kasus

Anda ditunjuk sebagai manejer yang mendapatkan proyek sebuah perangkatlunak pengolah database yang sangatsederhana, tetapi waktu yang ditentukanoleh pelanggan sangat ketat .

Pertanyaan :

a. model pengembangan/proses PL manayang anda pilih ?Mengapa ??.

Rekayasa Perangkat Lunak - UPI Bandung

Page 25: Metode Pengembangan PL

Anda dipilih menjadi seorang manajer proyekpada sebuah organisasi sistem informasiyang mendapat proyek membangun sebuahaplikasi yang sangat mirip dengan aplikasilain yang sudah pernah dibangunsebelumnya, meskipun yang satu ini lebihbesar dan kompleks, syarat-syaratnya sudahdidokumentasikan dengan teliti olehpemakai.

Pertanyaan :model pengembangan/proses PL mana yang anda pilih ? Mengapa ??.

Rekayasa Perangkat Lunak - UPI Bandung