AGILE DEVELOPMENT PROCESS
Rianto 155302486
Abstract
Agile memiliki pengertian bersifat cepat, ringan, bebas bergerak, dan
waspada. Maka pada pembuatan perangkat lunak dengan menggunakan
agile development methods diperlukan inovasi dan responsibiliti yang baik
antara pengembang dan klien agar kualitas dari perangkat lunak yang
dihasilkan mempunyai kualitas yang bagus.
Agile development sangat erat kaitannya dengan metodologi dan proses
pengembangan perangkat lunak, dimana
dalam pengembangannya
mengutamakan keterlibatan dari pengguna. Dalam agile development
dibutuhkan kolaborasi yang baik antara development dan klien saat
proses pembuatan perangkat lunak, dan klien harus menjadi salah satu
tim pengembang karena fungsi-fungsi atau kebutuhan perangkat lunak
tersebuh nantinya akan digunakan oleh klien. Untuk menghasilkan sebuah
perangkat
lunak
yang
berkualitas
maka
dibutuhkan
metode
agile
develompment untuk pengembangannya.
Keyword: agile develompmet, perangkat lunak, agile development
method.
PENDAHULUAN
Agile method merupakan suatu cara dari pengembangan
software
dan menjawab kebutuhan alternatif untuk proses pengembangan sebuah
software yang berskala besar. Dalam teori untuk pengembangan sebuah
perangkat lunak terlihat sangat mudah, akan tetapi di dalam kenyataanya
tidak seperti itu. Bahkan setelah berbulan-bulan bahkan bertahun-tahun
kebutuhan dalam pengembangan sebuah perangkat lunak, pengguna
masih belum yakin dengan yang mereka inginkan, sehingga itu menjadi
masalah yang sulit untuk mengakomodasikan perubahan dari sebuah
project. Metode terdahulu mungkin menimbulkan kendala ketika harga
sebuah perangkat lunak yang relatif rendah dan programmer, arsitek, dan
manajer perlu bertemu, dan jumlah yang berlebihan yang harus terus up
to date untuk mengakomodasi perubahan kecil .
The Agile Manifesto diperkenalkan istilah pada tahun 2001. Sejak itu,
Agile Movement, dengan segala nilai-nilai, prinsip, metode, praktek, alatalat, juara dan praktisi, filosofi dan budaya, secara signifikan mengubah
lanskap modern reakayasa perangkat dan perangkat lunak komersial
pembangunan di era Internet.
Pada bulan Februari 2001, 17 pengembang perangkat lunak bertemu
di Snowbird ,Utah resort, mendiskusikan metode pengembangan ringan.
Mereka menerbitkan Manifesto untuk Agile Software Development.
PEMBAHASAN
1. Prinsip Agile Software Development
Prinsip penting pada Agile software develompmet adalah komunikasi
pada sebuah tim, yang bisa meliputi orang-orang teknis ataupun bisnis
serta antara pengembang dan manajernya. Disini dalam pengembangan
perangkat lunak sebuah perangkat lunak klien menjadi bagian dari team
pengembang.
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 dua minggu
sampai dua bulan.
d. Bagian bisnis dan pembangun kerja sama tiap hari selama
proyek berlangsung
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.
2. Aktifitas framework (terhadap pembangunan dan delivery).
Komunikasi Customer, Planning, Modeling, Construction, Delivery,
Evaluation
Gambar Siklus Agile
3. Agile Process Model
Berikut ini adalah model-model proses yang termasuk agile process
model atau metode pada agile development.
a. Ektreme Programming
XP
(Ektreme
Silus XP
Programming) merupakan
suatu
model
yang
tergolong dalam pendekatan agile yang diusulkan oleh Kent Back.
Model ini cenderung menggunakan pendekatan Object-Oriented.
EX (Ekstreme Programming) didasarkan pada:
1) Komunikasi (Communication)
Mengkomunikasikan kebutuhan sistem kepada pengembang
perangkat lunak. Komunikasi dalam Extreme Programmning
dibangun dengan melakukan pemrograman berpasangan (pair
programming) antara developer dan klien.
2) Kesederhanaan (Simplicity)
Mencoba untuk mencari solusi paling sederhana dan praktis.
Lebih
baik
melakukan
hal
yang
sederhana
dan
mengembangkannya besok jika diperlukan.
3) Umpan balik (Feedback)
Hal ini diperlukan untuk mengetahui kemajuan dari proses dan
kualitas dari aplikasi yang dibangun. Dimana setiap feedback
harus segera ditanggapi agar tidak terjadi pembengkakan
waktu dan biaya dalam pengembangan tersebut.
4) Keberanian (Courage)
Berani mencoba ide baru. Berani mengerjakan kembali dan
setiap kali kesalahan ditemukan, langsung diperbaiki.
Keperluan berubah dengan cepat
1) Resiko tinggi dan ada proyek dengan tantangan yang bar
2) Tim programmer sedikit, yaitu 2-10 orang
3) Mampu mengotomatiskan tes
4) Ada peran serta pelanggan secara langsung XP tepat digunakan
saat kondisi
Kelemahan XP:
1) Cerita-cerita yang menunjukkan requirements kemungkinan
besar tidak lengkap sehingga Developer harus selalu siap
dengan perubahan karena perubahan akan selalu diterima.
2) Tidak bisa membuat kode yang detail di awal (prinsip simplicity
dan juga anjuran untuk melakukan apa yang diperlukan hari itu
juga).
3) XP tidak memiliki dokumentasi formal yang dibuat selama
pengembangan.
Satu-satunya
dokumentasi
adalah
dokumentasi awal yang dilakukan oleh user.
b. Adaptive Software Development
Gambar ASD Proses
Adaptive Software Development merupakan suatu model yang
tergolong dalam pendekatan agile yang diusulkan oleh Jim
Highsmith, menggunakan tools yang disebut "time-boxing" - yaitu
berupa aktifitas yang menentukan jangka waktu tertentu yang
dialokasikan
untuk
Menekankan
pada
menyelesaikan
berbagai
pengorganisasian
tim
macam
secara
tugas.
mandiri,
kolaborasi antar-perseorangan, dan terus belajar, baik secara
individu maupun secara tim.
Teknik atau metode ini biasanya digunakan untuk membangun
software dan sistem yang kompleks. Filosofi yang mendasari
adaptive software development adalah kolaborasi manusia dan
tim yang mengatur dirisendiri. Sistem kerja adaptive software
development adalah collaborationand learning.
Collaboration: bermotivasi tinggi untuk bekerja sama, saling
melengkapi,rela membantu, kerja keras, terampil di bidangnya,
danmengkomunikasikan masalah untuk menyelesikan masalah
secara efektif.
earning : tim developer sering merasa sudah tahu semua hal
tentang proyek, padahal tidak selamanya begitu.
c. Scrum
Srum merupakan sebuah kerangka proses dalam mengatasi
masalah
yang
komplek,
diman
produktifitas
dan
kreatifias
memberikan nilai yang tinggi didalamnya. Scrum yang merupakan
proses kerangka kerja
yang telah lama digunakan dalam
pengembangan dan pengelolaan produk yang komplek sejak
tahun 1990-an. Jika lebih di jelaskan, scrum
bukanlah proses
ataupun teknik didalam membuat produk, melainkan sebuah
kerangka dimana kita dapat menggunakan proses dan teknik.
Gambar x. Scrum Process Framework
Kerangka Proses Scrum dapat dilihat dengan urutan kejadian yang
sesuai. Dalam sebuah proyek, pada peristiwa scrum memiliki
durasi maksimum pengerjaan yang telah ditetapkan. Hal ini untuk
mengetahui kemajuan proyek untuk setiap yang terlibat dalam
proyek.
Hal-hal yang penting dari scrum adalah:
1) The Sprint
Keberhasilan merupakan tujuan yang ditetapkan pada Sprint.
Hal
ini
memberikan
panduan
kepada
Tim
mengapa
pembangunan perlu ditingkatkan. Semua itu dibuat selama
pertemuan
Sprint
Planning.
Ruang
lingkup
pada
sprint
dikelompokan dan re-negosiasi antara Pemilik Produk dan Tim
dimana untuk lebih lanjutnya dengan mempelajari persyaratan.
Dengan demikian, masing-masing Sprint dihubungkan dengan
apa yang akan dibangun, desain, dan rencana yang fleksibel
yang
akan
memandu
pembangunan
tersebut,
pekerjaan
pembangunan, dan peningkatan produk yang dihasilkan.
Karena sifatnya yang sangat pendek, pembatalan sprint sangat
jarang terjadi karena akan banyak menghabiskan sumber daya,
harus meregoranisasi lagi menjadi sprint yang lain serta produk
yang telah dibuat berpotensi tidak dapat release.
2) Sprint Planning
Pekerjaan yang akan dilakukan di dalam sprint
direncanakan
terlebih
dahulu.
Pertemuan
harus
perencanaan
biasanya maksimum 4 jam bila sprint 2 minggu dan 8 jam bila
sprint 1 bulan, dimana hal ini dimaksudkan bahwa pertemuan
berlangsung dan para peserta yang hadir dapat mengerti dan
memahami tujuan dari pertemuan yang telah dijadwalkan
dimana Scrum Master bertanggung jawab dalam pertemuan ini.
Pada pertemuan ini Scrum Master Moderate selalu memantau
kelangsungan pertemuan diskusi dan waktu penutupan.
Team scrum berdiskusi membahas fungsionalitas yang dapat
dikembangkan selama sprint. Pemilik produk mengelompokan
item-item pada produk backlog, team memilih item-item dari
produk backlog pada sprint dimana tim itu terdiri dari analis,
desainer, programer/pengembang dan tester. Pekerjaan ini
dilakukan secara kolaborasi sehingga dapat meminimalkan
pengerjaan ulang.
Selain dari Team scrum, team scrum juga dapat mengundang
orang
lain
dalam
pertemuan
sprint
planning
untuk
mendapatkan nasihat atau masukan secara teknis dalam
membantu estimasi.
3) Daily Scrum Meetings
Daily Scrum Meetings adalah pertemuan selama 15 menit
untuk Tim, yang dilakukan setiap hari supaya dapat memahami
pekerjaan sejak Rapat Scrum Harian terakhir dan membuat
rencana untuk 24 jam berikutnya. Pertemuan ini juga disebut
sebagai Daily Stand up Meeting.
Dalam pertemuan ini Master Scrum mengkoordinasi daily
scrum meeting dan memastikan tujuan dari pertemuan dapat
tercapai, bila perlu pada diskusi ini tim dapat mendiskusikan
secara
rinci
dan
merencanakan
kembali
sisa
pekerjaan
berikutnya.
Manfaat yang bisa diperoleh dari Dailly Scrum Meeting
a) Meningkatkan komunikasi dalam team
b) Mengidentifikasi masalah, jika ada dapat menghilangkan
dengan meminimkan dampak pada sprint
4) The Sprint Review
Sprint Review dilakukan setelah akhir sprint. Selama sprint
review,
presentasi
dari
peningkatan
rilis
diperoleh
dan
direview. Di dalam metting Scrum Team dan stakeholder
berkolaborasi
untuk
memahami apa yang terdapat dalam
sprint. Berdasarkan dengan hal tersebut, setiap perubahan
untuk produk Backlog pada sprint perlu diperhatikan langkahlangkah yang diperlukan untuk mengoptimalkan nilai. Dengan
demikian tujuan dari sprint review diperoleh umpan balik dan
hasil secara bersama-sama.
Sprint review normal biasaya dilakukan selama 2 jam untuk dua
minggu sprint dan 8 jam untuk 1 bulan sprint.
Aspek-aspek yang meliputi Sprint Review
a) Peserta yang meliputi Tim Scrum dan stakeholder utama
atau yang diundang oleh pemilik produk
b) Pemilik produk menjelaskan mengenai produk Backlog yang
telah lengkap selama sprint dan yang belum lengkap.
c) Tim berdiskusi apa yang baik selama sprint, masalah apa
yang ada di dalamnya, dan bagaimana mengatasi masalah
itu.
d) Tim mendemostrasikan pekerjaan yang telah lengkap dan
menjawab
pertanyaan
jika
keuntungannya.
e) Kelompok mendiskusikan
diperlukan
apa
yang
atau
harus
tentang
dilakukan
berikutnya, dengan demikian Sprint review memberikan
masukan pada sprint planning dari sprint berikutnya.
f) Tim Scrum mereview batas waktu, budged, kemampuan,
dan pasar untuk kemudian mengantisipasi peningkatan
produk berikutnya.
g) Hasil dari sprint review adalah produk backlog yang
diperbarui, yang menetapkan kemungkinan produk backlog
pada sprint berikutnya.
5) The Sprint Retrospective
Sprint Retrospective terjadi setelah Sprint Review dan sebelum
Sprint Perencanaan berikutnya.
Tujuan dari Sprint Retrospective adalah untuk:
a) Menggabungkan materi dari Sprint lalu, yang berkaitan
dengan orang-orang, hubungan, proses, dan alat-alat.
b) Mengidentifikasi item utama yang berjalan baik dan yang
potensi perbaikan.
c) Menghasilkan rencana untuk melaksanakan perbaikan untuk
meningkatkan kualitas produk.
Sprint Retrospective adalah kesempatan bagi Tim Scrum untuk
introspeksi dan memperbaiki dalam kerangka proses Scrum
sehingga membuat hasil Sprint berikutnya lebih efektif.
Kelebihan Scrum antara lain:
1) Keperluan berubah dengan cepat
2) Tim berukuran kecil sehingga
melancarkan
komunikasi,
mengurangi biaya dan memberdayakan satu sama lain
3) Pekerjaan terbagi-bagi sehingga dapat diselesaikan dengan
cepat
4) Dokumentasi dan pengujian terus menerus dilakukan setelah
software dibangun
5) Proses Scrum mampu menyatakan bahwa produk selesai
kapanpun diperlukan
Kelemahan Scrum antara lain:
Developer harus selalu siap dengan perubahan karena perubahan
akan selalu diterima.
d. Dynamic Systems Development Method (DSDM)
Sejak berawal pada tahun 1994, DSDM secara bertahap menjadi
kerangka nomor satu untuk pengembangan aplikasi cepat (RAD) di
Inggris (Stapleton 1997). DSDM adalah non-profit dan kerangka
non eksklusif untuk pengembangan RAD, dikelola oleh DSDM
Consortium. Para pengembang mempertahankan bahwa selain
melayani sebagai metode dalam arti yang berlaku umum DSDM
juga menyediakan kerangka kontrol untuk RAD, dilengkapi dengan
panduan tentang cara menggunakan kontrol efisien.
Kerangka DSDM dapat diimplementasikan untuk proses agile dan
traditional develoment process. Untuk menunjukkan bagaimana
DSDM berkaitan dengan agile methodology perlu sekali untuk
memahami bagaimana prinsip-prinsip DSDM berhubungan dengan
agile development process values.
Prinsip-prinsip pada DSDM
1) Keterlibatan pengguna
2) Tim harus diberi wewenang dalam membuat keputusan
3) Fokus pada Frequent Delivery
4) Kecocokan bisnis adalah kriteria yang dapat diterima
5) Perancangan dan Pengembangan Bertahap adalah Wajib
6) Semua Perubahan Selama Pembangunan Harus Reversible
7) Ketentuan yang Basis berjajar di Tingkat Tinggi
8) Pengujian Terpadu Seluruh Siklus yang
9) Pendekatan Kolaborasi dan Co-operative
DSDM process diagram
Proses Siklus DSDM
1) Sebelum proyek
Calon proyek diidentifikasi, pembiayaan proyek terpenuhi, dan
jaminan proyek dipastikan. Penanganan hal- hal tersebut pada
tahap ini menghindari masalah pada tahaptahap berikutnya.
2) Siklus hidup proyek
Inti dari DSDM, yang terdiri dari 5 sub tahap yaitu
i)
studi kelayakan
ii)
studi bisnis
iii)
perulangan model fungsional
iv)
perulangan perancangan dan pembuatan
v)
penerapan.
3) Setelah proyek
Memastikan sistem berjalan secara efektif dan efisien. Hal ini
diwujudkan dengan perawatan, peningkatan dan perbaikan
sesuai prinsip-prinsip DSDM. Perawatan dapat dilihat sebagai
usaha meneruskan pengembangan berdasarkan sifat alami
DSDM, yaitu perulangan dan pertambahan.
e. Crystal Methods
Cystal Methods mencakup sejumlah metodologi yang berbeda
untuk memilih metodologi yang paling cocok untuk setiap proyek
individu. Selain metodologi, pendekatan Crystal juga mencakup
prinsip-prinsip
untuk
menyesuaikan
metodologi
agar
sesuai
dengan situasi yang berbeda-beda dari proyek yang berbeda.
Crystal Clear dan kristal Oranye adalah dua anggota keluarga
kristal yang telah dibangun dan digunakan (Cockburn 1998;
Cockburn 2002a). Kristal Jeruk (Cockburn 1998) juga menyajikan
kegiatan yang termasuk dalam proses.
[Link] Crystal Orange Increment.
Crystal diperkenalkan oleh Cockburn dan Highsmith. Terdapat
beberapa karakteristik dari model crystal ini.
Kareakteristik Crystal
1) Secara aktual merupakan sebuah model proses keluarga
yang
memungkinkan
manuver
berdasarkan
karakteristik
2)
permasalahan
Menayarankan pengguna workshop refleksi untuk review
3)
4)
kebiasaan tim
Selalu murah dan cepat berkomunikasi secara langsung
Proyek berkembang sesuai ukuran team menjadi lebih luas
f. Rational Unified Process (RUP)
Rasional Unified Process dikembangkan oleh Philippe Kruchten,
Ivar Jacobsen dan lain-lain di Perusahaan Rasional untuk UML
(Unified Modelling Language). RUP adalah pendekatan iteratif
untuk sistem berorientasi objek, dan itu sangat mencakup kasus
penggunaan untuk pemodelan persyaratan dan membangun
pondasi untuk sistem. RUP cenderung ke arah pengembangan
berorientasi objek. Itu tidak secara implisit mengesampingkan
metode lain, meskipun metode pemodelan yang diusulkan, UML,
sangat cocok untuk pengembangan OO (Jacobsen et al. 1994).
Model ini membagi suatu sistem aplikasi menjadi beberapa
komponen sistem dan memungkinkan para developer aplikasi
untuk menerapkan metoda iterative (analisis, disain, implementasi
dan pengujian) pada tiap komponen.
Gambar Siklus RUP
Keuntungan Pengembangan Perangkat Lunak RUP :
1) Menyediakan akses yang mudah terhadap pengetahuan dasar
bagi anggota tim.
2) Menyediakan petunjuk bagaimana menggunakan UML secara
efektif.
3) Mendukung
proses
pengulangan
software.
4) Memungkinkan
adanya
proses.
5) Memungkinkan
untuk
dalam
pengembangan
penambahan-penambahan
secara
sistematis
pada
mengontrol
perubahan- perubahan yang terjadi pada software selama
proses pengembangannya.
6) Memungkinkan untuk menjalankan
test
case
dengan
menggunakan Rational Test Manager Tool
Kekurangan Pengembangan Perangkat Lunak RUP :
1. Metodologi ini hanya dapat digunakan pada pengembangan
perangkat lunak yang berorientasi objek dengan berfokus
pada UML (Unified Modeling Language).
2. Membutuhkan waktu yang cukup lama dibandingkan XP dan
Scrum
g. Feature Driven Development (FDD)
FDD adalah pendekatan yang mengacu
pembuatan
sistem
menggunakan metode yang mudah dimengerti dan mudah
diimplentasikan; teknik problem solving; dan pelaporan yang
mudah dimengerti dan dikontrol oleh stakeholders. Pendekatan
FDD tidak mencakup proses pengembangan perangkat lunak
keseluruhan, melainkan berfokus pada desain dan bangunan fase
(Palmer dan Felsing 2002).
Namun, telah dirancang untuk bekerja dengan kegiatan lain dari
proyek pengembangan perangkat lunak (Palmer dan Felsing 2002)
dan
tidak
digunakan.
memerlukan
FDD
model
pendekatan
proses
tertentu
mewujudkan
yang
akan
pengembangan
berulang dengan praktik terbaik ditemukan efektif dalam industri.
Ini penekanan aspek kualitas seluruh proses dan termasuk
pengiriman sering dan nyata, bersama dengan pemantauan yang
akurat dari kemajuan proyek FDD. Fature Driven Development
merupakan mmodel proses praktis untuk keahlian proses software
engineering. Feature merupakan sebuah fungsi yang berharga
dimana dapat dilaksanakan
Gambar Processes of FDD (Palmer and Felsing 2002)
Keuntungan dari Feature Driven Development
1) User dapat menggambarkan dengan mudah bentuk system
2) Dapat di organisasikan ke dalam daftar kelompoik bisnis yang
herarki
3) Desain dank ode lebih mudah diperiksa secara efekif
4) Merancang proyek, penjadwalan dan jalur diarahkan oleh
feature
h. Agile Modeling (AM)
Agile Modeling diperkenalkan oleh (Ambler 2002a) pada tahun
2002 merupakan pendekatan baru untuk melakukan kegiatan
modeling. Fokus utama dalam AM adalah pada praktek dan
prinsip-prinsip budaya. Ide dasarnya adalah untuk mendorong
pengembang untuk menghasilkan model yang cukup canggih
untuk mendukung masalah desain yang tajam dan tujuan
dokumentasi, disamping jumlah model dan dokumentasi serendah
mungkin.
Banyak situasi pembangun software harus membangun sistem
bisnis yang besar dan penting. Jangkauan dan kompleksitas sistem
harus dimodelkan sehingga dapat dimengerti, masalah dapat
dibagi menjadi lebih kecil dan kualitas dapat dijaga pada tiap
langkah pembangunan software.
i. Lean Software Development (LSD)
Learning, terdapat tiga aktifitas yaitu: pelanggan atau end-user
menyediakan feedback terhadap hasil incremental delivery, tim
ASD melakukan review terhadap komponen perangkat lunak untuk
memperbaiki dan meningkatkan kualitas perangkat lunak yang
sedang dibuat.
4. Tujuan Agile Development
a. High value & working APP System , dengan menggunakan
agiledevelopment methods akan menghasilkan perangkat lunak
yangmempunyai nilai jual yang tinggi, biaya pembuatan bisa di
tekan dan perangkat lunak bisa berjalan dengan baik.
b. Collaboration, dengan menggunakan agile, tim pengembang
diharuskansering
bertemu
untuk
membahas
perkembangan
proyek dan feedback dariklien yang nantinya akan ditambahkan
dalam perangkat lunak, sehinggatim bisa berkolaborasi dengan
maksimal.
c. Ilterative, incremental,
evolutionary,
agile
adalah
metode
pengembangan perangkat lunak yang iteratif, selalu mengalami
perubahan, danevolusioner. d.
d. Cost control and value driven development, salah satu tujuan dari
agile yaitu pengembangan perangkat lunak disesuaikan dengan
kebutuhan pengguna,tim bisa dengan cepat merespon kebutuhan
yang diinginkan pengguna sehingga waktu dan biaya pembuatan
perangkat lunak bisa dikontrol.e.
e. High Quality production, walaupun biaya pembuatan perangkat
lunak bisaditekan dan proses pembuatan bisa dipercepat , tetapi
kualitas dari perangkat lunak yang dibuat harus tetap dijaga.
f. Fleksible& risk management
g. Self-organizing, self-managing teams, rekrut orang terbaik, beri
dandukung kebutuhan mereka lalu biarkan mereka bekerja. itulah
perbedaan agile dan
lainnya. dengan agile, developer dapat
memanajemen dirinya sendiri, sedangkan manajer tim hanya
bertugas mengkolaborasikan developer perangkat lunak dengan
klien. !ehingga terciptalah tim yang solid
PENUTUP
Agile
Development
methods
adalah
sekelompok
metodologi
pengembangan perangkat lunak yang didasarkan pada prinsip-prinsip
yang sama atau pengembangan sistem jangka pendek yang memerlukan
adaptasi cepat dari pengembang terhadap perubahan dalam bentuk
apapun. Kolaborasi antara tim pengembang dengan klien menjadi hal
yang pentingdalam agile development, klien dianggap sebagai +2898
`anggota tim. 0leksibilitas ditawarkan kepada klien kaitannya dengan
kesadaran dan pengetahuan pelanggantentang apa yang dia inginkan.
Terdapat
dua
puluh
metode
yang
termasuk
dalam
agile
metodologi. /etode-metode tersebut sering digunakan oleh praktisi
pengembang
perangkat
lunak
dalam
pembuatan
atau
dalam
pengembangan. !etiap model dan metodologi memiliki kemampuan
'keuntungan dankekurangannya sendiri-sendiri. /enggunakan metode
pengembangan perangkatlunak merupakan hal yang penting serta di
pengaruhi oleh beberapa faktor akantetapi tidak terbatas pada budaya
dan organisasi.
DAFTAR PUSTAKA
Abrahamsson P., Salo O., Ronkainen J., Warsta J., Agile software
development methods, VTT Publications 478 (2002).
Boehm B., Get ready for agile methods, with care, IEEE Computer (Jan.
2002) 6469.
Boehm B., A spiral model of software development and enhancement,
IEEE Computer 21 (5) (1988) 6172.
Subhas misra, Vinod kumar and Uma kumar, Kamel fantazy, Mahmud
[Link] software development practices: evolution,
principles, and criticisms
H. Frank Cervone. (2011). Understanding agile project management
methods
using
Scrum.
OCLC
Systems
&
Services:
International digital library perspectives, Vol. 27 Iss 1 pp. 18-22
Kiran
Jammalamadaka,
Rama
Krishna.2013.
Agile
Software
Development And Challenges. IJRET : International Journal of
Research in Engineering and Technology
Subhas C. Misra dan Virender [Link] open agile
software
development life cycle (OASDLC) model. IJQRM :
International Journal of
Quality & Reliability Management.
Gaurav Kumar, Pradeep Kumar Bhatia.2012. Impact of Agile Methodology
on Software Development Process. IJTEE : International Journal of
Computer Technology and Electronics Engineering. Volume 2,
issue 4
Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2002). Agile
Software Development Methods: Review and Analysis. VTT
Publications.
Scrum Guide 1991-2013 Ken Schwaber and Jeff Sutherland, All Rights
Reserved.
Voigt, B. J. J. (2004). Dynamic System Development Method, (January).
Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2002). Agile
software development methods.
Clear, C., & Cockburn, A. (2004). Crystal Clear.
Cockburn, A. (n.d.). Development Software Development as a Co
operative Game 2 edition.
(cockburn 2002.10 crosstalk a) Cockburn, Cockburn, A., "Learning from
Agile Development" parts 1 and 2, in CrossTalk: The Journal of
Defense Software Engineering