SDLC (Systems Development Life Cycle, Siklus Hidup
Pengembangan Sistem) atau Systems Life Cycle (Siklus Hidup Sistem), dalam
rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan
pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan
sistem-sistem tersebut. 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: rencana(planning),analisis (analysis),
desain (design), implementasi (implementation), uji coba (testing) dan
pengelolaan (maintenance).
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 prototyping (life cycle using
prototyping), dan siklus hidup sistem orientasi objek (object-oriented system
life cycle).
kegunaan utama dari SDLC adalah mengakomodasi beberapa kebutuhan. Kebutuhan-kebutuhan itu biasanya berasal dari kebutuhan pengguna akhir dan juga pengadaan perbaikan sejumlah masalah yang terkait dengan pengembangan perangkat lunak. Kesemua itu dirangkum pada proses SDLC yang dapat berupa penambahan fitur baru baik itu secara modular maupun dengan proses instalasi baru.
kegunaan utama dari SDLC adalah mengakomodasi beberapa kebutuhan. Kebutuhan-kebutuhan itu biasanya berasal dari kebutuhan pengguna akhir dan juga pengadaan perbaikan sejumlah masalah yang terkait dengan pengembangan perangkat lunak. Kesemua itu dirangkum pada proses SDLC yang dapat berupa penambahan fitur baru baik itu secara modular maupun dengan proses instalasi baru.
Sejarah SDLC
dengan alternatif pendekatan dan kerangka kerja, yang
berusaha mengatasi beberapa kekurangan yang melekat pada SDLC tradisional”.
SDLC adalah proses yang digunakan oleh analis sistem untuk
mengembangkan sistem informasi , termasuk persyaratan, validasi kepemilikan
(stakeholder), pelatihan, dan pengguna. Setiap SDLC harus menghasilkan sistem
berkualitas tinggi yang memenuhi atau melebihi harapan pelanggan, mencapai
selesai dalam waktu dan perkiraan biaya, bekerja secara efektif dan efisien di
saat ini dan direncanakan Teknologi Informasi infrastruktur , dan murah untuk
mempertahankan dan biaya-efektif untuk meningkatkan. sistem komputer yang
kompleks dan sering (terutama dengan munculnya baru-baru arsitektur
berorientasi layanan ) link beberapa sistem tradisional berpotensi disediakan
oleh vendor perangkat lunak yang berbeda. Untuk mengelola tingkat kompleksitas,
sejumlah model SDLC atau metodologi telah diciptakan, seperti air terjun spiral
Agile pengembangan perangkat lunak prototipe cepat incrementaldan sinkronisasi
dan menstabilkan.
Model SDLC dapat dijelaskan sepanjang spektrum gesit untuk
iteratif untuk berurut. metodologi Agile,seperti XP dan scrum , fokus pada
proses ringan yang memungkinkan untuk perubahan yang cepat di sepanjang siklus
pengembangan. Iteratif metodologi, seperti kesatuan proses rasional dan dinamis
pengembangan sistem metode , fokus pada lingkup proyek terbatas dan memperluas
atau memperbaiki produk oleh beberapa iterasi. Sequential atau
besar-desain-up-depan (BDUF) model, seperti Air Terjun , fokus pada perencanaan
lengkap dan benar untuk membimbing proyek-proyek besar dan risiko untuk hasil
yang sukses dan dapat diprediks. Model-model lain, seperti Pembangunan
Anamorphic , cenderung fokus pada bentuk pembangunan yang dipandu oleh ruang
lingkup proyek dan iterasi pengembangan fitur adaptif.
Dalam manajemen proyek proyek dapat didefinisikan baik dengan
siklus hidup proyek (PLC) dan SDLC, selama kegiatan yang sedikit berbeda
terjadi. Menurut Taylor (2004) “siklus hidup proyek mencakup semua kegiatan
proyek , sedangkan siklus hidup pengembangan sistem berfokus pada produk
menyadari persyaratan.
Apa itu metodologi ?
Suatu cara untuk menggali suatu kebenaran
Saat ini ada beberapa model yang berkembang terkait dengan
System Development Life Cycle (SDLC). Namun terdapat beberapa model yang
populer dalam dunia pengembangan perangkat lunak.
1.
Waterfall
Model
ini menggunakan pendekatan secara sistematis dan sekuensial yang mulai pada
tingkat requirment sampai tingkat maintenance.
Kelebihan
1.
Proses menjadi teratur
2.
Jadwal menjadi lebih menentu
3.
Proses mudah dipahami dan jelas
4.
Mudah dalam pengelolaan proyek
5. Kondisi
requirment jelas.
Kelemahan
1.
Sifatnya kaku,
karena tidak mudah tanggap dalam menanggapi segala perubahan.
2.
Membutuhkan daftar kebutuhan yang lengkap diawal
3. Proses
pengembangan relative lama, dikarenakan tahap selanjutnya bisa dilakukan jika
tahap sebelumnya selesai dikerjakan.
2. Prototype
Model prototype merupakan model pengembangan software
yang mengijinkan pengguna/user memiliki gambaran awal tentang program yang akan
dikembangkan serta melakukan pengujian awal.
Model prototype juga memberi fasilitas bagi pengembangn
dan user untuk saling terkait dan berinteraksi.
Kelebihan
1.
Fleksibel
2.
Bersifat aktif, sehingga user dapat melihat, merasakan,
dan mengalami proses pengembangan.
3. Perbaikan
kesalahan relative cepat.
Kelemahan
1.
Mengurangi kreatifitas perancangan
2. Cakupan
pengembangannya sistem dapat lebih luas
3. Rapid Application Development (RAD)
Model pengembangan yang menggunakan pendekatan orientasi
komponen terhadap pengembangan perangkat lunak. Model ini bertujuan
mempersingkat waktu yang biasanya diperlukan dalam siklus hidup pengembangan
konvensional.
Kelebihan
1.
Pengembangan yang cepat
2.
Adanya prototype
3. Pengurangan
penulisan kode yang kompleks, dikarenakan reuse code yang sudah ada.
Kelemahan
1.
Tidak relevan untuk proyek skala besar
2.
memerlukan komitmen yang kuat antara pengembang dengan
konsumer
membutuhkan sumber daya
yang besar untuk proyek skala besar.
4.
Spirall
Model Spirall merupakan model pengembangan perangkat
lunak yang evolusioner yang memadukan sifat iteratif model protype dan aspek
sisematis dari mode sekuensial. Version Release meningkat
setiap iterasi terjadi.
Kelebihan
1.
Cocok untuk proyek skala besar
2.
Manajemen kesalahan baik
3. Menggunakan
prototype sebagai mekanisme pengurangan resiko dan pada setiap keadaan didalam
evolusi produk.
Kelemahan
1.
Waktu pengembangan cukup lama
2.
Dibutuhkan ahli dalam penanganan resiko
Kesulitan dalam
meyakinkan konsumen.
5. Spirall
Model
Agile merupakan model pengembangan jangka pendek yang memerlukan adaptasi cepat
dan pengembangan terhadap perubahan dalam bentuk apapun. Dalam agile terdapat
beberapa poin penting diantaranya sebagai berikut:
1.
Interaksi antar
personal lebih penting daripada proses dan alat.
2.
Software yang
berfungsi lebih penting daripada dokumentasi yang
lengkap
3.
Kolaborasi dengan
klien lebih penting daripada negoisasi
kontrak.
4. Sikap
tanggap lebih penting daripada mengikuti rencana/plan.
Kelebihan
1.
Functional dapat dibuat dengan cepat dan dilakukan
testing
2. Perubahan
dengan cepat ditangani
Kelemahan
1.
Analisis, desain, dan pengembangan sulit diprediksi
2. Dapat
memunculkan permasalahan dari arsitektur maupun desain.
TAHAPAN-TAHAPAN
DALAM SDLC(SISTEM DEVELOPMENT LIFE CYCLE)
Berikut
ini adalah Fase-fase Sistem Development Life Cycle (SDLC) meliputi :
A.
Perencanaan
Sistem (Systems Planning)
Lebih menekankan pada aspek studi kelayakan pengembangan sistem (feasibility study). Aktivitas-aktivitas yang ada meliputi :
• Pembentukan dan konsolidasi tim pengembang.
• Mendefinisikan tujuan dan ruang lingkup pengembangan.
• Mengidentifikasi apakah masalah-masalah yang ada bisa diselesaikan melalui pengembangan sistem.
• Menentukan dan evaluasi strategi yang akan digunakan dalam pengembangan sistem.
• Penentuan prioritas teknologi dan pemilihan aplikasi.
Lebih menekankan pada aspek studi kelayakan pengembangan sistem (feasibility study). Aktivitas-aktivitas yang ada meliputi :
• Pembentukan dan konsolidasi tim pengembang.
• Mendefinisikan tujuan dan ruang lingkup pengembangan.
• Mengidentifikasi apakah masalah-masalah yang ada bisa diselesaikan melalui pengembangan sistem.
• Menentukan dan evaluasi strategi yang akan digunakan dalam pengembangan sistem.
• Penentuan prioritas teknologi dan pemilihan aplikasi.
B.
Analisis
Sistem (Systems Analysis)
Analisa sistem adalah tahap di mana dilakukan beberapa aktivitas berikut:
• Melakukan studi literatur untuk menemukan suatu kasus yang bisa ditangani oleh sistem.
• Brainstorming dalam tim pengembang mengenai kasus mana yang paling tepat dimodelkan dengan sistem.
• Mengklasifikasikan masalah, peluang, dan solusi yang mungkin diterapkan untuk kasus tersebut.
• Analisa kebutuhan pada sistem dan membuat batasan sistem.
• Mendefinisikan kebutuhan sistem.
Analisa sistem adalah tahap di mana dilakukan beberapa aktivitas berikut:
• Melakukan studi literatur untuk menemukan suatu kasus yang bisa ditangani oleh sistem.
• Brainstorming dalam tim pengembang mengenai kasus mana yang paling tepat dimodelkan dengan sistem.
• Mengklasifikasikan masalah, peluang, dan solusi yang mungkin diterapkan untuk kasus tersebut.
• Analisa kebutuhan pada sistem dan membuat batasan sistem.
• Mendefinisikan kebutuhan sistem.
C.
Perancangan
Sistem (Systems Design)
Pada tahap ini, features dan operasi-operasi pada sistem dideskripsikan secara detail. Aktivitas-aktivitas yang dilakukan adalah:
• Menganalisa interaksi obyek dan fungsi pada sistem.
• Menganalisa data dan membuat skema database.
• Merancang user interface.
Pada tahap ini, features dan operasi-operasi pada sistem dideskripsikan secara detail. Aktivitas-aktivitas yang dilakukan adalah:
• Menganalisa interaksi obyek dan fungsi pada sistem.
• Menganalisa data dan membuat skema database.
• Merancang user interface.
D.
Implementasi
Sistem (Systems Implementation)
Tahap berikutnya adalah implementasi yaitu mengimplementasikan rancangan dari tahap-tahap sebelumnya dan melakukan uji coba.
Dalam implementasi, dilakukan aktivitas-aktivitas sebagai berikut:
• Pembuatan database sesuai skema rancangan.
• Pembuatan aplikasi berdasarkan desain sistem.
• Pengujian dan perbaikan aplikasi (debugging).
Tahap berikutnya adalah implementasi yaitu mengimplementasikan rancangan dari tahap-tahap sebelumnya dan melakukan uji coba.
Dalam implementasi, dilakukan aktivitas-aktivitas sebagai berikut:
• Pembuatan database sesuai skema rancangan.
• Pembuatan aplikasi berdasarkan desain sistem.
• Pengujian dan perbaikan aplikasi (debugging).
E.
Pemeliharaan
Sistem (Systems Maintenance)
Dilakukan oleh admin yang ditunjuk untuk menjaga sistem tetap mampu beroperasi secara benar melalui kemampuan sistem dalam mengadaptasikan diri sesuai dengan kebutuhan. ( http://scdc.binus.ac.id/himsisfo/2016/07/tahapan-tahapan-dalam-sdlcsistem-development-life-cycle/ )
Dilakukan oleh admin yang ditunjuk untuk menjaga sistem tetap mampu beroperasi secara benar melalui kemampuan sistem dalam mengadaptasikan diri sesuai dengan kebutuhan. ( http://scdc.binus.ac.id/himsisfo/2016/07/tahapan-tahapan-dalam-sdlcsistem-development-life-cycle/ )
0 komentar:
Posting Komentar