PROYEK PERANGKAT LUNAK
Kelompok :
Ricky Satria
(F1D016077)
Zhafran saloom (F1D016089)
Di zaman yang berkembang ini, teknologi sebagai
kebutuhan yang harus di penuhi dan sangat berpengaruh pada kehidupan manusia
saat ini. Perkembangan teknologi informasi sebagai motor utama perkembangan
ilmu pengetahuan. Perkembangan ilmu pengatahuan yang tinggi membuat para
pembuat perangkat lunak menciptakan berbagai macam variasi perangkat lunak,
dikarenakan permintaan para pengguna yang tinggi, Untuk menjamin terpenuhinya
kebutuhan para pengguna, pengembang perangkat lunak memerlukan langkah-langkah
yang tepat, efektif, dan efisien. Untuk itulah berkembang berbagai metodologi
perkembangan perangkat lunak. Salah satunya.[2] Pada pembahasan ini
adalah metode Extreme Programming (XP). Bagai teman-teman yang belum tau
tentang Extreme Programming itu apa ? kelebihan dan kekurangan dari
metode yang lain ? maka dari mari kita mulai !!!
11. APA
ITU EXTREME PROGRAMMING (XP) ?
Simpelnya Extreme Programming adalah metodologi
pengembangan perangkat lunak untuk meningkatkan kualitas perangkat lunak dan
responsive terhadap perubahan kebutuhan pelanggan.[3]
Dan dari sumber yang terpercaya Extreme Programming
adalah sebuah pendekatan atau model pengembangan perangkat lunak yang
mencoba menyederhanakan berbagai tahapan dalam proses pengembangan tersebut
sehingga menjadi lebih adaptif dan fleksibel. XP bukan hanya berfokus pada
coding tetapi meliputi seluruh area pengembangan perangkat lunak. XP mengambil
pendekatan ‘ekstrim’ dalam iterative development.[3]
Dari pengertian di atas teman-teman sudah sangat
betul-betul paham kan …!!!
2. SEJARAH
asal
mula XP digunakan karena pada saat itu permintaan dari customer yang sering
berubah dengan cepat sehingga mengakibatkan putaran kehidupan metode
pengembangan perangkat lunak tradisional menjadi lebih pendek dan tidak selaras
dengan metode tradisional karena pada umumnya memerlukan desain yang luas dan
itu mengakibatkan perubahan desain yang terjadi dan tentu saja memerlukan biaya
yang lebih tinggi.[3] Tujuan utama dari XP adalah Meminimalisir biaya yang
di perlukan jika ada perubahan dalam pengembangan Perangkat lunak.
Dari tujuan di atas maka Kent Beck dan Ward Cunningham
mengusulkan metode baru yang bernama Extreme Programming pada bulan
maret 1997.
3. TAHAPAN
DALAM EXTREME PROGRAMMING
XP membantu pengembang membuat code berkualitas
dan cepat. Mendefinisikan kualitas sebagai sebuah basis code yang sesuai
dengan desain sprsifikasi dan Ekspektasi pelanggan.
Sasaran XP adalah tim yang dibentuk berukuran antara
kecil sampai medium saja, tidak perlu sampai menggunakan sebuah tim yang besar.
Hal ini dimaksudkan untuk menghadapi requirements yang sangat cepat.[1]
Seluruh kontributor dalam proyek yang mengguanakan
pendekatan XP duduk Bersama sebagai suatu tim. Tim ini terdiri beberapa peran,
antara lain :
-
Programmer
-
Penguji
-
Orang
yang mengerti bisnis
-
Analis
-
Manajer
-
Dan
lain-lainnya.
Setiap peran
tidak mutlak menjadi peran dari satu orang saja. Tim terbaik dalam XP tidak
harus memiliki pakar, hanya kontributor umum dengan keterampilan khusus saja.
Semua orang di tim XP memberikan kontributor dengan cara apapun yang mereka
dapat lakukan.[3]
XP fokus pada:
-
Implentasi
desain sederhana
-
Komunikasi
antara pengembang dan pelanggan
-
Secara
terus menerus menguji basis code
-
Refaktorisasi
untuk mengakomodasi perubahan spesifikasi
-
Mencari
timbal bailk pelanggan
XP memiliki empat kegiatan dasar mengenai XP untuk
proses pengembangan parangkat lunak :
a.
Planning
Dasar XP
adalah mekanisme berkelanjutan keterlibatan client melalui umpan balik
dalam tahap pengembangan. Terlepas dari pelanggan, pengembang juga menerima
umpan balik dari manajer proyek.
Dasar dari
umpan balik adalah tes penerimaan pelanggan. Setiap umpan balik dari pelanggan
yang menentukan persyaratan revisi menjadi dasar dari desain baru, dan proses
desain-coding-tes-planning. Jika pelanggan tetap puas dengan hasl tes iterasi
berakhir disana, dan desain untuk iterasi baru dimulai, yang lagi-lagi
mengikuti siklus desain-coding-testing-planning.[2]
b.
Design
Iterasi
pemrograman XP dimulai dengan merancang. Prinsip-Prinsip dari tahap ini adalah
:
·
Dorongan
pada kesederhanan dengan mengekspresikan hal yang hanya seklai dan tidak
menambahkan fungsi antisipasi.
·
Menggunakan
system metafora atau standar pada nama, nama kelas dan metode, dan menyepakati
gaya seragam dan format untuk memastikan kompatibilitas antara kerja anggota
tim yang berbeda.
·
Menggunakan
tanggung jawab software class dan kolaborasi (CRC) kartu yang memungkinkan
untuk keberangkatan dari pola pikir prosedural tradisional dan membuat
teknologi berorientasi objek. Kartu tersebut memungkinkan semua anggota tim
proyek untuk menyumbangkan ide-ide, dan menyusun ide-ide terbaik dalam desain.
·
Menciptakan
solusi lanjutan atau program sederhana yang mengeksplorasi solusi protensi
untuk masalah tertentu, mengabaikan semua masalah lain, untuk mengurangi
resiko.[2]
c.
Coding
Coding
merupakan fase paling penting dalam siklus hidup programming Extreme.
Pemrograman XP memberikan Prioritas kepada coding yang sebenarnya atas
semua tugas-tugas lain seperti dokumentasi untuk memastikan bahwa pelanggan
menerima sesuatu yang substansial dalam nilai pada akhir hari. Standar terkait
dengan coding meliputi:
·
Mengembangkan
kode berdasarkan metofora dan standar yang telah disepakati, dan mengadopsi
kebijakan kepemilikan kode kolektif.
·
Pasangan
pemrograman atau kode berkembang oleh dua programmer bekerja sama pada satu
mesin, yang bertujuan untuk menghasilkan kode berkualitas tinggi dengan biaya
yang sama atau kurang.
·
Kepatuhan
yang ketat untuk 40 jam workweeks tanpa lembur. Hal ini memastikan para
pengembang bekerja di puncak kemampuan mental dan fisik meraka.
·
Integrasi
sering kode ke repositori khusus, hanya dengan satu pasangan mengintegrasikan
pada suatu waktu untuk mencegah konflik, dan optimasi di akhir.[2]
d.
Testing
Program
ekstrim terintegrasi pengujian dengan tahap pengembang dari pada di akhir tahap
pengembangan. Semua kode memiliki unit test untuk menghilangkan bug, dan kode
melewati semua tes unit tersebut sebelum rilis.
Tes kunci
lain adalah tes penerima client, berdasarkan spesifikasi pelanggan. Tas
penerimaan dijalankan pada penyelesaian coding, dan pengembang menyediakan
pelanggan dengan hasil tes penerimaan bersamaan dengan hasil tes penerimaan
Bersama dengan demonstrasi.[2]
4. KELEBIHAN
DAN KEKURANGAN
Extreme Programming tepat untuk dipergunakan untuk
pembuatan program yang:
·
Membutuhkan
perubahan yang cepat (misalnya:game mobile)
·
Proyek
beresiko tinggi dengan tantangan yang berat
·
Tim
programmer sedikit, yaitu sekitar 2-10
·
Adanya
permintaan dari pelanggan secara langsung
a)
Kelebihan
Extreme Programming, yaitu:
·
Meningkatkan
kepuasan kepada client.
·
Pembangunan
system dibuat lebih cepat
·
Menjalin
komunikasi yang baik dengan client.
·
Meningkatkan
komunikasi dan sifat saling menghargai antara developer
b)
Kelemahan
Extreme Programming, yaitu:
·
Cerita-cerita
yang menunjukkan requirements dari pelanggan kemungkinan besar tidak lengkap
sehingga developer harus selalu siap dengan perubahan karena perubahan akan
selalu diterima
·
Tidak
bias membuat kode yang detail di awal (prinsip simplicity dan juga anjuran
untuk melakukan apa yang diperlukan hari itu juga).
·
XP
tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya
dokumentasi adalah dokumentasi awal yang dilakukan oleh user.[1]
5. KESIMPULAN
a. Extreme Programming (XP) merupakan salah satu metode
pengembangan software yang termasuk dalam Agile Software Development
b. Tujuan utama dalam extreme programming adalah
menurunkan biaya dari adanya perubahan software
Refrensi
[3] https://www.it-jurnal.com/apa-itu-extreme-programming/
No comments:
Post a Comment