Rabu, 07 Oktober 2015

Tugas Rangkaian Perangkat Lunak ( RPL )

1. Transformasi Formal
Transformasi formal digunakan untuk mengembangkan bagian-bagian sistem yang memiliki persyaratan keselamatan yang tinggi dan pendekatan reuse digunakan untuk pengimplementasian bagian-bagian lain dari sistem data manajemen.
Pendekatan ini berdasarkan pembuatan spesifikasi sistem formal secara matematik dan transformasi spesifikasi dengan menggunakan metode matematik atau dengan suatu program.Transformasi ini adalah correctness preserving, ini berarti bahwa kita dapat yakin program yang dikembangkan sesuai dengan spesifikasi. Pengembangan sistem formal menggunakan suatu model sistem matematika yang ditransformasikan ke implementasi. Pengembangan sistem formal merupakan pendekatan terhadap pengembangan perangkat lunak yang memiliki kesamaan dengan model air terjun,tetapi proses pengembangannya didasarkan pada transformasi matematis dari spesifikasi sistem menjadi program yang dapat dijalankan.Perbedaan kritis antara pendekatan evolusioner dengan air terjun adalah:
- Spesifikasi persyaratan perangkat lunak diperbaiki menjadi spesifikasi formal yang rinci yang   dinyatakan dalam notasi matematis.
- Proses pengembangan perancangan,implementasi dan pengujian unit digantikan oleh proses pengembangan transformasional dimana spesifikasi formal diperbaiki,melalui serangkaian transformasi menjadi program.

Masalah pengembangan sistem formal
-  Dibutuhkan ketrampilan dan pelatihan khusus untuk mengaplikasikan teknik ini
-  Kesulitan dalam menspesifikasikan beberapa aspek ke dalam sistem misalnya dalam penentuan user interface applicability
- System kritis khususnya sistem yang mengutamakan faktor keselamatan dan keamanan sebelum sistem utamanya dioperasikan.

2. RAD ( Rapid Aplication Development)
Rapid Application Development (RAD) adalah sebuah model proses perkembangan software sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier di mana perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada aplikasi sistem konstruksi, pendekatan RAD melingkupi fase–fase sebagai berikut : bussiness modeling, data modeling, process modeling, application generation dan testing and turnover. Model Pengembangan Sistem Informasi Berbasis Web, berikut adalah beberapa model pengembangan informasi berbasis web, yaitu :
- Metode RAD (Rapid Application Development) merupakan metode pengembangan sistem secara linear sequential yang menekankan pada siklus pengembangan yang sangat singkat.
- Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60-90 hari).
- Pemakai sistem dapat mendefinisikan kebutuhan perangkat lunak dengan baik.
- Pemakai sistem bersedia meluangkan waktu yang cukup untuk berkomunikasi intensif dengan pengembang sehubungan dengan pengembangan perangkat lunak.

Keuntungan RAD
Beberapa keuntungan dalam menggunakan metode RAD adalah sebagai berikut:
- Membeli sistem yang baru memungkinkan untuk lebih menghemat biaya ketimbang mengembangkan sendiri.
- Proses pengiriman menjadi lebih mudah, hal ini dikarenakan proses pembuatan lebih banyak menggunakan potongan-potongan script.
- Mudah untuk diamati karena menggunakan model prototype, sehingga user lebih mengerti akan sistem yang dikembangkan.
- Lebih fleksibel karena pengembang dapat melakukan proses desain ulang pada saat yang bersamaan.
- Bisa mengurangi penulisan kode yang kompleks karena menggunakan wizard.
- Keterlibatan user semakin meningkat karena merupakan bagian dari tim secara keseluruhan.
- Mampu meminimalkan kesalahan-kesalahan dengan menggunakan alat-alat bantuan (CASE tools).
- Mempercepat waktu pengembangan sistem secara keseluruhan karena cenderung mengabaikan kualitas.
- Tampilan yang lebih standar dan nyaman dengan bantuan software-software pendukung.Kerugian RAD
Beberapa kerugian dalam menggunakan metode RAD adalah sebagai berikut :
- Dengan melakukan pembelian belum tentu bisa menghemat biaya dibandingkan dengan mengembangkan sendiri.
- Membutuhkan biaya tersendiri untuk membeli peralatan-peralatan penunjang seperti misalnya software dan hardware.
- Kesulitan melakukan pengukuran mengenai kemajuan proses.
- Kurang efisien karena apabila melakukan pengkodean dengan menggunakan tangan bisa lebih efisien.
- Ketelitian menjadi berkurang karena tidak menggunakan metode yang formaldalam melakukan pengkodean.
- Lebih banyak terjadi kesalahan apabila hanya mengutamakan kecepatan dibandingkan dengan biaya dan kualitas.
- Fasilitas-fasilitas banyak yang dikurangi karena terbatasnya waktu yang tersedia.
- Sistem sulit diaplikasikan di tempat yang lain.
- Fasilitas yang tidak perlu terkadang harus disertakan, karena menggunakan komponen yang sudah jadi, sehingga hal ini membuat biaya semakin meningkat.


3. Pengembangan Incremental
Model incremental merupakan perbaikan dari model waterfall dan sebagai standar pendekatan top-down. Ide dasar dari model ini adalah membangun software secara meningkat (increment) berdasarkan kemampuan fungsional. Model incremental ini diaplikasikan pada sistem pakar dengan penambahan rules yang mengakibatkan bertambahnya kemampuan fungsional sistem. Keuntungan dari model ini adalah bahwa penambahan kemampuan fungsional akan lebih mudah diuji, diverifikasi, dan divalidasi dan dapat menurunkan biaya yang dikeluarkan untuk memperbaiki sistem. Model incremental merupakan model continous rapid prototype dengan durasi yang diperpanjang hingga akhir proses pengembangan. Pada model prototipe biasa, prototipe hanya dibuat pada tahap awal untuk mendapatkan kebutuhan user.Mengadopsi model sekuensial linier dan model prototipe.Fungsi dasar sama tapi ada tambahan asesoris (contoh :adaM.Word 1997, 2000). Fungsi tambahan ditambahkan terus untuk membuat sistem menjadi lebih baik.Pada increment pertama perangkat lunak yang jadi, mengakomodasi kebutuhan inti. Berupa data hap berikutnya ditambahkan kemampuanbaru.Pada model ini, requirement software dipecah menjadi beberapa fungsi-fungsi atau bagian-bagian.Sebuah daftar kegiatan project akan dibuat dengan maksud mengetahui tiap-tiap fungsi yang harus dilakukan dalam tiap unit. Masing-masing unit fungsional diimplementasikan dalam sebuah penambahan dan produk akhirnya dikembangkan setelah keseluruhan unit fungsional diimplementasikan dalam proses pengembangannya.Masing-masing penambahan pada tiap unit terdiri dari 3 fase: design, implementasi, dananalisis. Proses pengembangan ini akan terus diulang sampai keseluruhan akitivitas dalam daftar aktivitas diimplementasikan.
Model incremental merupakan persyaratan- persyaratan software dipecah kedalam beberapa unit fungsi.
Contoh : pengembangan microsoft word.
Increment 1 : hanya member fungsi inti –>hanya bias mengetik aja
Increment 2 : bisa word art, spelling, dll


Kelebihan model :
- cocokuntukproduksimasal.
Masalah dengan Incremental model:
- cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
- mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna kedalam rencana spesifikasi masing-masing hasil incremental.
Perbandingan Model dalam Rekayasa Perangkat Lunak
Setelah kita membahas beberapa permodelan rekayasa perangkat lunak, diantaranya model waterfall, model spiral, model incremental dan lain-lain, maka dalam pembahasan kali ini kita akan membahas per bandingan model rekayasa perangkat lunak tersebut.Kita akan membahas 3 model perbandingan yaitu waterfall, spiral dan incremental. Sebaiknya model tersebut digunakan jika :
No Faktor Waterfall Spiral Incremental
1 Proyekdenganukuranresiko Kecil Sedang Besar
2 Ukuran Software Kecil Besar Besar
3 Jenisaplikasi Biasa Agakbiasa Tidakbiasa
4 Fleksibelterhadapperubahan (waktu) Rendah Perubahanawal Perubahanselamaproyekberlangsung
5 Keterlibatankonsumen Rendah Sedang Tinggi
6 Bahasapemrograman Prosedural Prosedural, OOP OOP

Kelebihan Incremental Model
Memberikan kualitas produk operasional pada setiap tahap tetapi hanya satu yang memenuhi persyaratan dari klien Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya bagian perbagian. Memaksimalkan pengembalian modal investasi konsumen.


Kekurangan Incremental Model                    
Tiap bagian tidak dapat diintegrasikan setiap tambahan yang dibangun harus dimasukkan kedalam struktur yang adatan pamenurunkan kualitas dari yang telah dibangun system tersebut sampai saat ini. Penambahan staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut.


4. Four - Generation Techniques (4GT)
Istilah generasi ke empat, mengarah ke perangkat lunak yang umum yaitu tiap pengembang perangkat lunak menentukan beberapa karakteristik perangkat lunak pada level tinggi.Saat ini pengembangan perangkat lunak yang mendukung 4GT, berisi tool-tool berikut :
Bahasa non prosedural untuk query basis data
Report generation
Data manipulation
Interaksi layar
Kemampuan grafik level tinggi
Kemampuan spreadsheet
Tiap tool ini ada tapi hanya untuk suatu aplikasi khusus.
Menggunakan perangkat bantu (tools) yang akan membuat kode sumber secara otomatis berdasarkan spesifikasi dari pengembang perangkat lunak. Hanya digunakanuntuk menggunakan perangkat lunak yang menggunakan bahasa khusus atau notasi grafik yang diselesaikan dengan syarat yang dimengerti pemakai. Cakupan aktivitas 4GT :
Pengumpulan kebutuhan, idealnya pelanggan akan menjelaskan kebutuhan yang akan ditranslasikan ke prototype operasional.Translasi kebutuhan menjadi prototype operasional, atau langsung melakukan implementasi secara langsung dengan menggunakan bahasa generasi keempat (4GL) jika aplikasi relatif kecil.Untuk aplikasi yang cukup besar, dibutuhkan strategi perancangan sistem walaupun 4GL akan digunakan.
Pengujian.
Membuat dokumentasi.
Melaksanakan seluruh aktivitas untuk mengintegrasikan solusi-solusi yang membutuhkan paradigma rekayasa perangkat lunak lainnya. Salah satu keuntungan penggunaan model 4GT adalah pengurangan waktu dan peningkatan produktivitas secara besar, sementara kekurangannya terletak pada kesulitan penggunaan perangkat bantu (tools) dibandingkan dengan bahsa pemrograman, dan juga kode sumber yang dihasilkannya tidak efisien.
Menggunakan perangkat bantu yang akan membuat kode sumber secara otomatis berdasarkan spesifikasi dari pengembang perangkat lunak.Hanya digunakan untuk mengembangkan perangkat lunak yang menggunakan bentuk bahasa khusus atau notasi grafik yang diselesaikan dengan syarat yang dimengerti pemakai.
Cakupan aktivitas 4GT:
Pengumpulan kebutuhan.
Translasi kebutuhan menjadi prototype operasional atau langsung melakukan  implementasi secara langsung dengan menggunakan bahasa generasi keempat (4GL) jika aplikasi relatif kecil.
Untuk aplikasi yang cukup besar, dibutuhkan strategi perancangan sistem walaupun 4GL akan digunakan.
Pengujian.
Membuat dokumentasi.
Melaksanakan seluruh aktivitas untuk mengintegrasikan solusi-solusi yang membutuhkan paradigma rekayasa perangkat lunak lainnya.
Salah satu keuntungan penggunaan model 4GT adalah pengurangan waktu dan peningkatan produktivitas secara besar sementara kekurangannya terletak pada kesulitan penggunaan perangkat bantu dibandingkan dengan bahasa pemrograman dan juga kode sumber yang dihasilkannya tidak efisien.

http://evhaptik.blogspot.co.id/2013/03/model-pengembangan-perangkat-lunak.html


Tidak ada komentar:

Posting Komentar