Agile pengembangan software adalah sekelompok metodologi
pengembangan software yang didasarkan pada prinsip-prinsip yang sama. Agile
metodologi umumnya mempromosikan proyek yang mendorong proses pengelolaan
sering inspeksi dan adaptasi, sebuah filosofi yang mendorong kepemimpinan tim,
mandiri dan akuntabilitas organisasi, satu set teknik praktek terbaik yang
memungkinkan untuk pengiriman cepat dari perangkat lunak yang berkualitas
tinggi, dan usaha pendekatan yang aligns pembangunan dengan kebutuhan pelanggan
dan tujuan perusahaan. Konseptual kerangka dasar-dasar ini akan ditemukan di
modern pendekatan manajemen operasional dan analisis seperti bersandar
manufaktur, lunak sistem metodologi, pidato bertindak teori (pendekatan
percakapan jaringan), dan Six Sigma.
1.1
Sejarah Agile Software Development
Modern definisi Agile pengembangan software berkembang
pada pertengahan tahun 1990-an sebagai bagian dari reaksi terhadap
"berat" metode, dikatakan oleh seorang typified berat diatur,
regimented, Mikro dikelola menggunakan waterfall model pembangunan. Proses ini
berasal dari air terjun menggunakan model yang dianggap sebagai birokrasi, lambat,
demeaning, dan tidak konsisten dengan cara yang sebenarnya pengembang perangkat
lunak melakukan kerja efektif. Kasus dapat dibuat yang Agile dan pengembangan
metode yg berulang adalah pembangunan kembali ke praktek mulai awal dalam
sejarah pengembangan piranti lunak. Pada mulanya, Agile metode yang disebut
"metode ringan." Pada tahun 2001, anggota tokoh masyarakat bertemu di
Snowbird, Utah, dan mengadopsi nama "metode Agile." Nantinya,
sebagian dari orang-orang yang membentuk Aliansi Agile, sebuah organisasi
nirlaba yang mempromosikan pembangunan Agile.
Suatu proses pengembangan software adaptif diperkenalkan
dalam karya oleh Edmonds (1974). terkemuka awal Agile metode mencakup banyak
(1995), Crystal Clear, Extreme Programming (1996), adaptive Software Development,
Fitur Terutama Pembangunan dan Pengembangan Sistem Dinamis Metode (DSDM)
(1995). Ini biasanya disebut sebagai metodologi Agile sejak Agile Manifesto
telah diterbitkan pada tahun 2001.
1.2
Sistem Agile Software Development
Agile Software Development juga melihat pentingnya
komunikasi antara anggota tim, antara orang-orang teknis dan businessmen,
antara developer dan managernya. Ciri lain adalah klien menjadi bagian dari tim
pembangun software. Ciri-ciri ini didukung oleh 12 prinsip yang ditetapkan oleh
Agile Alliance. Menurut Agile Alliance, 12 prinsip ini adalah bagi mereka yang
ingin berhasil dalam penerapan Agile Software Development :
a)
Kepuasan klien adalah prioritas
utama dengan menghasilkan produk lebih awal dan terus menerus.
b)
Menerima perubahan kebutuhan,
sekalipun diakhir pengembangan.
c)
Penyerahan hasil/software dalam
hitungan waktu beberapa minggu sampai beberapa bulan.
d)
Pihak bisnis dan pengembang
harus bekerja sama setiap hari selama pengembangan berjalan.
e)
Membangun proyek dilingkungan orang-orang
yang bermotivasi tinggi yang bekerja dalam lingkungan yang mendukun dan yang
dipercaya untuk dapat menyelesaikan proyek.
f)
Komunikasi dengan berhadapan
langsung adalah komunikasi yang efektif dan efisien
g)
Software yang berfungsi adalah
ukuran utama dari kemajuan proyek
h)
Dukungan yang stabil dari
sponsor, pembangun, dan pengguna diperlukan untuk menjaga perkembangan yang
berkesinambungan
i)
Perhatian kepada kehebatan
teknis dan desain yang bagus meningkatkan sifat agile
j)
Kesederhanaan penting
k)
Arsitektur, kebutuhan dan
desain yang bagus muncuk dari tim yang mengatur dirinya sendiri
l) Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera melakukannya.
l) Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera melakukannya.
1.3
Kelebihan Agile Software Development
§ Meningkatkan kepuasan kepada klien
§ Pembangunan system dibuat lebih cepat
§ Mengurangi resiko kegagalan implementasi software dari segi
non-teknis
§ Jika pada saat pembangunan system terjadi kegagalan,kerugian dar segi materi relative kecil
§ Jika pada saat pembangunan system terjadi kegagalan,kerugian dar segi materi relative kecil
1.4
Kekurangan Agile Software Development
§ Dokumentasi pada metode ini sangat minimal,
§ Agile jarang dipraktekkan secara langsung,
§ Interaksi dengan pelanggan yang berlebihan,
§ Agile sulit diimplementasikan dalam
proyek yang berskala besar,
§ Membutuhkan manajemen tim yang terlatih dan mempunyai ilmu yang
sudah tinggi,
§ Lemah dalam perencanaan arsitektur,
§ Keterbatasan waktu dalam perencanaan proyek.