Rabu, 24 Oktober 2012

The Model of software ☺

Hay Guyss! ^^ kali  ini saya akan membahas tentang apa itu "Model Software"..


Pertama-tama model software itu terdiri dari 5 yaitu :
1. Waterfall Model
2. Incremental Mode
3. Prototyping Model
4. Spiral Model
5. RAD Model (Rapid Aplication Development)

Pertama saya akan menjelaskan apa itu "waterfall model".. menurut yang saya pahami :

1. Waterfall Model :

Waterfall model itu merupakan model yang menyerupai Air Terjun.. Waterfall Model akan berlanjut apabila tahap sebelumnya sudah selesai dilakukan. Jika tidak selesai maka tahapan selanjutnya tidak akan berlanjut. hmm...

Waterfall memiliki langkah-langkah seperti :
1. Requirements analysis and definiton: mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.\

2. System and software design : desain dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.

3. Implementation and unit testing : Desain program diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemograman yang sudah ditentukan. Program yang dibangun langsung diuji baik secara unit.

4. Integration and system testing : Penyatuan unit-unit program kemudian diuji secara keseluruhan (system testing).

5. Operation and maintenance : Mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi sebenarnya.

Kelebihan Waterfall Model  :
  1. Merupakan model pengembangan paling handal dan paling lama digunakan.
  2. Cocok untuk sistem software berskala besar.
  3. cocok untuk sistem software yang bersifat generik.
  4. pengerjaan proyek sistem akan terjadwal dengan baik dan mudah terkontrol.
  5. software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
  6. Document pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya. 
Kekurangan Waterfall Model : 
  • membutuhkan keahlian yang baik atau yang telah berpengalaman dalam mengembangkan perangkat lunak, dalam arti metode ini kurang cocok bagi pemula.
  • Diperlukan majaemen yang baik, karena proses pengembangan tidak dapat berulang sebelum menghasilkan suatu produk, yaitu aplikasi. Jadi apabila dalam suatu proses seperti perancangan tidak selesai tepat waktu, maka akan mempengaruhi keseluruhan proses pengembangan perangkat lunak.
Bahan Referensi :
 http://blog.unsri.ac.id/achekha/tugas-kuliah/keunggulan-dan-kelemahan-dari-beberapa-jenis-model-pengembangan-perangkat-lunak-rpl/mrdetail/1928


2. Incremental Model
 
Incremental Model adalah proses pengembangan bertahap untuk perangkat lunak berskala besar, dimana perangkat lunak dipecah kedalam bagian-bagian atau modul-modul yang dikerjakan terpisah dan bertahap. Analisa kebutuhan untuk keseluruhan perangkat lunak dalam model ini harus dilakukan di awal termasuk untuk melihat prioritas kebutuhan.

 Incremental Model memiliki langkah-langkah yaitu :
  • Requirement (kebutuhan)
  • Specification (spesifikasi)
  • Architecture design 
Kelebihan Incremental Model:

-   Merupakan model pengembangan paling handal dan paling lama digunakan.
-   Cocok untuk system software berskala besar.
-   Cocok untuk system software yang bersifat generic.
-   Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.

Kekurangan Incremental Model:

-   Persyaratan system harus digambarkan dengan jelas.
-   Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.
-  Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan

Bahan Referensi : 
http://itsum.wordpress.com/2010/09/27/kelebihan-dan-kekurangan-setiap-model-pada-software-development-life-cycle-sdlc/


3. Prototyping Model

Prototyping itu merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama proses pembuatan sistem.

Tahapan - Tahapan Prototyping
  • Pengumpulan kebutuhan.
    • Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.
  • Membangun prototyping.
    • Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output)
  • Evaluasi protoptyping.
    • Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulangu langkah 1, 2 , dan 3.
  • Mengkodekan system.
    • Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.
  • Menguji system.
    • Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur dan lain-lain
  • Evaluasi Sistem.
    • Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan . Juka ya, langkah 7 dilakukan; jika tidak, ulangi langkah 4 dan 5.
  • Menggunakan system.
    • perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.

Kelebihan Prototyping Model :

-     Sudah Terstruktur
-     Adanya komunikasi yang  baik antara pengembang dan pelanggan
-     Prototype melibatkan user dalam analisa dan desain.
-     Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan
-     Pelanggan berperan aktif dalam pengembangan system
-     Lebih menghemat waktu dalam pengembangan system
-     Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.


Kekurangan Prototyping Model : 

-   Proses analisis dan perancangan terlalu singkat.
-   Mengesampingkan alternatif pemecahan masalah.
-   Bisanya kurang fleksible dalam mengahdapi perubahan.
-   Protitype yang dihasilkan tidak selamanya mudah dirubah
-  Protype terlalu cepat selesai


Bahan Referensi :
   http://itsum.wordpress.com/2010/09/27/kelebihan-dan-kekurangan-setiap-model-pada-software-development-life-cycle-sdlc/
http://edwardaditya.blogspot.com/2010/04/pengertian-prototype.html


4. Spiral Model


Spiral Model merupakan pengembangan dan penggabungan dari prototyping dan Incremental Model, dimana proses berjalan dengan mekanisme pengembangan prototip yang dilakukan secara berulang(iteratif) untuk melengkapi perangkat lunak hingga sesuai dengan kebutuhan.

Kelebihan Model Spiral:
  • ditekankan pada pencairan alternatif, dan pemaksaan penggunaan kembali Software yang telah ada
  • Analisa resiko
  • Adanya prototype memudahkan komunikasi dengan konsumen
Kekurangan Spiral Model:
  • Biasanya pihak pengembang dan perusahaan berada pada satu pihak yang sama
  • Tahapan analisa resiko sewaktu-waktu dapat membatalkan proses rekayasa, jika pihak pengembang adalah pihak di luar perusahaan, maka timbulah masalah hukum
Bahan Referensi :
http://trisnowlaharwetan.wordpress.com/2010/03/10/perbandingan-model-dalam-rekayasa-perangkat-lunak/


5. RED Model (Rapid Aplication Development)

Yaitu Sebuah model proses perkembangan perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RED ini merupakan sebuah adaptasi "kecepatan Tinggi" dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi 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).

pendekatan RED memimiliki fase-fase sebagai berikut:
- Bussines Modelling : Aliran informasi diantara fungsi-fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan berikut : informasi apa yang mengendalikan proses bisnis? informasi apa yang dimunculkan? siapa yang memunculkan? kemana informasi itu pergi? siapa yang memprosesnya?

- Data Modelling : Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modelling di saring ke dalam serangkaian objek data yang dibutuhkan utnuk menopang bisnis tersebut.

- Prosess Modelling : Aliran informasi yang didefinisiskan didalam fase data modelling ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis.

- Application generation : RAD mengasumsikan pemakaian teknik generasi ke empat. RED lebih banyak memproses kerja untuk memakai lagi komponen program yang ada (pada saat memungkinkan) atau menciptakan komponen yang bisa dipakai lagi (bila perlu).

- Testing and turnover : Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.


Kelebihan RAD (Rapid Aplication Development) : 

·         Setiap fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan sehingga waktunya lebih efisien
·         RAD mengikuti tahap pengembangan sistem seperti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuat dari awal lagi dan waktu yang lebih singkat


Kekurangan RAD (Rapid Aplication Development) : 

·         Model yang besar (skala proyek), membutuhkan resources yg baik dan solid
·         Membutuhkan komitmen pengembang dan user yang sama agar cepat selesai sesuai dengan rencana


Bahan Referensi :
http://blog.unsri.ac.id/achekha/tugas-kuliah/keunggulan-dan-kelemahan-dari-beberapa-jenis-model-pengembangan-perangkat-lunak-rpl/mrdetail/1928

Bloggersss.. Sekian dulu pembahasan saya mengenai Model Software ^^
Nantikan blog-blog saya selanjutnya :)

Thank-You








 

Tidak ada komentar:

Posting Komentar