software process model

14
Software Process Model 1. Fourth Generation Techniques/Model Teknik Generasi ke-4/4GT Istilah 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. Dewasa ini, 4GT tools dipakai sebagai bahasa non prosedur untuk DataBase Query, Pembentukan laporan (Report Generation), Manipulasi data, Definisi dan interaksi layar (screen), Pembentukan object dan source (Object and source generation ), Kemampuan grafik yang tinggi, dan Kemampuan spreadsheet.

Upload: joy-sipahutar

Post on 13-Aug-2015

74 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Software Process Model

Software Process Model

1. Fourth Generation Techniques/Model Teknik Generasi ke-4/4GT

Istilah 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. Dewasa ini, 4GT tools dipakai sebagai bahasa non

prosedur untuk DataBase Query, Pembentukan laporan (Report

Generation), Manipulasi data, Definisi dan interaksi layar (screen),

Pembentukan object dan source (Object and source generation ),

Kemampuan grafik yang tinggi, dan Kemampuan spreadsheet.

Tahapan-tahapan model 4GT sebagai berikut.

- 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

Page 2: Software Process Model

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).

- 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.

Kelebihan :

- Pengurangan waktu dan peningkatan produktivitas yang besar.

Kekurangan :

- 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.

Model ini diaplikasikan untuk mengembangkan perangkat lunak yang

memakai bentuk bahasa khusus atau notasi grafik yang

dieksekusi/diselesaikan dengan syarat atau ketentuan yang dipahami oleh

pemakai/pengguna/customer.

Page 3: Software Process Model

2. Component Assembly Model (CAM/Model Perakitan Komponen)

Model ini merupakan gabungan dari berbagai sifat dan karakter

dari model spiral Boehm dan sangat erat keterikatannya dengan model

RAD (Rapid Application Development) model karena model CAM ini

menggunakan peralatan-peralatan dan GUI (Graphic User Interface) untuk

membangun software. Dengan kata lain, pembuatan aplikasinya dibuat

dari paket perangkat lunak yang berisi serangkaian komponen yang telah

ada sebelumnya. Namun, waktu yang dibutuhkan dapat disesuaikan atau

lebih efektif ketimbang harus mengerjakan program dari awal.

Tahapan-tahapan Model ini adalah :

- Tahap Identifikasi calon-calon komponen (kelas objek).

- Tahap melihat komponen-komponen dalam pustaka; Tahap

mengekstrak komponen jika ada.

- Tahap membangun komponen jika tidak ada; Tahap menyimpan

komponen baru pada pustaka.

- Tahap mengkonstruksi iterasi ke-n dari sistem.

Kelebihan :

- Menggunakan program atau komponen yang sudah ada dan

menyusunnya menjadi sebuah program yang lebih kompleks dan

Page 4: Software Process Model

berkembang sesuai dengan kebutuhan user/pengguna sehingga dapat

mengefisienkan penggunaan waktu dan tenaga.

- Model ini juga menyediakan kemampuan untuk memvisualisasikan

hasil rakitan dengan kesanggupan untuk mengukur, menganalisa,

merancang dan merancang ulang program.

Kekurangan :

- program atau komponen-komponen terdahulu tidak kompatibel atau

sejalan dengan model perakitan komponen ini sehingga untuk

perusahaan berskala kecil akan kesulitan menemukan komponen yang

sesuai untuk dirakit.

Model ini sangat sesuai digunakan oleh perusahaan besar yang sudah

berpengalaman mengembangkan software. Mereka dapat memanfaatkan

software-software yang telah umum dikembangkan sebelumnya menjadi

bentuk baru dari software yang ingin dikomersilkan.

3. RAD Model (Rapid Aplication Development)

Rapid Application Development (RAD) merupakan model proses

incremental software yang menekankan pada short development cycle.

RAD model adalah adaptasi berkecepatan tinggi “high-speed” dari

waterfall model yang mana secara cepat perkembangan dicapai

menggunakan pendekatan konstruksi berbasis komponen. Jika kebutuhan

dipahami dengan baik, proses RAD memungkinkan tim pengembang

menciptakan “sistem fungsional yang utuh” dalam periode waktu yang

singkat kira-kira 60 sampai 90 hari. Seperti pada model yang lain proses

model RAD juga melalui beberapa tahapan yang dapat dilihat pada

gambar dibawah.

Page 5: Software Process Model

Tahapan model RAD adalah sebagai berikut :

- Communication : memahami masalah dan informasi khusus yang harus

cocok dengan software yang akan dibuat

- Planning : merupakan perencanaan yang penting untuk dilakukan

karena beberapa software tim bekerja secara bersamaan / parallel pada

fungsi sistem yang berbeda

- Modeling : berisi business modeling, data modeling, dan process

modeling menjadi dasar komponen dari tahap konstruksi yang

dikerjakan secara bersamaan oleh beberapa tim yang berbeda

- Construction : berisi penggunaan kembali komponen software yang

telah ada, automatic code generation, dan melakukan testing

- Deployment : berisi integration, delivery, dan feedback

Page 6: Software Process Model

Kelebihan :

- Waktu pengerjaannya yang terbilang singkat yaitu kira-kira 60-90 hari

RAD dalam prosesnya dapat menggunakan kembali komponen software

maupun program yang sudah ada sebelumnya sehingga menghemat waktu

dan lebih mudah

Kekurangan :

- Membutuhkan sumber daya manusia yang besar, untuk membentuk

tim-tim

- Developers dan customers dituntut harus commit pada kecepatan

aktivitas kerja untuk menyelesaikan sistem sesuai dengan frame time,

jika tidak maka project RAD akan gagal

- Jika sistem tidak dapat dimodulkan dengan benar, maka dalam

pembangunan komponen dari RAD akan bermasalah

- Jika performance hanya berfokus pada perbaikan interface dari

komponen sistem, maka pendekatan RAD mungkin tidak bekerja

- Jika resiko terlalu tinggi maka model RAD bukanlah model yang tepat

untuk digunakan

Model RAD sangat tepat diterapkan untuk sistem yang telah jelas dan

lengkap kebutuhannya, di mana terdapat komponen-komponen yang dapat

dipakai kembali dalam proyek yang berskala kecil dengan waktu

pengembangan perangkat lunak yang singkat.

4. Prototyping Model

Prototyping Model digunakan ketika customer tidak tahu secara

pasti apa yang dibutuhkannya sehingga developer pun kurang memahami

apa yang diinginkan oleh customer. Paradigma Prototyping membantu

Software Engineer dan customer lebih memahi akan apa yang akan

dibuatnya ketika kebutuhan tidak jelas. Gambar dari model Prototyping

dapat dilihat seperti dibawah ini.

Page 7: Software Process Model

Tahapan dari model Prototyping adalah :

- Communication : komunikasi antara developer dan customer mengenai

tujuan pembuatan dari software, mengidentifikasi apakah kebutuhan

diketahui

- Quick Plan : perancanaan cepat setelah terjalin komunikasi

- Modeling, Quick Design : segera membuat model, dan quick design

fokus pada gambaran dari segi software apakah visible menurut

customer

- Construction of Prototype : quick design menuntun pada pembuatan

dari prototype

- Deployment, Delivery & Feedback : prototype yang dikirimkan

kemudian dievaluasi oleh customer, feedback digunakan untuk

menyaring kebutuhan untuk software.

Perulangan terjadi agar prototype diperbaiki untuk memuaskan kebutuhan

dari customer, sementara pada waktu yang sama memungkinkan developer

memahami lebih baik apa yang dibutuhkan untuk menyelesaikan software.

Page 8: Software Process Model

Kelebihan :

- Tidak menghabiskan biaya besar apabila terdapat kekurangan terhadap

produk yang telah dikirimkan, karena hanya berupa prototype yang

sedang dicoba customer untuk mengetahui kekurangan mengenai

prototype tersebut agar developer dapat memperbaiki kekurangan yang

ada sehingga menghasilkan produk seperti yang diinginkan

Kekurangan :

- Customer hanya melihat pada versi kerjanya tanpa menyadari bahwa

prototype dikerjakan bersama-sama, hal ini menyebabkan developer

tidak memperhatikan kualitas ataupun jangka panjang

pemeliharaannya

- Developer sering melakukan kompromi pada pengimplementasian agar

prototype selesai dengan cepat.

5. Concurrent Development Model

Concurrent Development Model kadang disebut concurrent

engineering, dapat direpresentasikan dengan skema sebagai series dari

kerangka aktifitas, aksi software engineering dan juga tugas. Pada model

ini aktifitas kerja dilakukan secara bersamaan, setiap proses kerja memiliki

beberapa pemicu kerja dari aktifitas. Pemicu dapat berasal dari awal proses

kerja maupun dari pemicu yang lain karena setiap pemicu akan saling

berhubungan. Misalnya proses desain akan berubah atau dihentikan

sementara karena ada perubahan permintaan kebutuhan dari costumer.

Gambar dari model ini dapat dilihat seperti dibawah ini.

Page 9: Software Process Model

Kelebihan :

- Proses konkuren model ini berlaku untuk semua jenis pengembangan

perangkat lunak dan memberikan gambaran yang akurat tentang

keadaan sekarang dari suatu proyek

Kekurangan :

- statenya sangat banyak sehingga membutuhkan waktu lebih banyak.

Page 10: Software Process Model

Model proses yang mungkin digunakan pada SRS “Perancangan Sistem Informasi

Manajemen Penjualan Tiket Konser Musik secara Online” adalah Rapid

Application Development (RAD). Berdasarkan kelebihan yang ada, yaitu Waktu

pengerjaannya yang terbilang singkat yaitu kira-kira 60-90 hari, sistem yang

dibuat dapat lebih cepat untuk dipublikasikan. Meskipun model proses ini

membutuhkan sumber daya manusia yang besar, dengan begitu sistem yang

dibuat dapat dikembangkan oleh administrator bekerja sama dengan para

promotor atau event organizer. Dengan begitu pengembangan sistem dapat lebih

mudah bila dalam satu tim.