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
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
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
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
karena tanpa pengarsipan data-data development suatu software, maka akansangat menyulitkan perusahaan dalammaintenance software tersebutdikemudian hari.
Rekayasa Perangkat Lunak - UPI Bandung
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
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
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
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
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
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
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
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
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
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
Rekayasa Perangkat Lunak - UPI Bandung
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
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
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
Rekayasa Perangkat Lunak - UPI Bandung
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
Evolutionary (Spiral) Model
Rekayasa Perangkat Lunak - UPI Bandung
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
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
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
Top Related