Senin, 26 Maret 2018

SIKLUS REKAYASA PERANGKAT LUNAK
(SDLC)

1. Pengertian

          SDLC atau Software Development Life Cycle adalah proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara yang sudah teruji baik).

1. Inisialisasi (initiation)
2. Pengembangan konsep sistem (system concept development)
3. Perencanaan (planing)
4. Analisis kebutuhan (requirements analysis)
5. Desain (design)
6. Pengembangan (development)
7. Integrasi dan pengujian (integration and test)
8. Implementasi (implementation)
9. Operasi dan pemeliharaan (operation and maintenance)
10. Disposisi (disposition)

          Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC
juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak,
yang terdiri dari tahap-tahap: analisa (analysis), desain (design), implementasi
(implementation), uji coba (testing) dan pengelolaan (maintenance). Dalam rekayasaperangkat lunak, konsep SDLC mendasari berbagai jenis metodologi pengembangan perangkat lunak. Metodologi-metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan pengendalian pembuatan sistem informasi, yaitu proses pengembangan perangkat lunak. Terdapat 3 jenis metode siklus hidup sistem yang paling banyak digunakan, yakni: siklus hidup sistem tradisional (traditional system life cycle), siklus hidup menggunakan protoyping (life cycle using prototyping), dan siklus hidup sistem orientasi objek (object-oriented system life cycle).







1.    Metode Pengembangan Perangkat Lunak (Spiral)
Pada artikel kali ini saya akan melanjutkan postingan tentang salah satu metode pengembangan perangkat lunak yaitu metode PRL SPIRAL. Model ini mengadaptasi dua model perangkat lunak yang ada yaitu model prototyping dengan pengulangannya dan model waterfall dengan pengendalian dan sistematikanya.  Model ini dikenal dengan sebutan Spiral Boehm. Pengembang dalam model ini memadupadankan beberapa model umum tersebut untuk menghasilkan produk khusus atau untuk menjawab persoalan-persoalan tertentu selama proses pengerjaan proyek.
Hasil gambar untuk sdlc spiral
Model spiral (spiral model) adalah model proses software yang evolusioner yang merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari model sekuensial linier. Model ini berpotensi untuk pengembangan versi pertambahan software secara cepat. Di dalam model spiral, software dikembangkan di dalam suatu deretan pertambahan. Selama awal iterasi, rilis inkremental bisa merupakan sebuah model atau prototipe kertas. Selama iterasi berikutnya, sedikit demi sedikit dihasilkan versi sistem rekayasa yang lebih lengkap.
Model spiral dibagi menjadi sejumlah aktifitas kerangka kerja, disebut juga wilayah tugas, di antara tiga sampai enam wilayah tugas. Tahap-tahap model tersebut dapat dijelaskan secara ringkas sebagai berikut.
1.     Tahap Liason: pada tahap ini membangun komunikasi yang efektif di antara pengembangan dan pelanggan.
2.    Tahap Planning (perencanaan): pada tahap ini ditentukan sumber-sumber informasi, batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
3.    Tahap Analisis Resiko: mendefinisikan resiko, menentukan apa saja yang menjadi resiko baik teknis maupun manajemen.
4.    Tahap Rekayasa (engineering): pembuatan prototipe atau pembangunan satu atau lebih representasi dari aplikasi tersebut
5.    Tahap Konstruksi dan Pelepasan (release): pada tahap ini dilakukan pembangunan perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan tambahan untuk keberhasilan proyek.
6.    Tahap Evaluasi: Pelanggan/pemakai/pengguna biasanya memberikan masukan berdasarkan hasil yang didapat dari tahap engineering dan instalasi.
Dalam pengembangan sistem informasi berbasis web, model ini digunakan untuk menyelesaikan sistem secara global terlebih dahulu, kemudian untuk feature dari sistem akan dikembangkan kemudian. Dengan ini mempercepat dalam pengimplementasian project dan hal ini cocok digunakan dalam sistem informasi Web.


Kelebihan
1. Sangat mempertimbangkan resiko kemungkinan munculnya kesalahan sehingga sangat dapat diandalkan untuk pengembangan perangkat lunak skala besar.
2. Pendekatan model ini dilakukan melalui tahapan-tahapan yang sangat baik dengan menggabungkan model waterfall ditambah dengan pengulangan-pengulangan sehingga lebih realistis untuk mencerminkan keadaan sebenarnya.
3. Baik pengembang maupun pemakai dapat cepat mengetahui letak kekurangan dan kesalahan dari sistem karena proses-prosesnya dapat diamati dengan baik.
Kekurangan
1.Waktu yang dibutuhkan untuk mengembangkan perangkat lunak cukup panjang demikian juga biaya yang besar.
2.    Sangat tergantung kepada tenaga ahli yang dapat memperkirakan resiko.
3.    Terdapat pula kesulitan untuk mengontrol proses. Sampai saat ini, karena masih relatif baru, belum ada bukti apakah metode ini cukup handal untuk diterapkan.
4.    Meyakinkan konsumen (khusunya dalam situasi kontrak) bahwa pendekatan evolusioner bisa dikontrol.
Model Boehm sangat cocok diterapkan untuk pengembangan sistem dan perangkat lunak skala besar di mana pengembang dan pemakai dapat lebih mudah memahami kondisi pada setiap tahapan dan bereaksi terhadap kemungkinan terjadinya kesalahan. Selain itu, diharapkan juga waktu dan dana yang tersedia cukup memadai.

2.   Model Waterfall
Metode pengembangan sistem metode SDLC(Sistem Development Life Cycle) atau sering disebut sebagai pendekatan air terjun (waterfall).Metode waterfall pertama kali diperkenalkan oleh Windows W. Royce pada tahun 1970. Waterfall merupakan model klasik yang sederhana dengan aliran sistem yang linier Output dari setiap tahap merupakan input bagi tahap berikutnya (Kristanto, 2004).

3.   Iterative Model (Pengulangan)

       
Metode yang merupakan pengembangan dari prototyping model dan digunakan ketika requirement dari software akan terus berkembang dalam tahapan-tahapan pengembangan aplikasi tersebut. Sedikit pengertian tentang requirement software dari developer yang diterapkan pada tahap pertama iterasi, akan mendapatkan tanggapan dari user. Ketika requirement menjadi jelas, tahapan iterasi selanjutnya akan dilaksanakan.
4.   Metode Fountain (Air Mancur)
Model Fontain merupakan perbaikan logis dari model waterfall, langkah langkah dan urutan prosedurnya pun masih sama. Namun pada model Fountain ini kita dapat mendahulukan sebuah step ataupun melewati step tersebut, akan tetapi ada yang tidak bisa anda lewati stepnya seperti kita memerlukan design sebelum melakukan coding jika itu di lewati maka akan ada tumpang tindih dalam siklus SDLC.
5.   Rapid Application Development (RAD)
Rapid Application Development (RAD) adalah strategi siklus hidup yang ditujukan untuk menyediakan pengembangan yang jauh lebih cepat dan mendapatkan hasil dengan kualitas yang lebih baik dibandingkan dengan hasil yang dicapai melalui siklus tradisional (McLeod, 2002). RAD merupakan gabungan dari bermacam-macam teknik terstruktur dengan teknik prototyping dan teknik pengembangan joint application untuk mempercepat pengembangan sistem/aplikasi (Bentley, 2004). Dari definisi-definisi konsep RAD ini, dapat dilihat bahwa pengembangan aplikasi dengan menggunakan metode RAD ini dapat dilakukan dalam waktu yang relatif lebih cepat.
6.   METODE SYNCHRONIZE AND STABILIZE (SDLC)
Model ini adalah model yang digunakan oleh Microsoft.  Secara garis besar, Model Synchronize and Stabilize ini sama dengan model incremental, tetapi oleh CUsamano dan Selby tahun 1997 menyebutnya sebagai model Syncronize and Stabilized Model karena ada beberapa proses manajemen yang ditekannya oleh microsoft.

7.   METODE EXTREME PROGRAMMING (Agile)
Extreme Programming (XP) merupakan suatu pendekatan yang paling banyak digunakan untuk pengembangan perangkat lunak cepat. Alasan menggunakan metode  Extreme Programming (XP) karena sifat dari aplikasi yang di kembangkan dengan cepat melalui tahapan-tahapan yang ada meliputi : Planning/Perencanaan, Design/Perancangan, Coding/Pengkodean dan Testing/Pengujian. (Pressman, 2012:88).
Sumber :