Anda di halaman 1dari 28

SYSTEM

DEVELOPMENT
LIFE CYCLE
Maria Marcelina​
SDLC 2

 SDLC adalah kependekan dari Systems development life cycle atau


dalam bahasa Indonesia disebut siklus hidup pengembangan
system.
 SDLC adalah siklus yang digunakan dalam pembuatan atau
pengembangan sistem informasi yang bertujuan untuk
menyelesaikan masalah secara efektif.
 Dalam pengertian lain, SDLC adalah tahapan kerja yang bertujuan
untuk menghasilkan sistem berkualitas tinggi yang sesuai dengan
keinginan pelanggan atau tujuan dibuatnya sistem tersebut.
 SDLC menjadi kerangka yang berisi langkah-langkah yang harus
dilakukan untuk memproses pengembangan suatu perangkat
lunak.
 Sistem ini berisi rencana lengkap untuk mengembangkan,
memelihara, dan menggantikan perangkat lunak tertentu.
FUNGSI SDLC 3

 Sangat sulit untuk membuat sebuah perangkat lunak tanpa


perancangan yang maksimal. Meski demikian, ada perencanaan
lebih baik daripada tidak ada perencanaan sama sekali.
 Dilihat dari berbagai sisi, SDLC memiliki banyak fungsi, antara lain
sebagai sarana komunikasi antara tim pengembang dengan
pemegang kepentingan.
 SDLC juga berfungsi membagi peranan dan tanggung jawab yang
jelas antara pengembang, desainer, analis bisnis, dan manajer
proyek.
 Fungsi lain dari SDLC ialah dapat memberikan gambaran input dan
output yang jelas dari satu tahap menuju tahap selanjutnya.
1.PERENCANAAN SISTEM (SYSTEMS PLANNING) 4
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.
2. ANALISIS SISTEM (SYSTEMS ANALYSIS) 5

Pada tahap ini, sistem akan dianalisis bagaimana akan dijalankan


nantinya.
Hasil analisis berupa kelebihan dan kekurangan sistem, fungsi sistem,
hingga pembaharuan yang dapat diterapkan.
Bagian ini termasuk dalam bagian perencanaan.
Bagian lain yang termasuk dalam perencanaan ialah alokasi sumber
daya, perencanaan kapasitas, penjadwalan proyek, estimasi biaya,
dan penetapan.
Dengan demikian, hasil dari tahap perencanaan ialah rencana proyek,
jadwal, estimasi biaya, dan ketentuan.

Idealnya manajer proyek dan pengembang dapat bekerja maksimal


pada tahap ini.
2. ANALISIS SISTEM (SYSTEMS ANALYSIS) 6

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-batasan
sistem.
•Mendefinisikan kebutuhan sistem.
3. PERANCANGAN SISTEM (SYSTEMS DESIGN) 7

Tahapan ini akan menghasilkan prototype dan beberapa output lain


meliputi dokumen berisi desain, pola, dan komponen yang diperlukan
untuk mewujudkan proyek tersebut.

Setelah spesifikasi, kemudian dilakukan perancangan sistem sebagai


tahapan kelanjutannya.

Tahap ini ialah tahap di mana seluruh hasil analisis dan pembahasan
tentang spesifikasi sistem diterapkan menjadi rancangan atau cetak
biru sebuah sistem.

Tahap ini disebut sebagai cetak biru, di mana sistem sudah siap untuk
dikembangkan mulai dari implementasi, analisis sistem, hingga
tenaga pendukung sistem yang akan dikembangkan.
3. PERANCANGAN SISTEM (SYSTEMS DESIGN) 8

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.
4. IMPLEMENTASI SISTEM (SYSTEMS 9

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).
5. PEMELIHARAAN SISTEM (SYSTEMS 10

MAINTENANCE)

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.
MODEL PENGEMBANGAN SDLC 11

Model pengembangan ini sangat penting untuk membantu proses


pengembangan perangkat lunak. Terdapat beberapa model
pengembangan SDLC yang diikuti oleh berbagai organisasi,
diantaranya:

• Model Waterfall
• Model Agile
WATERFALL APPROACH
MODEL WATERFALL 13

Waterfall merupakan suatu metode manajemen proyek


yang sudah relatif lama.

Waterfall menekankan pada sebuah desain proses yang


berurutan yang dalam prosesnya terlihat seperti aliran air
terjun dari proses perancangan konsep, analisis proyek,
inisialisasi proyek, desain, pembuatan sistem, testing,
implementasi dan perawatan.
MODEL WATERFALL 14

Beberapa ciri dari metode ini:

•Proyek dibagi-bagi dalam beberapa fase yang


saling berurutan.
•Penekanan pada perencanaan, jadwal, deadline
dan implementasi keseluruhan sistem.
•Kontrol yang ketat dalam siklus hidup proyek
dengan menggunakan bantuan dokumentasi
tertulis.
MODEL WATERFALL 15

Kelebihan metode ini:

•Relatif mudah dimengerti dan mudah digunakan.


•Requirement dari sistem bersifat stabil.
•Baik dalam manajemen kontrol.
•Bekerja dengan baik ketika kualitas lebih
diutamakan dibandingkan dengan biaya dan
jadwal/deadline.
MODEL WATERFALL 16

Kekurangan dari metode ini:

•Semua kebutuhan sistem harus diketahui di awal


•Integrasi sekaligus di akhir sistem.
•Testing hanya dilakukan pada setiap akhir fase, bahkan
tidak jarang testing hanya dilakukan di akhir-akhir proyek.
•Membutuhkan waktu yang cukup lama meski kadang
proyeknya tidak terlalu besar.
•Perubahan requirement dapat merubah keseluruhan
proses yang telah dilaksanakan.
AGILE/ITERATIVE
APPROACH
MODEL AGILE 18

Agile software development atau sering hanya disebut “agile”


adalah kumpulan dari metode-metode pengembangan perangkat
lunak yang berbasis pada Iterative dan Incremental Model.
Metode iterasi menerapkan perulangan (iterasi) dalam proses
pembuatannya. Ide-nya adalah merubah sesuatu ketika masih
sederhana lebih mudah dibanding jika sudah kompleks. Intinya,
model iteratif memecah proses pengembangan perangkat lunak dari
aplikasi yang sangat besar menjadi bagian-bagian yang lebih kecil.
Ini memungkinkan pengembang dan penguji proyek untuk
menemukan kelemahan praktis atau terkait desain program sedini
mungkin

Agile memungkinkan mengembangkan perangkat lunak yang


memiliki requirement yang mudah berubah dengan cepat.
MODEL AGILE 19

Beberapa ciri dari metode ini:

•Suatu proyek lebih cepat rilis.


•Perubahan requirement dapat sering dilakukan.
•Interaksi antara client dengan developer dalam menentukan langkah
proyek berikutnya
•Proyek dibangun antar tim.
•Tim mengorganisasikan dirinya sendiri.
•Tim bekerja dalam kecepatan yang bisa dipertahankan.
•Tim dapat mereview tingkat keberhasilan dan kegagalan mereka.
•Desain dan implementasi disusun sesederhana mungkin.
MODEL AGILE 20

Kelebihan metode ini:

•Proses Iterative dan Incremental.


•Requirement dapat berubah sewaktu-waktu.
•Pelacakan requirement dengan melihat Backlog / To do List
produk.
•Keterlibatan user secara aktif.
•Rilis yang lebih cepat dan berkala, fungsi dirilis setiap akhir
iterasi.
•Testing dilakukan setiap saat.
MODEL AGILE 21

Kekurangan dari metode ini:

•Interaksi dengan client yang kadang terlalu berlebihan.


•Agile sulit diimplementasikan dalam proyek yang berskala
besar.
•Waktu perencanaan proyek yang singkat.
•Membutuhkan manajemen tim yang terlatih.
MODEL WATERFALL VS AGILE 22

Persamaan dari metode baik waterfall dan agile


bertujuan untuk memfasilitasi dan mengelola
proses kerja tim untuk menyelesaikan suatu proyek.
MODEL WATERFALL VS AGILE 23

Perbedaan 10 antara metodologi Waterfall dan metodologi Agile.

1.Air terjun adalah yang terstruktur dan seringkali itu bisa sangat
kaku, sementara metodologi Agile dikenal karena fleksibilitasnya.

2.Proses pengembangan perangkat lunak dibagi menjadi beberapa


fase berbeda dalam model Waterfall, sementara metodologi Agile
memisahkan siklus hidup pengembangan proyek menjadi sprint.
MODEL WATERFALL VS AGILE 24

3. Menurut model Waterfall, pengembangan perangkat lunak harus


diselesaikan sebagai satu proyek. Ini kemudian dibagi menjadi
beberapa fase yang berbeda, dengan setiap fase hanya terjadi satu
kali selama proyek. Metodologi Agile, di sisi lain, dapat dilihat sebagai
kumpulan dari banyak proyek kecil yang berbeda. Proyek yang tidak
lain adalah iterasi fase yang berbeda yang bertujuan untuk
meningkatkan kualitas perangkat lunak secara keseluruhan dengan
umpan balik dari pengguna atau tim QA.
4. Semua fase pengembangan proyek seperti desain, pengembangan,
pengujian, dan lain-lain selesai satu kali dalam model Waterfall,
sambil menerapkan pendekatan pengembangan berulang sebagai
bagian dari metodologi Agile. Perencanaan, pengembangan,
pembuatan prototipe, dan fase pengembangan perangkat lunak
lainnya dapat terjadi lebih dari satu kali selama proyek Agile.
MODEL WATERFALL VS AGILE 25

5. Jika Anda ingin menggunakan model Waterfall untuk


pengembangan perangkat lunak, Anda harus mengetahui dengan
jelas semua persyaratan sebelumnya. Tidak ada ruang untuk
mengubah persyaratan begitu pengembangan proyek dimulai.
Metodologi Agile cukup fleksibel dan memungkinkan untuk membuat
perubahan pada persyaratan, bahkan setelah perencanaan awal
selesai.
6. Sementara metodologi Waterfall adalah proses internal dan tidak
memerlukan partisipasi pengguna, pendekatan pengembangan
perangkat lunak Agile berfokus pada kepuasan pengguna dan dengan
demikian pada partisipasi pengguna selama fase pengembangan.
MODEL WATERFALL VS AGILE 26

7. Salah satu perbedaan paling penting antara metodologi


pengembangan Agile dan Waterfall adalah pendekatan mereka
sendiri terhadap kualitas dan pengujian. Dalam model Waterfall, fase
“Pengujian” muncul setelah fase “Build”, tetapi dalam metode Agile,
pengujian biasanya dilakukan bersamaan dengan pemrograman atau
setidaknya selama iterasi yang sama dengan pemrograman.

8. Model Waterfall dapat dianggap sebagai proses sekuensial yang


ketat, tetapi metodologi Agile adalah proses pengembangan
perangkat lunak yang sangat kolaboratif, yang mengarah pada input
tim yang lebih baik dan penyelesaian masalah yang lebih cepat.
MODEL WATERFALL VS AGILE 27

9. Model Waterfall memerlukan pola pikir proyek dan berfokus


secara eksklusif pada penyelesaian pengembangan proyek. Agile
telah memperkenalkan pola pikir produk yang bertujuan untuk
memastikan bahwa produk yang dikembangkan memenuhi
kebutuhan pengguna dan dapat disesuaikan jika kebutuhan
pengguna berubah.

10. Model Waterfall paling cocok untuk proyek dengan persyaratan


yang jelas dan di mana tidak ada perubahan yang diharapkan sama
sekali. Pengembangan lincah mendukung proses di mana persyaratan
diharapkan untuk berubah dan berkembang. Jadi, jika Anda
berencana untuk mengembangkan perangkat lunak yang perlu
ditinjau secara teratur dan yang harus mengikuti perkembangan
teknologi dan persyaratan pengguna, Agile adalah pendekatan
terbaik untuk diikuti.
THANK YOU
Maria Marcelina

Anda mungkin juga menyukai