Model System Development Life Cycle (SDLC) terdiri
dari :
Pendekatan sistem adalah sebuah
metodologi. Metodologi adalah suatu cara yang direkomendasikan dalam melakukan
sesuatu. Pendekatan sistem adalah metodologi dasar dalam memecahkan segala
jenis masalah. Siklus hidup pengembangan sistem (System Development Life
Cycle-SDLC) adalah aplikasi dari pendekatan sistem bagi pengembangan suatu
sistem informasi.
Beberapa pendekatan pengembangan sistem adalah :
1.
SDLC tradisional
2.
Prototyping
3.
Rapid Application Development
4.
Business Process Redesign
2. Agile DevelopmentModel SDLC
Agile
development adalah sebuah filosofi dan serangkaian panduan untuk mengembangkan
sistem informasi di dalam lingkungan yang sering berubah dan dapat digunakan dengan
metodologi pengembangan sistem apapun. Metodologi agile adalah sebua filosofi
tentang bagaimana membangun model, beberapa diantaranya formal dan detil, namun
yang lainnya hanya berupa sketsa dan sangat ringkas.
Nilai-nilai dari Agile Development
:
Filosofi agile menggunakan
pendekatan yang fleksibel terhadap jadwal proyek dan memberikan kesempatan bagi
tim proyek untuk merencanakan dan menjalankan pekerjaan mereka sesuai dengan
perkembangan proyek. Filosofi utama dalam pengembangan agile adalah
1. Value responding to change
over following a plan
2. Value individuals and
interactions over processes and tools
3. Value working software over
comprehensive documentation
4. Value customer collaboration
over contract negotiation
Di dalam proyek yang
menggunakan filosofi agile dikenal istilah “chaordic” atau “chaos” dan “order”.
Filosofi agile menyadari ketidakpastian ini, penanganan dengan meningkatkan
flesibilitas dan mempercayakan tim proyek untuk mengembangkan solusi terhadap masalah
yang ada. Aspek penting lainnya dalam pengembangan Agile adalah pelanggan harus
secara terus terlibat di dalam tim proyek. Mereka tidak bisa hanya duduk dengan
tim proyek dalam beberapa sesi untuk mengembangkan spesifikasi. Mereka menjadi
bagian dari tim teknis.
3. Waterfall Model SDLC
Waterfall
adalah pendekatan SDLC paling awal yang digunakan untuk pengembangan perangkat
lunak. Hal ini juga disebut sebagai model SDLC linear-sekuensial. Hal ini
sangat sederhana untuk memahami dan menggunakanya dalam mengimplementasikan
sebuah sistem.
Dalam Model Waterfall, setiap tahap harus berurutan, dan tidak dapat meloncat ketahap berikutnya, harus menyelesaikan tahap pertama baru lanjut ke tahap ke dua dst.
Dalam Model Waterfall, setiap tahap harus berurutan, dan tidak dapat meloncat ketahap berikutnya, harus menyelesaikan tahap pertama baru lanjut ke tahap ke dua dst.
Langkah-langkah Waterfall SDLC
Pendekatan Waterfall digunakan
secara luas dalam Pengembangan sistem, step-step nya terdiri dari :
1.
Requirement
Gathering and analysis -
Mengumpulkan kebutuhan secara lengkap kemudian 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
Design - Desain dikerjakan
setelah kebutuhan selesai dikumpulkan secara lengkap
3.
Implementation - Desain program diterjemahkan ke dalam kode-kode dengan menggunakan
bahasa pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji
baik secara unit.
4.
Integration
and Testing - Penyatuan unit-unit
program kemudian diuji secara keseluruhan (system testing)
5.
Deployment
of system - Mengoperasikan
program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau
perubahan karena adaptasi dengan situasi sebenarnya.
6.
Maintenance - Proses pemeliharaan sistem yang sudah dibangun
Kelebihan Waterfall Model
Keuntungan dari Waterfall model
adalah Jadwal dapat diatur dengan tenggat waktu untuk setiap tahap pengembangan
dan produk dapat dilanjutkan melalui proses pengembangan model fase satu per
satu. Pembangunan bergerak dari konsep, melalui desain, implementasi,
pengujian, instalasi, pemecahan masalah, dan berakhir di operasi dan
pemeliharaan
Berikut Keuntungan lainya dari
Waterfall Model
·
Simple, mudah dimengerti dan di
implemetasikan
·
Mudah untuk mengelola karena
model yang sederhana. Setiap fase memiliki spesifik requirement dan proses
review
·
Fase diproses dan diselesaikan
satu per satu
·
Cocok untuk project skala kecil
dimana kebutuhan project dapat mudah dimengerti
·
Jelas dalam mendefinisikan
setiap tahap
·
Mudah menentukan pencapaian
suatu sistem
·
Mudah dalam menentukan tugas
setiap individu
·
Proses pendokumentasian lebih
mudah.
Kekurangan Waterfall Model
Kerugian dari Waterfall model
adalah tidak memungkinkan banyak refleksi atau revisi. Setelah aplikasi dalam
tahap pengujian, sangat sulit untuk kembali dan mengubah sesuatu yang tidak
terdokumentasi dengan baik atau pikiran pada dalam tahap konsep.
Berikut Kerugian lainya dari Waterfall Model:
·
Aplikasi yang dihasilkan
cenderung lama karena step-step tidak dapat dilongkap
·
Resiko yang tinggi karena
proses nya terlalu lama
·
Tidak cocok untuk project yang
terlalu complex dan Object Oriented Projects
·
Tidak cocok untuk project
jangka lama dan untuk project yang sedang berjalan
·
Tidak cocok untuk project yang
mudah berganti-ganti model proses
·
Sulit untuk mengukur kemajuan
dalam tahap
·
Integrasi dilakukan sebagai "big-bang.
Di akhir, yang tidak memungkinkan mengidentifikasi setiap teknologi atau bisnis
hambatan atau tantangan awal.
4. Scrum Model SDLC
Scrum Pada dasarnya merupakan
salah satu komponen dari metodologi pengembangan
sistem Agile . Akhir-akhir ini scrum
mulai marak di implemntasikan di perusahaan IT di Indonesia, dikarenakan
maraknya perusahaan IT mengimplementasikan agile development. Scrum
menguraikan proses untuk mengidentifikasi dan katalogisasi pekerjaan yang
perlu dilakukan, memprioritaskan yang bekerja dengan berkomunikasi dengan
pelanggan atau wakil pelanggan, dan pelaksanaan yang bekerja menggunakan
rilis iterative dan memiliki tujuan utama untuk mendapatkan perkiraan berapa
lama development akan dilakukan.
|
|
Scrum merupakan suatu kerangka
kerja. Jadi, bukannya menyediakan deskripsi rinci tentang bagaimana segala
sesuatu yang harus dilakukan pada proyek seperti diserahkan kepada tim
pengembangan perangkat lunak pada umumnya. Hal ini dilakukan supaya tim akan
tahu bagaimana cara terbaik untuk memecahkan masalah
Ada 3 elemen organisasi utama pada
scrum yaitu
· Product Owner mewakili
bisnis, pelanggan atau pengguna dan memandu tim ke arah pegembangan produk yang
tepat.
·
Scrum
Master dapat dianggap sebagai
pemersatu bagi product owner dan scrum team (developer, QA, technical wirter
dll), membantu anggota tim menggunakan kerangka Scrum untuk menyelesaikan suatu
project berdasarkan timeline yang ditentukan di awal.
·
Scrum
Team merupakan grup pengembang
kecil biasanya terdiri dari 5-9 orang. Untuk projek yang sangat besar,
pekerjaan biasanya dibagi dan didelegasikan ke grup-grup kecil
5. Iterative Model SDLC
Dalam
Iterative model SDLC, proses iterative dimulai dengan implementasi sederhana
dari komponen kecil dari software sampai dengan meningkatkan versi dari sebuah
software dengan update-updateanya sehingga software siap digunakan ke user.di
setiap Iterative nya, perubahan baik design maupun fungsi ditambahkan. Ide
dasar di balik metode ini adalah untuk mengembangkan sistem melalui siklus
berulang (iterative) dan dalam porsi kecil di setiap updatetanya.
Spesifikasi Iterative Model
Seperti model SDLC lainya, Iterative
model memiliki spesifikasi khusus di dalan industri software. Model ini paling
sering digunakan dalam kondisi seperti:
·
Requirement sistem dan design harus
jelas dan mudah di pahami.
·
Persyaratan Utama harus
didefinisikan, namun nantinya akan ada request baru untuk penambahan fungsi
pada saat sistem sedang berjalan.
·
Teknologi yang sedang digunakan
dalam pengembangan software bisa diganti apabila ada teknologi baru yang lebih
bagus.
·
Ada beberapa fitur berisiko tinggi
dan tujuan yang mungkin berubah di masa depan.
Kelebihan dari Iterative Model SDLC
:
·
Beberapa fungsi dapat di kembangkan
dengan cepat di awal pembuatan versi baru.
·
hasil yang di peroleh secara berkala
·
Kemajuan sebuah sistem dapat di ukur
·
Development software mudah di
rencanakan
·
Biaya yang dikeluarkan kecil apabila
ingin merubah requirement
·
Testing dan debugging selama proses
iterasi lebih mudah.
·
Analisis resiko yang lebih baik
·
Mendukung perubahan requirement
·
Waktu operasional yang lebih singkat
·
Cocok untuk project besar
Kekurangan dari Iterative Model SDLC
·
Membutuhkan resource yang cukup
banyak
·
Meski biaya perubahan rendah, tetapi
sangat tidak cocok untuk mengubah persayaratan
·
Memerlukan Perhatian manajemen
·
Permasalahan sistem arsitektur dan
desain mungkin akan timbul, karena tidak semua persyaratan di tentukan di awal
pengambangan sistem.
·
tidak cocok untuk project kecil
·
Kompleksitas manajemen
·
Membutuhkan tenaga ahli untuk
analisis resiko yang timbul
6. Spiral Model SDLC
Model
Spiral SDLC adalah sebuat metode pengabungan antara Iterative Model dengan Waterfall Model. dengan penekanan yang tinggi pada analisis resiko yang
akan di hadapi. Spiral model bertujuan untuk meningkatkan tingkat keberhasilan
pada saat pengembangan suatu sistem.
Spiral model memiliki 4 fase utama
yaitu :
Identification
Pada fase ini bertujuan untuk mengumpulkan kebutuhan bisnis di dasar spiral, Dalam spiral berikutnya disebut sebagai produk deawsa. Identifikasi persyaratan sistem, persyaratan subsistem, persyaratan unit dilakukan pada fase ini. Fase ini juga mencakup komunikasi antar sistem analis dengan klien.
Design
Pada fase ini dimulai dengan desain konseptual di dasar spiral dan melibatkan
desain arsitektur, desain logis dari modul, desain produk fisik dan desain akhir
dalam spiral berikutnya.
Construct or Build
Pada fase ini mengacu produksi produk perangkat lunak yang sebenarnya di setiap spiral.
Evaluation and Risk Analysis
Pada fase ini mengidentifikasi, memperkirakan dan memantau kelayakan teknis dan risiko manajemen, seperti jadwal selip dan biaya lebih. Setelah pengujian sistem, akhir dari iterasi klien akan mengevaluasi produk yang sudah dibangun dan akan memberikan feedback.
Berdasarkan evaluasi pelanggan, proses pengembangan perangkat lunak memasuki tahap iterative kemudian mengikuti pendekatan linier untuk menyelesaikan hasil feedback klien Proses iterasi sepanjang spiral berlanjut sepanjang development life cycle.
Pada fase ini bertujuan untuk mengumpulkan kebutuhan bisnis di dasar spiral, Dalam spiral berikutnya disebut sebagai produk deawsa. Identifikasi persyaratan sistem, persyaratan subsistem, persyaratan unit dilakukan pada fase ini. Fase ini juga mencakup komunikasi antar sistem analis dengan klien.
Design
Pada fase ini dimulai dengan desain konseptual di dasar spiral dan melibatkan
desain arsitektur, desain logis dari modul, desain produk fisik dan desain akhir
dalam spiral berikutnya.
Construct or Build
Pada fase ini mengacu produksi produk perangkat lunak yang sebenarnya di setiap spiral.
Evaluation and Risk Analysis
Pada fase ini mengidentifikasi, memperkirakan dan memantau kelayakan teknis dan risiko manajemen, seperti jadwal selip dan biaya lebih. Setelah pengujian sistem, akhir dari iterasi klien akan mengevaluasi produk yang sudah dibangun dan akan memberikan feedback.
Berdasarkan evaluasi pelanggan, proses pengembangan perangkat lunak memasuki tahap iterative kemudian mengikuti pendekatan linier untuk menyelesaikan hasil feedback klien Proses iterasi sepanjang spiral berlanjut sepanjang development life cycle.
Berikut adalah spesifikasi dari
Spiral Model:
·
Penting saat ada kendala anggaran
dan evaluasi resiko
·
Untuk project beresiko menengah -
tinggi
·
Pelanggan tidak yakin kebutuhan
mereka yang biasanya terjadi.
·
Perubahan signifikan diharapkan
dalam produk selama siklus pengembangan sistem
·
Persyaratan yang kompleks dan perlu
evaluasi untuk mendapatkan kejelasan
Kelebihan
dari Spiral Model
·
Perubahan kebutuhan dapat
diakomodir.
·
Persyaratan dapat diketahui lebih
akurat.
·
Pengguna dapat melihat sistem awal.
·
Pembangunan dapat dibagi menjadi
bagian-bagian yang lebih kecil dan bagian-bagian yang berisiko dapat
dikembangkan sebelumnya yang membantu dalam manajemen risiko yang lebih baik
Kekurangan
dari Spiral Model
·
Manajemen lebih kompleks.
·
Akhir proyek mungkin tidak diketahui
di awal.
·
Tidak cocok untuk proyek-proyek
berisiko kecil atau rendah dan bisa menjadi mahal untuk proyek-proyek kecil.
·
Proses yang kompleks
·
Spiral mungkin berlangsung tanpa
batas.
7. V Model SDLC
the
V-Model merupakan perluasan dari waterfall model dan didasarkan pada asosiasi dari fase pengujian untuk setiap tahap pengembangan yang sesuai. Ini
berarti bahwa untuk setiap fase tunggal dalam siklus pengembangan, ada tahap pengujian
terkait langsung. Ini adalah model yang sangat disiplin dan tahap berikutnya
dimulai setelah selesainya tahap sebelumnya.
Ilustrasi berikut menggambarkan
berbagai tahap dalam V-Model SDLC.
Kelebihan dari V-Model SDLC
·
Ini adalah model yang sangat-disiplin
dan Tahapan selesai satu per satu.
·
Bekerja dengan baik untuk
proyek-proyek yang lebih kecil dimana persyaratan dipahami dengan baik.
·
Sederhana dan mudah dimengerti dan
digunakan.
·
Mudah dikelola karena setiap fase
memiliki spesifik kiriman dan proses review.
Kekurangan dari V-Model SDLC
·
Berisiko tinggi dan
ketidakpastian.
·
Tidak cocok untuk proyek-proyek yang
kompleks dan berorientasi objek.
·
Tidak cocok untuk proyek-proyek
dimana persyaratan beresiko tinggi
·
Tidak cocok untuk proyek-proyek yang
lama dan berkelanjutan.
·
Setelah aplikasi dalam tahap
pengujian, sulit untuk kembali dan mengubah fungsionalitas.
8. SDLC Big Bang Model
Pengertian
dari SDLC Big Bang Model adalah Dimana kita tidak mengikuti proses tertentu.
Perkembangan hanya dimulai dengan uang dan usaha yang dibutuhkan sebagai
masukan, dan hasilnya adalah perangkat lunak yang dikembangkan yang mungkin
atau mungkin tidak sesuai dengan kebutuhan pelanggan. Model Big Bang ini tidak
mengikuti dan hanya ada sedikit perencanaan yang diperlukan. Bahkan pelanggan
pun tidak yakin dengan apa yang sebenarnya dia inginkan dan persyaratannya
diimplementasikan dengan cepat tanpa banyak analisis.biasanya model ini di
implementasi untuk proyek kecil dimana tim developernya sangat sedikit.
Spesifikasi Big Bang Model SDLC
Model Big Bang terdiri dari
memfokuskan semua sumber daya yang mungkin dalam pengembangan perangkat lunak
dan pembuatan code / coding, dengan perencanaan yang sangat sedikit atau tidak
sama sekali. Requirement yang dibutuhkan terkadang datang pada saat pembuatan
code. Setiap perubahan yang diperlukan mungkin atau mungkin tidak perlu mengubah
perangkat lunak yang lengkap. Big Bang Model ini sangat ideal untuk proyek
kecil dengan satu atau dua pengembang yang bekerja sama dan juga berguna untuk
pembelajaran atau project-project yang sangat kecil
Keuntungan Big Bang Model antara lain:
·
Model yang sangat sederhana
·
Sedikit atau tidak ada perencanaan
yang dibutuhkan
·
Mudah dikelola
·
Sangat sedikit sumber daya yang
dibutuhkan
·
Memberikan fleksibilitas kepada
pengembang
·
Bagus untuk developer yang ingin
belajar atau developer pendatang baru.
Kekurangan Big Bang Model antara lain:
·
Beresiko tinggi dan kepastian dari
requirement yang tidak jelas
·
Tidak cocok untuk project skala
besar dan berorientasi objek
·
Model yang buruk untuk proyek yang
panjang dan sedang berlangsung.
·
Bisa berubah menjadi sangat mahal
jika persyaratan disalahpahami
9. Rational Unified Process (RUP Model) SDLC
Rational
Unified Process (RUP) Menurut IBM adalah kerangka proses yang menyediakan
simulasi sistem pada industri untuk sistem, software, implementasi, dan
manajemen proyek yang efektif. RUP adalah salah satu dari sekian banyak proses
yang terdapat di dalam Rational Process Library, yang memberikan simulasi
terbaik untuk pengembangan atau kebutuhan proyek. RUP mempunyai beberapa
tahapan, yaitu :
1.
Inception
2.
Elaboration
3.
Construction
4.
Transition
10. Prototype Model SDLC
Prototyping
menjadi sangat populer sebagai model pengembangan software, karena Memungkinkan
untuk memahami kebutuhan pelanggan pada tahap awal pengembangan. Ini membantu
mendapatkan feedback yang berharga dari pelanggan dan membantu developer
memahami apa sebenarnya yang diharapkan dari produk yang sedang dikembangkan.Prototyping
digunakan untuk memungkinkan client/user mengevaluasi sistem yang di rancang di
awal oleh developer dan mencobanya sebelum di implementasikan. Hal ini dapat
membantu memahami persyaratan pembangunan sistem yang spesifik oleh user dan
mungkin belum implementasikan oleh developer selama perancangan produk.
Kelebihan Prototype
·
Meningkatnya keterlibatan pengguna
dalam produk bahkan sebelum diimplementasi
·
Karena model sistem yang di bangun
di share ke user, maka user mendapatkan pemahaman yang lebih baik tentang
sistem yang sedang dikembangkan.
·
Mengurangi waktu dan biaya karena
cacat dapat dideteksi jauh lebih awal.
·
Feedback user yang cepat di awal
dapat memberikan solusi yang lebih baik
·
Fungsi yang tidak ada dapat
diidentifikasi dengan mudah dan cepat
·
Fungsi yang membingungkan dapat di
hilangkan
Kekurangan Prototype
·
Risiko analisis kebutuhan yang tidak
mencukupi karena terlalu banyak ketergantungan pada Prototipe
·
Pengguna mungkin bingung dalam
prototipe dan sistem sebenarnya.
·
Upaya yang diinvestasikan dalam
membangun prototip mungkin terlalu banyak jika tidak dipantau tepat.
·
Pengembang dapat mencoba untuk
menggunakan kembali prototipe yang ada untuk membangun sistem yang sebenarnya,
Bahkan bila hal itu tidak layak secara teknis.
11. RAD (Rapid Application Development) Model SDLC
RAD
(Rapid Application Development) Adalah metodologi pengembangan perangkat lunak
(SDLC) yang menggunakan pengabungan antara Prototype Model dengan Iterative Model. Prototipe adalah model kerja yang secara fungsional setara
dengan komponen produk.
Dalam model RAD (Rapid Application Development), modul fungsional dikembangkan secara paralel sebagai prototip dan terintegrasi untuk membuat produk yang lengkap untuk pengiriman produk yang lebih cepat. Dikarenakan tidak ada rincian planning yang detail, maka memudahkan untuk melakukan perubahan pada saat development berjalan.
Dalam model RAD (Rapid Application Development), modul fungsional dikembangkan secara paralel sebagai prototip dan terintegrasi untuk membuat produk yang lengkap untuk pengiriman produk yang lebih cepat. Dikarenakan tidak ada rincian planning yang detail, maka memudahkan untuk melakukan perubahan pada saat development berjalan.
Kelebihan RAD (Rapid Application
Development)
·
Mudah mengakomodasi peruabahan
sistem
·
Progress development bisa di ukur
·
Waktu iterasi bisa di perpendek
menggunakan RAD Tools
·
Mengurangi waktu development
·
Mudah dalam menentukan dasar sistem
·
Mempermudah feedback customer
·
Cocok untuk proyek yang membutuhkan
waktu pengembangan yang lebih pendek.
·
Cocok untuk sistem yang berbasis
komponen dan terukur.
Kekurangan
RAD (Rapid Application Development)
·
Ketergantungan pada anggota bisnis
tim untuk mengidentifikasi persyaratan bisnis
·
Hanya sistem yang bisa di
modularized yang bisa dibangun menggunakan RAD
·
Membutuhkan developer / designer
yang berpengalaman
·
Ketergantungan pada keterampilan
model
·
Kompleksitas manajemen
·
Tidak dapat diterapkan pada proyek yang
kecil / murah
12. Unified Process (UP) Model SDLC
Unified
Process (UP) adalah metodologi pengembangan sistem berbasis objek. Metode ini
sudah menjadi salah satu metode yang banyak digunakan dalam pengembangan sistem
berorientasi objek. UP memperkenalkan pendekatan baru untuk siklus hidup
pengembangan sistem yang menggabungkan perulangan (iterations) dan tahapan
(phases) yang disebut dengan siklus hidup UP (UP life cycle). UP mendefinisikan
empat tahapan siklus hidup yaitu inception, elaboration, construction,
dan transition.
Tidak ada komentar:
Posting Komentar